Skip to content

Run CI on airflow-ctl release-branch pull requests and pushes - #70726

Merged
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable
Aug 5, 2026
Merged

Run CI on airflow-ctl release-branch pull requests and pushes#70726
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable

Conversation

@Lee-W

Copy link
Copy Markdown
Member

Pull requests targeting this branch receive no CI at all today: the
airflow-ctl/ release-branch patterns are missing from this branch's workflow
trigger filters, so only branch-independent bot checks report and a PR can show
all-green without any tests or CodeQL ever running.

GitHub resolves trigger filters from the workflow files on the target branch,
so the equivalent fix on main (#69626) is a no-op here and has to land on the
release branch itself.

Same change as the companion PR against airflow-ctl/v0-1-test (#70724).

related: #69626


Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 5)

Generated-by: Claude Code (Opus 5) following the guidelines

Pull requests targeting this branch received no CI at all: the
airflow-ctl release-branch patterns were missing from the workflow
trigger filters, so only branch-independent bot checks reported and a
PR could show all-green without any tests or CodeQL ever running.
GitHub resolves trigger filters from the workflow files on the target
branch, so the equivalent fix on main (apache#69626) does not apply here and
has to land on the release branch itself.
The ASF organisation-level Actions allowlist no longer permits the
af78098f (v3.0.1) pin, and GitHub blocks the entire workflow at startup
rather than failing the single step, so the test pipeline on this branch
cannot start at all and asf-allowlist-check reports the pin directly.
v3.0.3 is already allowlisted and in use on chart/v1-2x-test, and stays
within the same major version so the step inputs are unchanged.
The ASF organisation-level Actions allowlist no longer permits the pins this
branch carries for astral-sh/setup-uv and aws-actions/configure-aws-credentials,
and GitHub blocks the whole workflow at startup rather than failing the single
step, so the test pipeline on this branch cannot start at all.
These are the last two allowlist violations on the branch; the pins chosen are
the ones chart/v1-2x-test already runs green with, so they are known to be both
allowlisted and compatible with workflows of this vintage.
@Lee-W
Lee-W marked this pull request as ready for review July 31, 2026 05:33
The "airflow-ctl 0.1.5: test to stable" sync (apache#67294) copied main's
airflow-core/pyproject.toml metadata onto this branch without the
matching sources. Three leftovers stayed behind:
- the distribution version became 3.3.0 while
airflow-core/src/airflow/__init__.py stayed 3.2.1
- the Task SDK requirement became >=1.3.0,<1.4.0 while task-sdk on this
branch is 1.2.1
- a force-include and a shared_distributions entry appeared for
apache-airflow-shared-state, which has no shared/state folder here
Once CI actually started running on this branch, the CI image build
failed pip check on the resulting triangle:
apache-airflow 3.2.1 has requirement apache-airflow-core==3.2.1,
but you have apache-airflow-core 3.3.0
apache-airflow-core 3.3.0 has requirement
apache-airflow-task-sdk<1.4.0,>=1.3.0, but you have 1.2.1
apache-airflow-task-sdk 1.2.1 has requirement
apache-airflow-core<3.3.0,>=3.2.0, but you have 3.3.0
Realign the metadata with the sources that are on the branch, which is
what check-version-consistency and check-shared-distributions-usage
already expect, and refresh uv.lock, which had drifted from the same
sync.
The same test-to-stable sync (apache#67294) repointed the mypy-airflow-ctl hook
at ../scripts/ci/prek/run_mypy_full_dist_local_venv_or_breeze_in_ci.py,
which only exists on main. On this branch prek dies before mypy runs:
error: Failed to run hook `mypy-airflow-ctl`
caused by: Run command `python hook` failed
caused by: No such file or directory (os error 2)
Point it back at mypy_local_folder.py, which is what airflow-core,
task-sdk, devel-common and dev/scripts all use on this branch.
The test-to-stable sync (apache#67294) copied airflowctl's generated datamodels
from main, so they describe Airflow 3.3's API while this branch ships core
3.2.1. Two consequences, both red once CI started running here:
- generate-airflowctl-datamodels regenerates from
../airflow-core/src/airflow/api_fastapi and fails on any drift, so
Static checks could never pass
- the models required is_backfillable and timetable_periodic, which
apache#64644 added in 3.3.0, so every single-object Dag response failed
validation against this branch's own PROD image:
ValidationError: 2 validation errors for DAGResponse
is_backfillable Field required
timetable_periodic Field required
Run the hook to bring the models back in line with the spec on this
branch. This drops 14 model classes that no airflowctl code or test
references, plus the 3.3-only fields above.
Note RELEASE_NOTES.rst credits "Add ``is_backfillable`` property to DAG
API responses (apache#64644)" to airflowctl 0.1.5, but apache#64644 touches only
airflow-core -- that line is sync noise, not a client feature.
@Lee-W

Lee-W commented Aug 5, 2026

Copy link
Copy Markdown
MemberAuthor

since this PR only turn on the CI check and the fix should first be merged into v0-1-test and then back to v0-1-stable. the fix is now in v0-1-test. I'll merge this one now. and the ci will be green once we do another ctl release

@Lee-W
Lee-W merged commit 93fc24a into apache:airflow-ctl/v0-1-stableAug 5, 2026
108 of 109 checks passed
@Lee-W
Lee-W deleted the ci-trigger-airflow-ctl-v0-1-stable branch August 5, 2026 09:39
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Lee-W@potiuk@kaxil
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Run CI on airflow-ctl release-branch pull requests and pushes by Lee-W · Pull Request #70726 · apache/airflow · GitHub
Skip to content

Run CI on airflow-ctl release-branch pull requests and pushes - #70726

Merged
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable
Aug 5, 2026
Merged

Run CI on airflow-ctl release-branch pull requests and pushes#70726
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable

Conversation

@Lee-W

Copy link
Copy Markdown
Member

Pull requests targeting this branch receive no CI at all today: the
airflow-ctl/ release-branch patterns are missing from this branch's workflow
trigger filters, so only branch-independent bot checks report and a PR can show
all-green without any tests or CodeQL ever running.

GitHub resolves trigger filters from the workflow files on the target branch,
so the equivalent fix on main (#69626) is a no-op here and has to land on the
release branch itself.

Same change as the companion PR against airflow-ctl/v0-1-test (#70724).

related: #69626


Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 5)

Generated-by: Claude Code (Opus 5) following the guidelines

Pull requests targeting this branch received no CI at all: the
airflow-ctl release-branch patterns were missing from the workflow
trigger filters, so only branch-independent bot checks reported and a
PR could show all-green without any tests or CodeQL ever running.
GitHub resolves trigger filters from the workflow files on the target
branch, so the equivalent fix on main (apache#69626) does not apply here and
has to land on the release branch itself.
The ASF organisation-level Actions allowlist no longer permits the
af78098f (v3.0.1) pin, and GitHub blocks the entire workflow at startup
rather than failing the single step, so the test pipeline on this branch
cannot start at all and asf-allowlist-check reports the pin directly.
v3.0.3 is already allowlisted and in use on chart/v1-2x-test, and stays
within the same major version so the step inputs are unchanged.
The ASF organisation-level Actions allowlist no longer permits the pins this
branch carries for astral-sh/setup-uv and aws-actions/configure-aws-credentials,
and GitHub blocks the whole workflow at startup rather than failing the single
step, so the test pipeline on this branch cannot start at all.
These are the last two allowlist violations on the branch; the pins chosen are
the ones chart/v1-2x-test already runs green with, so they are known to be both
allowlisted and compatible with workflows of this vintage.
@Lee-W
Lee-W marked this pull request as ready for review July 31, 2026 05:33
The "airflow-ctl 0.1.5: test to stable" sync (apache#67294) copied main's
airflow-core/pyproject.toml metadata onto this branch without the
matching sources. Three leftovers stayed behind:
- the distribution version became 3.3.0 while
airflow-core/src/airflow/__init__.py stayed 3.2.1
- the Task SDK requirement became >=1.3.0,<1.4.0 while task-sdk on this
branch is 1.2.1
- a force-include and a shared_distributions entry appeared for
apache-airflow-shared-state, which has no shared/state folder here
Once CI actually started running on this branch, the CI image build
failed pip check on the resulting triangle:
apache-airflow 3.2.1 has requirement apache-airflow-core==3.2.1,
but you have apache-airflow-core 3.3.0
apache-airflow-core 3.3.0 has requirement
apache-airflow-task-sdk<1.4.0,>=1.3.0, but you have 1.2.1
apache-airflow-task-sdk 1.2.1 has requirement
apache-airflow-core<3.3.0,>=3.2.0, but you have 3.3.0
Realign the metadata with the sources that are on the branch, which is
what check-version-consistency and check-shared-distributions-usage
already expect, and refresh uv.lock, which had drifted from the same
sync.
The same test-to-stable sync (apache#67294) repointed the mypy-airflow-ctl hook
at ../scripts/ci/prek/run_mypy_full_dist_local_venv_or_breeze_in_ci.py,
which only exists on main. On this branch prek dies before mypy runs:
error: Failed to run hook `mypy-airflow-ctl`
caused by: Run command `python hook` failed
caused by: No such file or directory (os error 2)
Point it back at mypy_local_folder.py, which is what airflow-core,
task-sdk, devel-common and dev/scripts all use on this branch.
The test-to-stable sync (apache#67294) copied airflowctl's generated datamodels
from main, so they describe Airflow 3.3's API while this branch ships core
3.2.1. Two consequences, both red once CI started running here:
- generate-airflowctl-datamodels regenerates from
../airflow-core/src/airflow/api_fastapi and fails on any drift, so
Static checks could never pass
- the models required is_backfillable and timetable_periodic, which
apache#64644 added in 3.3.0, so every single-object Dag response failed
validation against this branch's own PROD image:
ValidationError: 2 validation errors for DAGResponse
is_backfillable Field required
timetable_periodic Field required
Run the hook to bring the models back in line with the spec on this
branch. This drops 14 model classes that no airflowctl code or test
references, plus the 3.3-only fields above.
Note RELEASE_NOTES.rst credits "Add ``is_backfillable`` property to DAG
API responses (apache#64644)" to airflowctl 0.1.5, but apache#64644 touches only
airflow-core -- that line is sync noise, not a client feature.
@Lee-W

Lee-W commented Aug 5, 2026

Copy link
Copy Markdown
MemberAuthor

since this PR only turn on the CI check and the fix should first be merged into v0-1-test and then back to v0-1-stable. the fix is now in v0-1-test. I'll merge this one now. and the ci will be green once we do another ctl release

@Lee-W
Lee-W merged commit 93fc24a into apache:airflow-ctl/v0-1-stableAug 5, 2026
108 of 109 checks passed
@Lee-W
Lee-W deleted the ci-trigger-airflow-ctl-v0-1-stable branch August 5, 2026 09:39
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Lee-W@potiuk@kaxil
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Run CI on airflow-ctl release-branch pull requests and pushes by Lee-W · Pull Request #70726 · apache/airflow · GitHub
Skip to content

Run CI on airflow-ctl release-branch pull requests and pushes - #70726

Merged
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable
Aug 5, 2026
Merged

Run CI on airflow-ctl release-branch pull requests and pushes#70726
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable

Conversation

@Lee-W

Copy link
Copy Markdown
Member

Pull requests targeting this branch receive no CI at all today: the
airflow-ctl/ release-branch patterns are missing from this branch's workflow
trigger filters, so only branch-independent bot checks report and a PR can show
all-green without any tests or CodeQL ever running.

GitHub resolves trigger filters from the workflow files on the target branch,
so the equivalent fix on main (#69626) is a no-op here and has to land on the
release branch itself.

Same change as the companion PR against airflow-ctl/v0-1-test (#70724).

related: #69626


Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 5)

Generated-by: Claude Code (Opus 5) following the guidelines

Pull requests targeting this branch received no CI at all: the
airflow-ctl release-branch patterns were missing from the workflow
trigger filters, so only branch-independent bot checks reported and a
PR could show all-green without any tests or CodeQL ever running.
GitHub resolves trigger filters from the workflow files on the target
branch, so the equivalent fix on main (apache#69626) does not apply here and
has to land on the release branch itself.
The ASF organisation-level Actions allowlist no longer permits the
af78098f (v3.0.1) pin, and GitHub blocks the entire workflow at startup
rather than failing the single step, so the test pipeline on this branch
cannot start at all and asf-allowlist-check reports the pin directly.
v3.0.3 is already allowlisted and in use on chart/v1-2x-test, and stays
within the same major version so the step inputs are unchanged.
The ASF organisation-level Actions allowlist no longer permits the pins this
branch carries for astral-sh/setup-uv and aws-actions/configure-aws-credentials,
and GitHub blocks the whole workflow at startup rather than failing the single
step, so the test pipeline on this branch cannot start at all.
These are the last two allowlist violations on the branch; the pins chosen are
the ones chart/v1-2x-test already runs green with, so they are known to be both
allowlisted and compatible with workflows of this vintage.
@Lee-W
Lee-W marked this pull request as ready for review July 31, 2026 05:33
The "airflow-ctl 0.1.5: test to stable" sync (apache#67294) copied main's
airflow-core/pyproject.toml metadata onto this branch without the
matching sources. Three leftovers stayed behind:
- the distribution version became 3.3.0 while
airflow-core/src/airflow/__init__.py stayed 3.2.1
- the Task SDK requirement became >=1.3.0,<1.4.0 while task-sdk on this
branch is 1.2.1
- a force-include and a shared_distributions entry appeared for
apache-airflow-shared-state, which has no shared/state folder here
Once CI actually started running on this branch, the CI image build
failed pip check on the resulting triangle:
apache-airflow 3.2.1 has requirement apache-airflow-core==3.2.1,
but you have apache-airflow-core 3.3.0
apache-airflow-core 3.3.0 has requirement
apache-airflow-task-sdk<1.4.0,>=1.3.0, but you have 1.2.1
apache-airflow-task-sdk 1.2.1 has requirement
apache-airflow-core<3.3.0,>=3.2.0, but you have 3.3.0
Realign the metadata with the sources that are on the branch, which is
what check-version-consistency and check-shared-distributions-usage
already expect, and refresh uv.lock, which had drifted from the same
sync.
The same test-to-stable sync (apache#67294) repointed the mypy-airflow-ctl hook
at ../scripts/ci/prek/run_mypy_full_dist_local_venv_or_breeze_in_ci.py,
which only exists on main. On this branch prek dies before mypy runs:
error: Failed to run hook `mypy-airflow-ctl`
caused by: Run command `python hook` failed
caused by: No such file or directory (os error 2)
Point it back at mypy_local_folder.py, which is what airflow-core,
task-sdk, devel-common and dev/scripts all use on this branch.
The test-to-stable sync (apache#67294) copied airflowctl's generated datamodels
from main, so they describe Airflow 3.3's API while this branch ships core
3.2.1. Two consequences, both red once CI started running here:
- generate-airflowctl-datamodels regenerates from
../airflow-core/src/airflow/api_fastapi and fails on any drift, so
Static checks could never pass
- the models required is_backfillable and timetable_periodic, which
apache#64644 added in 3.3.0, so every single-object Dag response failed
validation against this branch's own PROD image:
ValidationError: 2 validation errors for DAGResponse
is_backfillable Field required
timetable_periodic Field required
Run the hook to bring the models back in line with the spec on this
branch. This drops 14 model classes that no airflowctl code or test
references, plus the 3.3-only fields above.
Note RELEASE_NOTES.rst credits "Add ``is_backfillable`` property to DAG
API responses (apache#64644)" to airflowctl 0.1.5, but apache#64644 touches only
airflow-core -- that line is sync noise, not a client feature.
@Lee-W

Lee-W commented Aug 5, 2026

Copy link
Copy Markdown
MemberAuthor

since this PR only turn on the CI check and the fix should first be merged into v0-1-test and then back to v0-1-stable. the fix is now in v0-1-test. I'll merge this one now. and the ci will be green once we do another ctl release

@Lee-W
Lee-W merged commit 93fc24a into apache:airflow-ctl/v0-1-stableAug 5, 2026
108 of 109 checks passed
@Lee-W
Lee-W deleted the ci-trigger-airflow-ctl-v0-1-stable branch August 5, 2026 09:39
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Lee-W@potiuk@kaxil
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Run CI on airflow-ctl release-branch pull requests and pushes by Lee-W · Pull Request #70726 · apache/airflow · GitHub
Skip to content

Run CI on airflow-ctl release-branch pull requests and pushes - #70726

Merged
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable
Aug 5, 2026
Merged

Run CI on airflow-ctl release-branch pull requests and pushes#70726
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable

Conversation

@Lee-W

Copy link
Copy Markdown
Member

Pull requests targeting this branch receive no CI at all today: the
airflow-ctl/ release-branch patterns are missing from this branch's workflow
trigger filters, so only branch-independent bot checks report and a PR can show
all-green without any tests or CodeQL ever running.

GitHub resolves trigger filters from the workflow files on the target branch,
so the equivalent fix on main (#69626) is a no-op here and has to land on the
release branch itself.

Same change as the companion PR against airflow-ctl/v0-1-test (#70724).

related: #69626


Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 5)

Generated-by: Claude Code (Opus 5) following the guidelines

Pull requests targeting this branch received no CI at all: the
airflow-ctl release-branch patterns were missing from the workflow
trigger filters, so only branch-independent bot checks reported and a
PR could show all-green without any tests or CodeQL ever running.
GitHub resolves trigger filters from the workflow files on the target
branch, so the equivalent fix on main (apache#69626) does not apply here and
has to land on the release branch itself.
The ASF organisation-level Actions allowlist no longer permits the
af78098f (v3.0.1) pin, and GitHub blocks the entire workflow at startup
rather than failing the single step, so the test pipeline on this branch
cannot start at all and asf-allowlist-check reports the pin directly.
v3.0.3 is already allowlisted and in use on chart/v1-2x-test, and stays
within the same major version so the step inputs are unchanged.
The ASF organisation-level Actions allowlist no longer permits the pins this
branch carries for astral-sh/setup-uv and aws-actions/configure-aws-credentials,
and GitHub blocks the whole workflow at startup rather than failing the single
step, so the test pipeline on this branch cannot start at all.
These are the last two allowlist violations on the branch; the pins chosen are
the ones chart/v1-2x-test already runs green with, so they are known to be both
allowlisted and compatible with workflows of this vintage.
@Lee-W
Lee-W marked this pull request as ready for review July 31, 2026 05:33
The "airflow-ctl 0.1.5: test to stable" sync (apache#67294) copied main's
airflow-core/pyproject.toml metadata onto this branch without the
matching sources. Three leftovers stayed behind:
- the distribution version became 3.3.0 while
airflow-core/src/airflow/__init__.py stayed 3.2.1
- the Task SDK requirement became >=1.3.0,<1.4.0 while task-sdk on this
branch is 1.2.1
- a force-include and a shared_distributions entry appeared for
apache-airflow-shared-state, which has no shared/state folder here
Once CI actually started running on this branch, the CI image build
failed pip check on the resulting triangle:
apache-airflow 3.2.1 has requirement apache-airflow-core==3.2.1,
but you have apache-airflow-core 3.3.0
apache-airflow-core 3.3.0 has requirement
apache-airflow-task-sdk<1.4.0,>=1.3.0, but you have 1.2.1
apache-airflow-task-sdk 1.2.1 has requirement
apache-airflow-core<3.3.0,>=3.2.0, but you have 3.3.0
Realign the metadata with the sources that are on the branch, which is
what check-version-consistency and check-shared-distributions-usage
already expect, and refresh uv.lock, which had drifted from the same
sync.
The same test-to-stable sync (apache#67294) repointed the mypy-airflow-ctl hook
at ../scripts/ci/prek/run_mypy_full_dist_local_venv_or_breeze_in_ci.py,
which only exists on main. On this branch prek dies before mypy runs:
error: Failed to run hook `mypy-airflow-ctl`
caused by: Run command `python hook` failed
caused by: No such file or directory (os error 2)
Point it back at mypy_local_folder.py, which is what airflow-core,
task-sdk, devel-common and dev/scripts all use on this branch.
The test-to-stable sync (apache#67294) copied airflowctl's generated datamodels
from main, so they describe Airflow 3.3's API while this branch ships core
3.2.1. Two consequences, both red once CI started running here:
- generate-airflowctl-datamodels regenerates from
../airflow-core/src/airflow/api_fastapi and fails on any drift, so
Static checks could never pass
- the models required is_backfillable and timetable_periodic, which
apache#64644 added in 3.3.0, so every single-object Dag response failed
validation against this branch's own PROD image:
ValidationError: 2 validation errors for DAGResponse
is_backfillable Field required
timetable_periodic Field required
Run the hook to bring the models back in line with the spec on this
branch. This drops 14 model classes that no airflowctl code or test
references, plus the 3.3-only fields above.
Note RELEASE_NOTES.rst credits "Add ``is_backfillable`` property to DAG
API responses (apache#64644)" to airflowctl 0.1.5, but apache#64644 touches only
airflow-core -- that line is sync noise, not a client feature.
@Lee-W

Lee-W commented Aug 5, 2026

Copy link
Copy Markdown
MemberAuthor

since this PR only turn on the CI check and the fix should first be merged into v0-1-test and then back to v0-1-stable. the fix is now in v0-1-test. I'll merge this one now. and the ci will be green once we do another ctl release

@Lee-W
Lee-W merged commit 93fc24a into apache:airflow-ctl/v0-1-stableAug 5, 2026
108 of 109 checks passed
@Lee-W
Lee-W deleted the ci-trigger-airflow-ctl-v0-1-stable branch August 5, 2026 09:39
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Lee-W@potiuk@kaxil
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' Run CI on airflow-ctl release-branch pull requests and pushes by Lee-W · Pull Request #70726 · apache/airflow · GitHub
Skip to content

Run CI on airflow-ctl release-branch pull requests and pushes - #70726

Merged
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable
Aug 5, 2026
Merged

Run CI on airflow-ctl release-branch pull requests and pushes#70726
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable

Conversation

@Lee-W

Copy link
Copy Markdown
Member

Pull requests targeting this branch receive no CI at all today: the
airflow-ctl/ release-branch patterns are missing from this branch's workflow
trigger filters, so only branch-independent bot checks report and a PR can show
all-green without any tests or CodeQL ever running.

GitHub resolves trigger filters from the workflow files on the target branch,
so the equivalent fix on main (#69626) is a no-op here and has to land on the
release branch itself.

Same change as the companion PR against airflow-ctl/v0-1-test (#70724).

related: #69626


Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 5)

Generated-by: Claude Code (Opus 5) following the guidelines

Pull requests targeting this branch received no CI at all: the
airflow-ctl release-branch patterns were missing from the workflow
trigger filters, so only branch-independent bot checks reported and a
PR could show all-green without any tests or CodeQL ever running.
GitHub resolves trigger filters from the workflow files on the target
branch, so the equivalent fix on main (apache#69626) does not apply here and
has to land on the release branch itself.
The ASF organisation-level Actions allowlist no longer permits the
af78098f (v3.0.1) pin, and GitHub blocks the entire workflow at startup
rather than failing the single step, so the test pipeline on this branch
cannot start at all and asf-allowlist-check reports the pin directly.
v3.0.3 is already allowlisted and in use on chart/v1-2x-test, and stays
within the same major version so the step inputs are unchanged.
The ASF organisation-level Actions allowlist no longer permits the pins this
branch carries for astral-sh/setup-uv and aws-actions/configure-aws-credentials,
and GitHub blocks the whole workflow at startup rather than failing the single
step, so the test pipeline on this branch cannot start at all.
These are the last two allowlist violations on the branch; the pins chosen are
the ones chart/v1-2x-test already runs green with, so they are known to be both
allowlisted and compatible with workflows of this vintage.
@Lee-W
Lee-W marked this pull request as ready for review July 31, 2026 05:33
The "airflow-ctl 0.1.5: test to stable" sync (apache#67294) copied main's
airflow-core/pyproject.toml metadata onto this branch without the
matching sources. Three leftovers stayed behind:
- the distribution version became 3.3.0 while
airflow-core/src/airflow/__init__.py stayed 3.2.1
- the Task SDK requirement became >=1.3.0,<1.4.0 while task-sdk on this
branch is 1.2.1
- a force-include and a shared_distributions entry appeared for
apache-airflow-shared-state, which has no shared/state folder here
Once CI actually started running on this branch, the CI image build
failed pip check on the resulting triangle:
apache-airflow 3.2.1 has requirement apache-airflow-core==3.2.1,
but you have apache-airflow-core 3.3.0
apache-airflow-core 3.3.0 has requirement
apache-airflow-task-sdk<1.4.0,>=1.3.0, but you have 1.2.1
apache-airflow-task-sdk 1.2.1 has requirement
apache-airflow-core<3.3.0,>=3.2.0, but you have 3.3.0
Realign the metadata with the sources that are on the branch, which is
what check-version-consistency and check-shared-distributions-usage
already expect, and refresh uv.lock, which had drifted from the same
sync.
The same test-to-stable sync (apache#67294) repointed the mypy-airflow-ctl hook
at ../scripts/ci/prek/run_mypy_full_dist_local_venv_or_breeze_in_ci.py,
which only exists on main. On this branch prek dies before mypy runs:
error: Failed to run hook `mypy-airflow-ctl`
caused by: Run command `python hook` failed
caused by: No such file or directory (os error 2)
Point it back at mypy_local_folder.py, which is what airflow-core,
task-sdk, devel-common and dev/scripts all use on this branch.
The test-to-stable sync (apache#67294) copied airflowctl's generated datamodels
from main, so they describe Airflow 3.3's API while this branch ships core
3.2.1. Two consequences, both red once CI started running here:
- generate-airflowctl-datamodels regenerates from
../airflow-core/src/airflow/api_fastapi and fails on any drift, so
Static checks could never pass
- the models required is_backfillable and timetable_periodic, which
apache#64644 added in 3.3.0, so every single-object Dag response failed
validation against this branch's own PROD image:
ValidationError: 2 validation errors for DAGResponse
is_backfillable Field required
timetable_periodic Field required
Run the hook to bring the models back in line with the spec on this
branch. This drops 14 model classes that no airflowctl code or test
references, plus the 3.3-only fields above.
Note RELEASE_NOTES.rst credits "Add ``is_backfillable`` property to DAG
API responses (apache#64644)" to airflowctl 0.1.5, but apache#64644 touches only
airflow-core -- that line is sync noise, not a client feature.
@Lee-W

Lee-W commented Aug 5, 2026

Copy link
Copy Markdown
MemberAuthor

since this PR only turn on the CI check and the fix should first be merged into v0-1-test and then back to v0-1-stable. the fix is now in v0-1-test. I'll merge this one now. and the ci will be green once we do another ctl release

@Lee-W
Lee-W merged commit 93fc24a into apache:airflow-ctl/v0-1-stableAug 5, 2026
108 of 109 checks passed
@Lee-W
Lee-W deleted the ci-trigger-airflow-ctl-v0-1-stable branch August 5, 2026 09:39
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Lee-W@potiuk@kaxil
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Run CI on airflow-ctl release-branch pull requests and pushes by Lee-W · Pull Request #70726 · apache/airflow · GitHub
Skip to content

Run CI on airflow-ctl release-branch pull requests and pushes - #70726

Merged
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable
Aug 5, 2026
Merged

Run CI on airflow-ctl release-branch pull requests and pushes#70726
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable

Conversation

@Lee-W

Copy link
Copy Markdown
Member

Pull requests targeting this branch receive no CI at all today: the
airflow-ctl/ release-branch patterns are missing from this branch's workflow
trigger filters, so only branch-independent bot checks report and a PR can show
all-green without any tests or CodeQL ever running.

GitHub resolves trigger filters from the workflow files on the target branch,
so the equivalent fix on main (#69626) is a no-op here and has to land on the
release branch itself.

Same change as the companion PR against airflow-ctl/v0-1-test (#70724).

related: #69626


Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 5)

Generated-by: Claude Code (Opus 5) following the guidelines

Pull requests targeting this branch received no CI at all: the
airflow-ctl release-branch patterns were missing from the workflow
trigger filters, so only branch-independent bot checks reported and a
PR could show all-green without any tests or CodeQL ever running.
GitHub resolves trigger filters from the workflow files on the target
branch, so the equivalent fix on main (apache#69626) does not apply here and
has to land on the release branch itself.
The ASF organisation-level Actions allowlist no longer permits the
af78098f (v3.0.1) pin, and GitHub blocks the entire workflow at startup
rather than failing the single step, so the test pipeline on this branch
cannot start at all and asf-allowlist-check reports the pin directly.
v3.0.3 is already allowlisted and in use on chart/v1-2x-test, and stays
within the same major version so the step inputs are unchanged.
The ASF organisation-level Actions allowlist no longer permits the pins this
branch carries for astral-sh/setup-uv and aws-actions/configure-aws-credentials,
and GitHub blocks the whole workflow at startup rather than failing the single
step, so the test pipeline on this branch cannot start at all.
These are the last two allowlist violations on the branch; the pins chosen are
the ones chart/v1-2x-test already runs green with, so they are known to be both
allowlisted and compatible with workflows of this vintage.
@Lee-W
Lee-W marked this pull request as ready for review July 31, 2026 05:33
The "airflow-ctl 0.1.5: test to stable" sync (apache#67294) copied main's
airflow-core/pyproject.toml metadata onto this branch without the
matching sources. Three leftovers stayed behind:
- the distribution version became 3.3.0 while
airflow-core/src/airflow/__init__.py stayed 3.2.1
- the Task SDK requirement became >=1.3.0,<1.4.0 while task-sdk on this
branch is 1.2.1
- a force-include and a shared_distributions entry appeared for
apache-airflow-shared-state, which has no shared/state folder here
Once CI actually started running on this branch, the CI image build
failed pip check on the resulting triangle:
apache-airflow 3.2.1 has requirement apache-airflow-core==3.2.1,
but you have apache-airflow-core 3.3.0
apache-airflow-core 3.3.0 has requirement
apache-airflow-task-sdk<1.4.0,>=1.3.0, but you have 1.2.1
apache-airflow-task-sdk 1.2.1 has requirement
apache-airflow-core<3.3.0,>=3.2.0, but you have 3.3.0
Realign the metadata with the sources that are on the branch, which is
what check-version-consistency and check-shared-distributions-usage
already expect, and refresh uv.lock, which had drifted from the same
sync.
The same test-to-stable sync (apache#67294) repointed the mypy-airflow-ctl hook
at ../scripts/ci/prek/run_mypy_full_dist_local_venv_or_breeze_in_ci.py,
which only exists on main. On this branch prek dies before mypy runs:
error: Failed to run hook `mypy-airflow-ctl`
caused by: Run command `python hook` failed
caused by: No such file or directory (os error 2)
Point it back at mypy_local_folder.py, which is what airflow-core,
task-sdk, devel-common and dev/scripts all use on this branch.
The test-to-stable sync (apache#67294) copied airflowctl's generated datamodels
from main, so they describe Airflow 3.3's API while this branch ships core
3.2.1. Two consequences, both red once CI started running here:
- generate-airflowctl-datamodels regenerates from
../airflow-core/src/airflow/api_fastapi and fails on any drift, so
Static checks could never pass
- the models required is_backfillable and timetable_periodic, which
apache#64644 added in 3.3.0, so every single-object Dag response failed
validation against this branch's own PROD image:
ValidationError: 2 validation errors for DAGResponse
is_backfillable Field required
timetable_periodic Field required
Run the hook to bring the models back in line with the spec on this
branch. This drops 14 model classes that no airflowctl code or test
references, plus the 3.3-only fields above.
Note RELEASE_NOTES.rst credits "Add ``is_backfillable`` property to DAG
API responses (apache#64644)" to airflowctl 0.1.5, but apache#64644 touches only
airflow-core -- that line is sync noise, not a client feature.
@Lee-W

Lee-W commented Aug 5, 2026

Copy link
Copy Markdown
MemberAuthor

since this PR only turn on the CI check and the fix should first be merged into v0-1-test and then back to v0-1-stable. the fix is now in v0-1-test. I'll merge this one now. and the ci will be green once we do another ctl release

@Lee-W
Lee-W merged commit 93fc24a into apache:airflow-ctl/v0-1-stableAug 5, 2026
108 of 109 checks passed
@Lee-W
Lee-W deleted the ci-trigger-airflow-ctl-v0-1-stable branch August 5, 2026 09:39
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Lee-W@potiuk@kaxil
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' Run CI on airflow-ctl release-branch pull requests and pushes by Lee-W · Pull Request #70726 · apache/airflow · GitHub
Skip to content

Run CI on airflow-ctl release-branch pull requests and pushes - #70726

Merged
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable
Aug 5, 2026
Merged

Run CI on airflow-ctl release-branch pull requests and pushes#70726
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable

Conversation

@Lee-W

Copy link
Copy Markdown
Member

Pull requests targeting this branch receive no CI at all today: the
airflow-ctl/ release-branch patterns are missing from this branch's workflow
trigger filters, so only branch-independent bot checks report and a PR can show
all-green without any tests or CodeQL ever running.

GitHub resolves trigger filters from the workflow files on the target branch,
so the equivalent fix on main (#69626) is a no-op here and has to land on the
release branch itself.

Same change as the companion PR against airflow-ctl/v0-1-test (#70724).

related: #69626


Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 5)

Generated-by: Claude Code (Opus 5) following the guidelines

Pull requests targeting this branch received no CI at all: the
airflow-ctl release-branch patterns were missing from the workflow
trigger filters, so only branch-independent bot checks reported and a
PR could show all-green without any tests or CodeQL ever running.
GitHub resolves trigger filters from the workflow files on the target
branch, so the equivalent fix on main (apache#69626) does not apply here and
has to land on the release branch itself.
The ASF organisation-level Actions allowlist no longer permits the
af78098f (v3.0.1) pin, and GitHub blocks the entire workflow at startup
rather than failing the single step, so the test pipeline on this branch
cannot start at all and asf-allowlist-check reports the pin directly.
v3.0.3 is already allowlisted and in use on chart/v1-2x-test, and stays
within the same major version so the step inputs are unchanged.
The ASF organisation-level Actions allowlist no longer permits the pins this
branch carries for astral-sh/setup-uv and aws-actions/configure-aws-credentials,
and GitHub blocks the whole workflow at startup rather than failing the single
step, so the test pipeline on this branch cannot start at all.
These are the last two allowlist violations on the branch; the pins chosen are
the ones chart/v1-2x-test already runs green with, so they are known to be both
allowlisted and compatible with workflows of this vintage.
@Lee-W
Lee-W marked this pull request as ready for review July 31, 2026 05:33
The "airflow-ctl 0.1.5: test to stable" sync (apache#67294) copied main's
airflow-core/pyproject.toml metadata onto this branch without the
matching sources. Three leftovers stayed behind:
- the distribution version became 3.3.0 while
airflow-core/src/airflow/__init__.py stayed 3.2.1
- the Task SDK requirement became >=1.3.0,<1.4.0 while task-sdk on this
branch is 1.2.1
- a force-include and a shared_distributions entry appeared for
apache-airflow-shared-state, which has no shared/state folder here
Once CI actually started running on this branch, the CI image build
failed pip check on the resulting triangle:
apache-airflow 3.2.1 has requirement apache-airflow-core==3.2.1,
but you have apache-airflow-core 3.3.0
apache-airflow-core 3.3.0 has requirement
apache-airflow-task-sdk<1.4.0,>=1.3.0, but you have 1.2.1
apache-airflow-task-sdk 1.2.1 has requirement
apache-airflow-core<3.3.0,>=3.2.0, but you have 3.3.0
Realign the metadata with the sources that are on the branch, which is
what check-version-consistency and check-shared-distributions-usage
already expect, and refresh uv.lock, which had drifted from the same
sync.
The same test-to-stable sync (apache#67294) repointed the mypy-airflow-ctl hook
at ../scripts/ci/prek/run_mypy_full_dist_local_venv_or_breeze_in_ci.py,
which only exists on main. On this branch prek dies before mypy runs:
error: Failed to run hook `mypy-airflow-ctl`
caused by: Run command `python hook` failed
caused by: No such file or directory (os error 2)
Point it back at mypy_local_folder.py, which is what airflow-core,
task-sdk, devel-common and dev/scripts all use on this branch.
The test-to-stable sync (apache#67294) copied airflowctl's generated datamodels
from main, so they describe Airflow 3.3's API while this branch ships core
3.2.1. Two consequences, both red once CI started running here:
- generate-airflowctl-datamodels regenerates from
../airflow-core/src/airflow/api_fastapi and fails on any drift, so
Static checks could never pass
- the models required is_backfillable and timetable_periodic, which
apache#64644 added in 3.3.0, so every single-object Dag response failed
validation against this branch's own PROD image:
ValidationError: 2 validation errors for DAGResponse
is_backfillable Field required
timetable_periodic Field required
Run the hook to bring the models back in line with the spec on this
branch. This drops 14 model classes that no airflowctl code or test
references, plus the 3.3-only fields above.
Note RELEASE_NOTES.rst credits "Add ``is_backfillable`` property to DAG
API responses (apache#64644)" to airflowctl 0.1.5, but apache#64644 touches only
airflow-core -- that line is sync noise, not a client feature.
@Lee-W

Lee-W commented Aug 5, 2026

Copy link
Copy Markdown
MemberAuthor

since this PR only turn on the CI check and the fix should first be merged into v0-1-test and then back to v0-1-stable. the fix is now in v0-1-test. I'll merge this one now. and the ci will be green once we do another ctl release

@Lee-W
Lee-W merged commit 93fc24a into apache:airflow-ctl/v0-1-stableAug 5, 2026
108 of 109 checks passed
@Lee-W
Lee-W deleted the ci-trigger-airflow-ctl-v0-1-stable branch August 5, 2026 09:39
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Lee-W@potiuk@kaxil
, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); Run CI on airflow-ctl release-branch pull requests and pushes by Lee-W · Pull Request #70726 · apache/airflow · GitHub
Skip to content

Run CI on airflow-ctl release-branch pull requests and pushes - #70726

Merged
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable
Aug 5, 2026
Merged

Run CI on airflow-ctl release-branch pull requests and pushes#70726
Lee-W merged 6 commits into
apache:airflow-ctl/v0-1-stablefrom
astronomer:ci-trigger-airflow-ctl-v0-1-stable

Conversation

@Lee-W

Copy link
Copy Markdown
Member

Pull requests targeting this branch receive no CI at all today: the
airflow-ctl/ release-branch patterns are missing from this branch's workflow
trigger filters, so only branch-independent bot checks report and a PR can show
all-green without any tests or CodeQL ever running.

GitHub resolves trigger filters from the workflow files on the target branch,
so the equivalent fix on main (#69626) is a no-op here and has to land on the
release branch itself.

Same change as the companion PR against airflow-ctl/v0-1-test (#70724).

related: #69626


Was generative AI tooling used to co-author this PR?
  • Yes — Claude Code (Opus 5)

Generated-by: Claude Code (Opus 5) following the guidelines

Pull requests targeting this branch received no CI at all: the
airflow-ctl release-branch patterns were missing from the workflow
trigger filters, so only branch-independent bot checks reported and a
PR could show all-green without any tests or CodeQL ever running.
GitHub resolves trigger filters from the workflow files on the target
branch, so the equivalent fix on main (apache#69626) does not apply here and
has to land on the release branch itself.
The ASF organisation-level Actions allowlist no longer permits the
af78098f (v3.0.1) pin, and GitHub blocks the entire workflow at startup
rather than failing the single step, so the test pipeline on this branch
cannot start at all and asf-allowlist-check reports the pin directly.
v3.0.3 is already allowlisted and in use on chart/v1-2x-test, and stays
within the same major version so the step inputs are unchanged.
The ASF organisation-level Actions allowlist no longer permits the pins this
branch carries for astral-sh/setup-uv and aws-actions/configure-aws-credentials,
and GitHub blocks the whole workflow at startup rather than failing the single
step, so the test pipeline on this branch cannot start at all.
These are the last two allowlist violations on the branch; the pins chosen are
the ones chart/v1-2x-test already runs green with, so they are known to be both
allowlisted and compatible with workflows of this vintage.
@Lee-W
Lee-W marked this pull request as ready for review July 31, 2026 05:33
The "airflow-ctl 0.1.5: test to stable" sync (apache#67294) copied main's
airflow-core/pyproject.toml metadata onto this branch without the
matching sources. Three leftovers stayed behind:
- the distribution version became 3.3.0 while
airflow-core/src/airflow/__init__.py stayed 3.2.1
- the Task SDK requirement became >=1.3.0,<1.4.0 while task-sdk on this
branch is 1.2.1
- a force-include and a shared_distributions entry appeared for
apache-airflow-shared-state, which has no shared/state folder here
Once CI actually started running on this branch, the CI image build
failed pip check on the resulting triangle:
apache-airflow 3.2.1 has requirement apache-airflow-core==3.2.1,
but you have apache-airflow-core 3.3.0
apache-airflow-core 3.3.0 has requirement
apache-airflow-task-sdk<1.4.0,>=1.3.0, but you have 1.2.1
apache-airflow-task-sdk 1.2.1 has requirement
apache-airflow-core<3.3.0,>=3.2.0, but you have 3.3.0
Realign the metadata with the sources that are on the branch, which is
what check-version-consistency and check-shared-distributions-usage
already expect, and refresh uv.lock, which had drifted from the same
sync.
The same test-to-stable sync (apache#67294) repointed the mypy-airflow-ctl hook
at ../scripts/ci/prek/run_mypy_full_dist_local_venv_or_breeze_in_ci.py,
which only exists on main. On this branch prek dies before mypy runs:
error: Failed to run hook `mypy-airflow-ctl`
caused by: Run command `python hook` failed
caused by: No such file or directory (os error 2)
Point it back at mypy_local_folder.py, which is what airflow-core,
task-sdk, devel-common and dev/scripts all use on this branch.
The test-to-stable sync (apache#67294) copied airflowctl's generated datamodels
from main, so they describe Airflow 3.3's API while this branch ships core
3.2.1. Two consequences, both red once CI started running here:
- generate-airflowctl-datamodels regenerates from
../airflow-core/src/airflow/api_fastapi and fails on any drift, so
Static checks could never pass
- the models required is_backfillable and timetable_periodic, which
apache#64644 added in 3.3.0, so every single-object Dag response failed
validation against this branch's own PROD image:
ValidationError: 2 validation errors for DAGResponse
is_backfillable Field required
timetable_periodic Field required
Run the hook to bring the models back in line with the spec on this
branch. This drops 14 model classes that no airflowctl code or test
references, plus the 3.3-only fields above.
Note RELEASE_NOTES.rst credits "Add ``is_backfillable`` property to DAG
API responses (apache#64644)" to airflowctl 0.1.5, but apache#64644 touches only
airflow-core -- that line is sync noise, not a client feature.
@Lee-W

Lee-W commented Aug 5, 2026

Copy link
Copy Markdown
MemberAuthor

since this PR only turn on the CI check and the fix should first be merged into v0-1-test and then back to v0-1-stable. the fix is now in v0-1-test. I'll merge this one now. and the ci will be green once we do another ctl release

@Lee-W
Lee-W merged commit 93fc24a into apache:airflow-ctl/v0-1-stableAug 5, 2026
108 of 109 checks passed
@Lee-W
Lee-W deleted the ci-trigger-airflow-ctl-v0-1-stable branch August 5, 2026 09:39
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@Lee-W@potiuk@kaxil