New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix airflow dag trigger cli #20781
Fix airflow dag trigger cli #20781
Conversation
airflow/api/common/trigger_dag.py
Outdated
@@ -88,6 +88,9 @@ def _trigger_dag( | |||
conf=run_conf, | |||
external_trigger=True, | |||
dag_hash=dag_bag.dags_hash.get(dag_id), | |||
data_interval=_dag.timetable.infer_manual_data_interval( | |||
run_after=timezone.coerce_datetime(execution_date) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
execution_date
is never None and already aware at this point, so pendulum.instance()
is probably a better call.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated as suggested.
@@ -76,6 +76,7 @@ def test_trigger_dag(self, mock): | |||
conf=None, | |||
external_trigger=True, | |||
dag_hash=ANY, | |||
data_interval=ANY, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be checkable, can you try to not use ANY
here (and the one below)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure. I also updated the test to check the value of "dag_hash".
The PR is likely OK to be merged with just subset of tests for default Python and Database versions without running the full matrix of tests, because it does not modify the core of Airflow. If the committers decide that the full tests matrix is needed, they will add the label 'full tests needed'. Then you should rebase to the latest main or amend the last commit of the PR, and push it with --force-with-lease. |
The "airflow dag trigger" reports a harmless yet annoying warning message "Calling DAG.create_dagrun() without an explicit data interval is deprecated". The issue can be fixed by setting the
create_dagrun
function argumentdata_interval
to the same value as is calculated by the function.closes: #20579
^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in UPDATING.md.