Observed Behavior:
DAGApi.get_dag_details fails if DAG Run Timeout is None.
To recreate:
First, Create a DAG and set "DAG Run Timout" as None
Next, try to access the DAG Details using the API:
api = DAGApi(airflow_client.client)
dag = api.get_dag_details(dag_id)
Exception:
airflow_client.client.exceptions.ApiTypeError: Invalid type for variable 'dag_run_timeout'. Required value type is TimeDelta and passed type was NoneType at ['received_data']['dag_run_timeout']
Proposed fix:
The DAG schema at dagrun_timeout should support NoneType, as this is what is supported in the Airflow API documentation.