Skip to content

Commit 8ed5fd4

Browse files
committed
CI: Add stateless tests to release branch
1 parent 67049ee commit 8ed5fd4

File tree

2 files changed

+116
-1
lines changed

2 files changed

+116
-1
lines changed

.github/workflows/release_branches.yml

Lines changed: 115 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -661,6 +661,120 @@ jobs:
661661
python3 -m praktika run 'Install packages (arm_release)' --workflow "ReleaseBranchCI" --ci |& tee ./ci/tmp/job.log
662662
fi
663663
664+
stateless_tests_amd_asan_distributed_plan_parallel_1_2:
665+
runs-on: [self-hosted, amd-medium-cpu]
666+
needs: [config_workflow, dockers_build_amd, dockers_build_arm, build_amd_asan]
667+
if: ${{ !failure() && !cancelled() && !contains(fromJson(needs.config_workflow.outputs.data).cache_success_base64, 'U3RhdGVsZXNzIHRlc3RzIChhbWRfYXNhbiwgZGlzdHJpYnV0ZWQgcGxhbiwgcGFyYWxsZWwsIDEvMik=') }}
668+
name: "Stateless tests (amd_asan, distributed plan, parallel, 1/2)"
669+
outputs:
670+
data: ${{ steps.run.outputs.DATA }}
671+
steps:
672+
- name: Checkout code
673+
uses: actions/checkout@v4
674+
with:
675+
ref: ${{ env.CHECKOUT_REF }}
676+
677+
- name: Prepare env script
678+
run: |
679+
rm -rf ./ci/tmp ./ci/tmp ./ci/tmp
680+
mkdir -p ./ci/tmp ./ci/tmp ./ci/tmp
681+
cat > ./ci/tmp/praktika_setup_env.sh << 'ENV_SETUP_SCRIPT_EOF'
682+
export PYTHONPATH=./ci:.:
683+
cat > ./ci/tmp/workflow_config_releasebranchci.json << 'EOF'
684+
${{ needs.config_workflow.outputs.data }}
685+
EOF
686+
cat > ./ci/tmp/workflow_status.json << 'EOF'
687+
${{ toJson(needs) }}
688+
EOF
689+
ENV_SETUP_SCRIPT_EOF
690+
691+
- name: Run
692+
id: run
693+
run: |
694+
. ./ci/tmp/praktika_setup_env.sh
695+
set -o pipefail
696+
if command -v ts &> /dev/null; then
697+
python3 -m praktika run 'Stateless tests (amd_asan, distributed plan, parallel, 1/2)' --workflow "ReleaseBranchCI" --ci |& ts '[%Y-%m-%d %H:%M:%S]' | tee ./ci/tmp/job.log
698+
else
699+
python3 -m praktika run 'Stateless tests (amd_asan, distributed plan, parallel, 1/2)' --workflow "ReleaseBranchCI" --ci |& tee ./ci/tmp/job.log
700+
fi
701+
702+
stateless_tests_amd_asan_distributed_plan_parallel_2_2:
703+
runs-on: [self-hosted, amd-medium-cpu]
704+
needs: [config_workflow, dockers_build_amd, dockers_build_arm, build_amd_asan]
705+
if: ${{ !failure() && !cancelled() && !contains(fromJson(needs.config_workflow.outputs.data).cache_success_base64, 'U3RhdGVsZXNzIHRlc3RzIChhbWRfYXNhbiwgZGlzdHJpYnV0ZWQgcGxhbiwgcGFyYWxsZWwsIDIvMik=') }}
706+
name: "Stateless tests (amd_asan, distributed plan, parallel, 2/2)"
707+
outputs:
708+
data: ${{ steps.run.outputs.DATA }}
709+
steps:
710+
- name: Checkout code
711+
uses: actions/checkout@v4
712+
with:
713+
ref: ${{ env.CHECKOUT_REF }}
714+
715+
- name: Prepare env script
716+
run: |
717+
rm -rf ./ci/tmp ./ci/tmp ./ci/tmp
718+
mkdir -p ./ci/tmp ./ci/tmp ./ci/tmp
719+
cat > ./ci/tmp/praktika_setup_env.sh << 'ENV_SETUP_SCRIPT_EOF'
720+
export PYTHONPATH=./ci:.:
721+
cat > ./ci/tmp/workflow_config_releasebranchci.json << 'EOF'
722+
${{ needs.config_workflow.outputs.data }}
723+
EOF
724+
cat > ./ci/tmp/workflow_status.json << 'EOF'
725+
${{ toJson(needs) }}
726+
EOF
727+
ENV_SETUP_SCRIPT_EOF
728+
729+
- name: Run
730+
id: run
731+
run: |
732+
. ./ci/tmp/praktika_setup_env.sh
733+
set -o pipefail
734+
if command -v ts &> /dev/null; then
735+
python3 -m praktika run 'Stateless tests (amd_asan, distributed plan, parallel, 2/2)' --workflow "ReleaseBranchCI" --ci |& ts '[%Y-%m-%d %H:%M:%S]' | tee ./ci/tmp/job.log
736+
else
737+
python3 -m praktika run 'Stateless tests (amd_asan, distributed plan, parallel, 2/2)' --workflow "ReleaseBranchCI" --ci |& tee ./ci/tmp/job.log
738+
fi
739+
740+
stateless_tests_amd_asan_distributed_plan_sequential:
741+
runs-on: [self-hosted, amd-small-mem]
742+
needs: [config_workflow, dockers_build_amd, dockers_build_arm, build_amd_asan]
743+
if: ${{ !failure() && !cancelled() && !contains(fromJson(needs.config_workflow.outputs.data).cache_success_base64, 'U3RhdGVsZXNzIHRlc3RzIChhbWRfYXNhbiwgZGlzdHJpYnV0ZWQgcGxhbiwgc2VxdWVudGlhbCk=') }}
744+
name: "Stateless tests (amd_asan, distributed plan, sequential)"
745+
outputs:
746+
data: ${{ steps.run.outputs.DATA }}
747+
steps:
748+
- name: Checkout code
749+
uses: actions/checkout@v4
750+
with:
751+
ref: ${{ env.CHECKOUT_REF }}
752+
753+
- name: Prepare env script
754+
run: |
755+
rm -rf ./ci/tmp ./ci/tmp ./ci/tmp
756+
mkdir -p ./ci/tmp ./ci/tmp ./ci/tmp
757+
cat > ./ci/tmp/praktika_setup_env.sh << 'ENV_SETUP_SCRIPT_EOF'
758+
export PYTHONPATH=./ci:.:
759+
cat > ./ci/tmp/workflow_config_releasebranchci.json << 'EOF'
760+
${{ needs.config_workflow.outputs.data }}
761+
EOF
762+
cat > ./ci/tmp/workflow_status.json << 'EOF'
763+
${{ toJson(needs) }}
764+
EOF
765+
ENV_SETUP_SCRIPT_EOF
766+
767+
- name: Run
768+
id: run
769+
run: |
770+
. ./ci/tmp/praktika_setup_env.sh
771+
set -o pipefail
772+
if command -v ts &> /dev/null; then
773+
python3 -m praktika run 'Stateless tests (amd_asan, distributed plan, sequential)' --workflow "ReleaseBranchCI" --ci |& ts '[%Y-%m-%d %H:%M:%S]' | tee ./ci/tmp/job.log
774+
else
775+
python3 -m praktika run 'Stateless tests (amd_asan, distributed plan, sequential)' --workflow "ReleaseBranchCI" --ci |& tee ./ci/tmp/job.log
776+
fi
777+
664778
integration_tests_amd_asan_1_4:
665779
runs-on: [self-hosted, amd-medium]
666780
needs: [config_workflow, dockers_build_amd, dockers_build_arm, build_amd_asan]
@@ -1461,7 +1575,7 @@ jobs:
14611575
14621576
finish_workflow:
14631577
runs-on: [self-hosted, style-checker-aarch64]
1464-
needs: [config_workflow, dockers_build_amd, dockers_build_arm, build_amd_debug, build_amd_release, build_amd_asan, build_amd_tsan, build_amd_msan, build_amd_ubsan, build_arm_release, build_arm_asan, build_amd_darwin, build_arm_darwin, docker_server_image, docker_keeper_image, install_packages_amd_release, install_packages_arm_release, integration_tests_amd_asan_1_4, integration_tests_amd_asan_2_4, integration_tests_amd_asan_3_4, integration_tests_amd_asan_4_4, integration_tests_amd_asan_old_analyzer_1_6, integration_tests_amd_asan_old_analyzer_2_6, integration_tests_amd_asan_old_analyzer_3_6, integration_tests_amd_asan_old_analyzer_4_6, integration_tests_amd_asan_old_analyzer_5_6, integration_tests_amd_asan_old_analyzer_6_6, integration_tests_amd_tsan_1_6, integration_tests_amd_tsan_2_6, integration_tests_amd_tsan_3_6, integration_tests_amd_tsan_4_6, integration_tests_amd_tsan_5_6, integration_tests_amd_tsan_6_6, stress_test_amd_debug, stress_test_amd_tsan, stress_test_arm_asan, stress_test_amd_ubsan, stress_test_amd_msan]
1578+
needs: [config_workflow, dockers_build_amd, dockers_build_arm, build_amd_debug, build_amd_release, build_amd_asan, build_amd_tsan, build_amd_msan, build_amd_ubsan, build_arm_release, build_arm_asan, build_amd_darwin, build_arm_darwin, docker_server_image, docker_keeper_image, install_packages_amd_release, install_packages_arm_release, stateless_tests_amd_asan_distributed_plan_parallel_1_2, stateless_tests_amd_asan_distributed_plan_parallel_2_2, stateless_tests_amd_asan_distributed_plan_sequential, integration_tests_amd_asan_1_4, integration_tests_amd_asan_2_4, integration_tests_amd_asan_3_4, integration_tests_amd_asan_4_4, integration_tests_amd_asan_old_analyzer_1_6, integration_tests_amd_asan_old_analyzer_2_6, integration_tests_amd_asan_old_analyzer_3_6, integration_tests_amd_asan_old_analyzer_4_6, integration_tests_amd_asan_old_analyzer_5_6, integration_tests_amd_asan_old_analyzer_6_6, integration_tests_amd_tsan_1_6, integration_tests_amd_tsan_2_6, integration_tests_amd_tsan_3_6, integration_tests_amd_tsan_4_6, integration_tests_amd_tsan_5_6, integration_tests_amd_tsan_6_6, stress_test_amd_debug, stress_test_amd_tsan, stress_test_arm_asan, stress_test_amd_ubsan, stress_test_amd_msan]
14651579
if: ${{ !cancelled() }}
14661580
name: "Finish Workflow"
14671581
outputs:

ci/workflows/release_branches.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
JobConfigs.docker_sever,
2525
JobConfigs.docker_keeper,
2626
*JobConfigs.install_check_master_jobs,
27+
*[job for job in JobConfigs.functional_tests_jobs if "asan" in job.name],
2728
*[
2829
job
2930
for job in JobConfigs.integration_test_asan_master_jobs

0 commit comments

Comments
 (0)