Describe the situation
Regression tests fail at the "Get deb url" step on any PR that runs regression without changing product code. Build (amd_binary) is dropped from the workflow, so nothing is uploaded to that commit's S3 prefix and get-deb-url.py gets a 404:
AssertionError: Failed to get build report from https://altinity-build-artifacts.s3.amazonaws.com/PRs/2348/9344937ea73c3faa7d645ea7b41a970467c0a932/build_amd_binary/artifact_report_build_amd_binary.json
404 ... <Code>NoSuchKey</Code>
Nine regression jobs failed this way in PR #2348. antalya-26.6 and antalya-26.8 are both affected; antalya-26.3 is not.
Root cause
ci/praktika/native_jobs.py:806 forces the builds regression needs only when the workflow lists Regression:
if (
"Regression" in workflow.additional_jobs
and "regression" not in workflow_config.custom_data.get("ci_exclude_tags", [])
):
extra_required.update(["CH_AMD_BINARY"])
The PR workflow lists RegressionPR (ci/workflows/pull_request.py:166), so the condition never matches and the build gets filtered out:
Job [Build (amd_binary)] is not affected by the change
"Build (amd_binary)": "Not affected by the changed files and not required"
Build (amd_release) survives only because CIReport requires it. It does carry a usable clickhouse binary at PRs/2348/<sha>/build_amd_release/clickhouse — get-deb-url.py just doesn't look there.
Fix
Accept both names, as ci/praktika/yaml_generator.py:613 already does:
if (
("Regression" in workflow.additional_jobs or "RegressionPR" in workflow.additional_jobs)
and "regression" not in workflow_config.custom_data.get("ci_exclude_tags", [])
):
Additional context
CI failure
Related PR
Describe the situation
Regression tests fail at the "Get deb url" step on any PR that runs regression without changing product code.
Build (amd_binary)is dropped from the workflow, so nothing is uploaded to that commit's S3 prefix andget-deb-url.pygets a 404:Nine regression jobs failed this way in PR #2348.
antalya-26.6andantalya-26.8are both affected;antalya-26.3is not.Root cause
ci/praktika/native_jobs.py:806forces the builds regression needs only when the workflow listsRegression:The PR workflow lists
RegressionPR(ci/workflows/pull_request.py:166), so the condition never matches and the build gets filtered out:Build (amd_release)survives only becauseCIReportrequires it. It does carry a usableclickhousebinary atPRs/2348/<sha>/build_amd_release/clickhouse—get-deb-url.pyjust doesn't look there.Fix
Accept both names, as
ci/praktika/yaml_generator.py:613already does:Additional context
CI failure
RegressionTestsRelease / Iceberg (1) / iceberg_1antalya-26.6(PR Delete unused antalya directory #2348)9344937ea73c3faa7d645ea7b41a970467c0a932Related PR
d77a7af7a, 2026-08-27) renamedRegressiontoRegressionPRand taughtyaml_generator.pyto accept both, but leftnative_jobs.pychecking only the old name.