2626 CLICKHOUSE_TEST_STAT_PASSWORD : ${{ secrets.CLICKHOUSE_TEST_STAT_PASSWORD }}
2727 AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }}
2828 AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
29+ GPG_BINARY_SIGNING_KEY : ${{ secrets.GPG_BINARY_SIGNING_KEY }}
30+ GPG_BINARY_SIGNING_PASSPHRASE : ${{ secrets.GPG_BINARY_SIGNING_PASSPHRASE }}
2931 AWS_DEFAULT_REGION : ${{ secrets.AWS_DEFAULT_REGION }}
3032 CHECKS_DATABASE_HOST : ${{ secrets.CHECKS_DATABASE_HOST }}
3133 AZURE_STORAGE_KEY : ${{ secrets.AZURE_STORAGE_KEY }}
@@ -4548,9 +4550,51 @@ jobs:
45484550 . ./ci/tmp/praktika_setup_env.sh
45494551 PYTHONUNBUFFERED=1 python3 -m praktika run 'Build Toolchain (PGO, BOLT) (aarch64)' --workflow "PR" --ci --timestamp
45504552
4553+ source_upload :
4554+ runs-on : [self-hosted, altinity-on-demand, altinity-style-checker-aarch64]
4555+ needs : [config_workflow, dockers_build_amd, dockers_build_arm, dockers_build_multiplatform_manifest]
4556+ if : ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(needs.*.outputs.pipeline_status, 'undefined') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.cache_success_base64, 'U291cmNlIHVwbG9hZA==') }}
4557+ name : " Source upload"
4558+ outputs :
4559+ data : ${{ steps.run.outputs.DATA }}
4560+ pipeline_status : ${{ steps.run.outputs.pipeline_status || 'undefined' }}
4561+ steps :
4562+ - name : Checkout code
4563+ uses : actions/checkout@v6
4564+ with :
4565+ ref : ${{ env.CHECKOUT_REF }}
4566+
4567+ - name : Setup
4568+ uses : ./.github/actions/runner_setup
4569+ - name : Docker setup
4570+ uses : ./.github/actions/docker_setup
4571+ with :
4572+ test_name : " Source upload"
4573+
4574+ - name : Prepare env script
4575+ run : |
4576+ rm -rf ./ci/tmp
4577+ mkdir -p ./ci/tmp
4578+ cat > ./ci/tmp/praktika_setup_env.sh << 'ENV_SETUP_SCRIPT_EOF'
4579+ export PYTHONPATH=./ci:.:
4580+
4581+ cat > ./ci/tmp/workflow_job.json << 'EOF'
4582+ ${{ toJson(job) }}
4583+ EOF
4584+ cat > ./ci/tmp/workflow_status.json << 'EOF'
4585+ ${{ toJson(needs) }}
4586+ EOF
4587+ ENV_SETUP_SCRIPT_EOF
4588+
4589+ - name : Run
4590+ id : run
4591+ run : |
4592+ . ./ci/tmp/praktika_setup_env.sh
4593+ PYTHONUNBUFFERED=1 python3 -m praktika run 'Source upload' --workflow "PR" --ci --timestamp
4594+
45514595 finish_workflow :
45524596 runs-on : [self-hosted, altinity-on-demand, altinity-style-checker-aarch64]
4553- needs: [ast_fuzzer_amd_debug, ast_fuzzer_amd_debug_targeted, ast_fuzzer_amd_debug_targeted_old_compatibility, ast_fuzzer_amd_msan, ast_fuzzer_amd_tsan, ast_fuzzer_arm_asan_ubsan, build_amd_asan_ubsan, build_amd_binary, build_amd_debug, build_amd_msan, build_amd_release, build_amd_tsan, build_arm_asan_ubsan, build_arm_binary, build_arm_debug, build_arm_msan, build_arm_release, build_arm_tidy, build_arm_tsan, build_arm_ubsan, build_toolchain_pgo_bolt_aarch64, build_toolchain_pgo_bolt_amd64, buzzhouse_amd_debug, buzzhouse_amd_msan, buzzhouse_amd_tsan, buzzhouse_arm_asan_ubsan, ci_tests, compatibility_check_amd_release, compatibility_check_arm_release, config_workflow, docker_keeper_image, docker_server_image, dockers_build_amd, dockers_build_arm, dockers_build_multiplatform_manifest, fast_test, install_packages_amd_release, install_packages_arm_release, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_1_6, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_2_6, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_3_6, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_4_6, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_5_6, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_6_6, integration_tests_amd_asan_ubsan_targeted, integration_tests_amd_msan_1_6, integration_tests_amd_msan_2_6, integration_tests_amd_msan_3_6, integration_tests_amd_msan_4_6, integration_tests_amd_msan_5_6, integration_tests_amd_msan_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, integration_tests_arm_binary_distributed_plan_1_4, integration_tests_arm_binary_distributed_plan_2_4, integration_tests_arm_binary_distributed_plan_3_4, integration_tests_arm_binary_distributed_plan_4_4, keeper_stress_tests_pr, quick_functional_tests, sqllogic_test, stateless_tests_amd_asan_ubsan_db_disk_distributed_plan_sequential, stateless_tests_amd_asan_ubsan_distributed_plan_parallel_1_2, stateless_tests_amd_asan_ubsan_distributed_plan_parallel_2_2, stateless_tests_amd_debug_distributed_plan_s3_storage_parallel, stateless_tests_amd_debug_distributed_plan_s3_storage_sequential, stateless_tests_amd_debug_parallel, stateless_tests_amd_debug_sequential, stateless_tests_amd_msan_wasmedge_parallel_1_4, stateless_tests_amd_msan_wasmedge_parallel_2_4, stateless_tests_amd_msan_wasmedge_parallel_3_4, stateless_tests_amd_msan_wasmedge_parallel_4_4, stateless_tests_amd_msan_wasmedge_sequential_1_2, stateless_tests_amd_msan_wasmedge_sequential_2_2, stateless_tests_amd_tsan_parallel_1_2, stateless_tests_amd_tsan_parallel_2_2, stateless_tests_amd_tsan_s3_storage_parallel_1_2, stateless_tests_amd_tsan_s3_storage_parallel_2_2, stateless_tests_amd_tsan_s3_storage_sequential_1_2, stateless_tests_amd_tsan_s3_storage_sequential_2_2, stateless_tests_amd_tsan_sequential_1_2, stateless_tests_amd_tsan_sequential_2_2, stateless_tests_arm_asan_ubsan_azure_parallel, stateless_tests_arm_asan_ubsan_azure_sequential, stateless_tests_arm_asan_ubsan_targeted, stateless_tests_arm_binary_parallel, stateless_tests_arm_binary_sequential, stress_test_amd_asan_ubsan, stress_test_amd_debug, stress_test_amd_msan, stress_test_amd_tsan, stress_test_arm_asan_ubsan, stress_test_arm_asan_ubsan_s3, stress_test_arm_debug, stress_test_arm_msan, stress_test_arm_release, stress_test_arm_tsan, stress_test_arm_ubsan, unit_tests_asan_ubsan, unit_tests_asan_ubsan_function_prop_fuzzer, unit_tests_msan, unit_tests_msan_function_prop_fuzzer, unit_tests_tsan, unit_tests_tsan_function_prop_fuzzer]
4597+ needs: [ast_fuzzer_amd_debug, ast_fuzzer_amd_debug_targeted, ast_fuzzer_amd_debug_targeted_old_compatibility, ast_fuzzer_amd_msan, ast_fuzzer_amd_tsan, ast_fuzzer_arm_asan_ubsan, build_amd_asan_ubsan, build_amd_binary, build_amd_debug, build_amd_msan, build_amd_release, build_amd_tsan, build_arm_asan_ubsan, build_arm_binary, build_arm_debug, build_arm_msan, build_arm_release, build_arm_tidy, build_arm_tsan, build_arm_ubsan, build_toolchain_pgo_bolt_aarch64, build_toolchain_pgo_bolt_amd64, buzzhouse_amd_debug, buzzhouse_amd_msan, buzzhouse_amd_tsan, buzzhouse_arm_asan_ubsan, ci_tests, compatibility_check_amd_release, compatibility_check_arm_release, config_workflow, docker_keeper_image, docker_server_image, dockers_build_amd, dockers_build_arm, dockers_build_multiplatform_manifest, fast_test, install_packages_amd_release, install_packages_arm_release, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_1_6, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_2_6, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_3_6, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_4_6, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_5_6, integration_tests_amd_asan_ubsan_db_disk_old_analyzer_6_6, integration_tests_amd_asan_ubsan_targeted, integration_tests_amd_msan_1_6, integration_tests_amd_msan_2_6, integration_tests_amd_msan_3_6, integration_tests_amd_msan_4_6, integration_tests_amd_msan_5_6, integration_tests_amd_msan_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, integration_tests_arm_binary_distributed_plan_1_4, integration_tests_arm_binary_distributed_plan_2_4, integration_tests_arm_binary_distributed_plan_3_4, integration_tests_arm_binary_distributed_plan_4_4, keeper_stress_tests_pr, quick_functional_tests, source_upload, sqllogic_test, stateless_tests_amd_asan_ubsan_db_disk_distributed_plan_sequential, stateless_tests_amd_asan_ubsan_distributed_plan_parallel_1_2, stateless_tests_amd_asan_ubsan_distributed_plan_parallel_2_2, stateless_tests_amd_debug_distributed_plan_s3_storage_parallel, stateless_tests_amd_debug_distributed_plan_s3_storage_sequential, stateless_tests_amd_debug_parallel, stateless_tests_amd_debug_sequential, stateless_tests_amd_msan_wasmedge_parallel_1_4, stateless_tests_amd_msan_wasmedge_parallel_2_4, stateless_tests_amd_msan_wasmedge_parallel_3_4, stateless_tests_amd_msan_wasmedge_parallel_4_4, stateless_tests_amd_msan_wasmedge_sequential_1_2, stateless_tests_amd_msan_wasmedge_sequential_2_2, stateless_tests_amd_tsan_parallel_1_2, stateless_tests_amd_tsan_parallel_2_2, stateless_tests_amd_tsan_s3_storage_parallel_1_2, stateless_tests_amd_tsan_s3_storage_parallel_2_2, stateless_tests_amd_tsan_s3_storage_sequential_1_2, stateless_tests_amd_tsan_s3_storage_sequential_2_2, stateless_tests_amd_tsan_sequential_1_2, stateless_tests_amd_tsan_sequential_2_2, stateless_tests_arm_asan_ubsan_azure_parallel, stateless_tests_arm_asan_ubsan_azure_sequential, stateless_tests_arm_asan_ubsan_targeted, stateless_tests_arm_binary_parallel, stateless_tests_arm_binary_sequential, stress_test_amd_asan_ubsan, stress_test_amd_debug, stress_test_amd_msan, stress_test_amd_tsan, stress_test_arm_asan_ubsan, stress_test_arm_asan_ubsan_s3, stress_test_arm_debug, stress_test_arm_msan, stress_test_arm_release, stress_test_arm_tsan, stress_test_arm_ubsan, unit_tests_asan_ubsan, unit_tests_asan_ubsan_function_prop_fuzzer, unit_tests_msan, unit_tests_msan_function_prop_fuzzer, unit_tests_tsan, unit_tests_tsan_function_prop_fuzzer]
45544598 if : ${{ always() && needs.config_workflow.outputs.pipeline_status != '' }}
45554599 name : " Finish Workflow"
45564600 outputs :
@@ -4751,6 +4795,7 @@ jobs:
47514795 - keeper_stress_tests_pr
47524796 - build_toolchain_pgo_bolt_amd64
47534797 - build_toolchain_pgo_bolt_aarch64
4798+ - source_upload
47544799 - finish_workflow
47554800 - GrypeScanServer
47564801 - GrypeScanKeeper
@@ -4768,38 +4813,3 @@ jobs:
47684813 with :
47694814 workflow_config : ${{ toJson(needs) }}
47704815 final : true
4771-
4772- SourceUpload :
4773- needs : [config_workflow, build_amd_release]
4774- if : ${{ !cancelled() && needs.config_workflow.outputs.pipeline_status != '' && !contains(needs.*.outputs.pipeline_status, 'failure') }}
4775- runs-on : [self-hosted, altinity-on-demand, altinity-style-checker-aarch64]
4776- env :
4777- COMMIT_SHA : ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }}
4778- PR_NUMBER : ${{ github.event.pull_request.number || 0 }}
4779- VERSION : ${{ fromJson(needs.config_workflow.outputs.data).JOB_KV_DATA.version.string }}
4780- steps :
4781- - name : Check out repository code
4782- uses : Altinity/checkout@19599efdf36c4f3f30eb55d5bb388896faea69f6
4783- with :
4784- clear-repository : true
4785- ref : ${{ fromJson(needs.config_workflow.outputs.data).git_ref }}
4786- submodules : true
4787- fetch-depth : 0
4788- filter : tree:0
4789- - name : Install aws cli
4790- uses : unfor19/install-aws-cli-action@v1
4791- with :
4792- version : 2
4793- arch : arm64
4794- - name : Create source tar
4795- run : |
4796- cd .. && tar czf $RUNNER_TEMP/build_source.src.tar.gz ClickHouse/
4797- - name : Upload source tar
4798- run : |
4799- if [ "$PR_NUMBER" -eq 0 ]; then
4800- S3_PATH="REFs/$GITHUB_REF_NAME/$COMMIT_SHA/build_amd_release"
4801- else
4802- S3_PATH="PRs/$PR_NUMBER/$COMMIT_SHA/build_amd_release"
4803- fi
4804-
4805- aws s3 cp $RUNNER_TEMP/build_source.src.tar.gz s3://altinity-build-artifacts/$S3_PATH/clickhouse-$VERSION.src.tar.gz
0 commit comments