From 06f26e6814b1c4b66d92d1ace597c24339c1d056 Mon Sep 17 00:00:00 2001 From: strtgbb <146047128+strtgbb@users.noreply.github.com> Date: Thu, 5 Feb 2026 12:50:02 -0500 Subject: [PATCH 1/2] fix regression skip check --- .github/workflows/master.yml | 8 +-- .github/workflows/pull_request.yml | 8 +-- .../workflows/regression-reusable-suite.yml | 2 +- .github/workflows/regression.yml | 56 +++++++++---------- ci/praktika/yaml_additional_templates.py | 8 +-- 5 files changed, 41 insertions(+), 41 deletions(-) diff --git a/.github/workflows/master.yml b/.github/workflows/master.yml index 7719b6e85625..e41611e4824e 100644 --- a/.github/workflows/master.yml +++ b/.github/workflows/master.yml @@ -4495,7 +4495,7 @@ jobs: RegressionTestsRelease: needs: [config_workflow, build_amd_binary] - if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'regression')}} + if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).JOB_KV_DATA.ci_exclude_tags, 'regression')}} uses: ./.github/workflows/regression.yml secrets: inherit with: @@ -4504,10 +4504,10 @@ jobs: arch: release build_sha: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} timeout_minutes: 300 - workflow_config: ${{ needs.config_workflow.outputs.data.workflow_config }} + workflow_config: ${{ needs.config_workflow.outputs.data }} RegressionTestsAarch64: needs: [config_workflow, build_arm_binary] - if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'regression') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'aarch64')}} + if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).JOB_KV_DATA.ci_exclude_tags, 'regression') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'aarch64')}} uses: ./.github/workflows/regression.yml secrets: inherit with: @@ -4516,7 +4516,7 @@ jobs: arch: aarch64 build_sha: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} timeout_minutes: 300 - workflow_config: ${{ needs.config_workflow.outputs.data.workflow_config }} + workflow_config: ${{ needs.config_workflow.outputs.data }} SignRelease: needs: [config_workflow, build_amd_release] diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 2deb0d327eb2..1f5f955a71e6 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -4685,7 +4685,7 @@ jobs: RegressionTestsRelease: needs: [config_workflow, build_amd_binary] - if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'regression')}} + if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).JOB_KV_DATA.ci_exclude_tags, 'regression')}} uses: ./.github/workflows/regression.yml secrets: inherit with: @@ -4694,10 +4694,10 @@ jobs: arch: release build_sha: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} timeout_minutes: 300 - workflow_config: ${{ needs.config_workflow.outputs.data.workflow_config }} + workflow_config: ${{ needs.config_workflow.outputs.data }} RegressionTestsAarch64: needs: [config_workflow, build_arm_binary] - if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'regression') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'aarch64')}} + if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).JOB_KV_DATA.ci_exclude_tags, 'regression') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'aarch64')}} uses: ./.github/workflows/regression.yml secrets: inherit with: @@ -4706,7 +4706,7 @@ jobs: arch: aarch64 build_sha: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} timeout_minutes: 300 - workflow_config: ${{ needs.config_workflow.outputs.data.workflow_config }} + workflow_config: ${{ needs.config_workflow.outputs.data }} FinishCIReport: if: ${{ !cancelled() }} diff --git a/.github/workflows/regression-reusable-suite.yml b/.github/workflows/regression-reusable-suite.yml index 45b2b09e06bb..643a60b734d9 100644 --- a/.github/workflows/regression-reusable-suite.yml +++ b/.github/workflows/regression-reusable-suite.yml @@ -98,7 +98,7 @@ jobs: --local --collect-service-logs --output ${{ inputs.output_format }} - --attr project="${GITHUB_REPOSITORY}" project.id="${GITHUB_REPOSITORY_ID}" user.name="${GITHUB_ACTOR}" version="${{ fromJson(inputs.workflow_config).custom_data.version.string }}" package="$clickhouse_path" repository="https://github.com/Altinity/clickhouse-regression" commit.hash="$(git rev-parse HEAD)" job.name=$GITHUB_JOB job.retry=$GITHUB_RUN_ATTEMPT job.url="${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}" arch="$(uname -i)" + --attr project="${GITHUB_REPOSITORY}" project.id="${GITHUB_REPOSITORY_ID}" user.name="${GITHUB_ACTOR}" version="${{ fromJson(inputs.workflow_config).JOB_KV_DATA.version.string }}" package="$clickhouse_path" repository="https://github.com/Altinity/clickhouse-regression" commit.hash="$(git rev-parse HEAD)" job.name=$GITHUB_JOB job.retry=$GITHUB_RUN_ATTEMPT job.url="${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}/actions/runs/${GITHUB_RUN_ID}" arch="$(uname -i)" --cicd --log raw.log ${{ inputs.flags != 'none' && inputs.flags || ''}} diff --git a/.github/workflows/regression.yml b/.github/workflows/regression.yml index 239db719b6e1..1c16fab31fdc 100644 --- a/.github/workflows/regression.yml +++ b/.github/workflows/regression.yml @@ -121,8 +121,8 @@ env: jobs: Common: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'common') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'common') strategy: fail-fast: false matrix: @@ -145,8 +145,8 @@ jobs: AggregateFunctions: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'aggregate_functions') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'aggregate_functions') strategy: fail-fast: false matrix: @@ -170,8 +170,8 @@ jobs: secrets: inherit Alter: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'alter') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'alter') strategy: fail-fast: false matrix: @@ -202,8 +202,8 @@ jobs: Benchmark: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'benchmark') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'benchmark') strategy: fail-fast: false matrix: @@ -228,8 +228,8 @@ jobs: ClickHouseKeeper: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'clickhouse_keeper') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'clickhouse_keeper') strategy: fail-fast: false matrix: @@ -256,8 +256,8 @@ jobs: Iceberg: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'iceberg') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'iceberg') strategy: fail-fast: false matrix: @@ -281,8 +281,8 @@ jobs: secrets: inherit LDAP: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'ldap') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'ldap') strategy: fail-fast: false matrix: @@ -305,8 +305,8 @@ jobs: Parquet: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'parquet') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'parquet') uses: ./.github/workflows/regression-reusable-suite.yml with: ref: ${{ inputs.commit }} @@ -325,8 +325,8 @@ jobs: ParquetS3: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'parquet') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'parquet') strategy: fail-fast: false matrix: @@ -351,8 +351,8 @@ jobs: RBAC: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'rbac') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'rbac') strategy: fail-fast: false matrix: @@ -376,8 +376,8 @@ jobs: secrets: inherit SSLServer: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'ssl_server') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'ssl_server') strategy: fail-fast: false matrix: @@ -402,8 +402,8 @@ jobs: S3: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 's3') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 's3') strategy: fail-fast: false matrix: @@ -434,8 +434,8 @@ jobs: S3Export: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 's3') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 's3') strategy: fail-fast: false matrix: @@ -462,8 +462,8 @@ jobs: TieredStorage: if: | - fromJson(inputs.workflow_config).custom_data.ci_regression_jobs[0] == null || - contains(fromJson(inputs.workflow_config).custom_data.ci_regression_jobs, 'tiered_storage') + fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs[0] == null || + contains(fromJson(inputs.workflow_config).JOB_KV_DATA.ci_regression_jobs, 'tiered_storage') strategy: fail-fast: false matrix: diff --git a/ci/praktika/yaml_additional_templates.py b/ci/praktika/yaml_additional_templates.py index 97a24da3dc72..d546fe076e90 100644 --- a/ci/praktika/yaml_additional_templates.py +++ b/ci/praktika/yaml_additional_templates.py @@ -63,7 +63,7 @@ class AltinityWorkflowTemplates: "Regression": r""" RegressionTestsRelease: needs: [config_workflow, build_amd_binary] - if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'regression')}} + if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).JOB_KV_DATA.ci_exclude_tags, 'regression')}} uses: ./.github/workflows/regression.yml secrets: inherit with: @@ -72,10 +72,10 @@ class AltinityWorkflowTemplates: arch: release build_sha: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} timeout_minutes: 300 - workflow_config: ${{ needs.config_workflow.outputs.data.workflow_config }} + workflow_config: ${{ needs.config_workflow.outputs.data }} RegressionTestsAarch64: needs: [config_workflow, build_arm_binary] - if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'regression') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'aarch64')}} + if: ${{ !cancelled() && !contains(needs.*.outputs.pipeline_status, 'failure') && !contains(fromJson(needs.config_workflow.outputs.data).JOB_KV_DATA.ci_exclude_tags, 'regression') && !contains(fromJson(needs.config_workflow.outputs.data).workflow_config.custom_data.ci_exclude_tags, 'aarch64')}} uses: ./.github/workflows/regression.yml secrets: inherit with: @@ -84,7 +84,7 @@ class AltinityWorkflowTemplates: arch: aarch64 build_sha: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }} timeout_minutes: 300 - workflow_config: ${{ needs.config_workflow.outputs.data.workflow_config }} + workflow_config: ${{ needs.config_workflow.outputs.data }} """, "SignRelease": r""" SignRelease: From cb4087485cfc7404aa11c36c24549e9519311ffe Mon Sep 17 00:00:00 2001 From: strtgbb <146047128+strtgbb@users.noreply.github.com> Date: Thu, 5 Feb 2026 17:39:25 -0500 Subject: [PATCH 2/2] try to fix regression workflow config --- .github/workflows/regression-reusable-suite.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/regression-reusable-suite.yml b/.github/workflows/regression-reusable-suite.yml index 643a60b734d9..f7e2a51dd03c 100644 --- a/.github/workflows/regression-reusable-suite.yml +++ b/.github/workflows/regression-reusable-suite.yml @@ -134,7 +134,7 @@ jobs: REPORTS_PATH=${{ runner.temp }}/reports_dir mkdir -p $REPORTS_PATH cat > $REPORTS_PATH/workflow_config.json << 'EOF' - ${{ inputs.workflow_config }} + ${{ toJson(fromJson(inputs.workflow_config).WORKFLOW_CONFIG) }} EOF python3 .github/get-deb-url.py --github-env $GITHUB_ENV --workflow-config $REPORTS_PATH/workflow_config.json --s3-base-url $S3_BASE_URL --pr-number $PR_NUMBER --branch-name ${{ github.ref_name }} --commit-hash ${{ inputs.build_sha || github.sha }} --binary