@@ -243,17 +243,17 @@ def _extract_and_sign_template(bundle_name: str) -> tuple[str | None, dict]:
243243 if not team :
244244 raise _bundle_item_exc (f"Team '{ config .team_name } ' does not exist" )
245245
246+ new_template , new_params = _extract_and_sign_template (name )
247+
246248 if bundle := stored .pop (name , None ):
247249 bundle .active = True
248- new_template , new_params = _extract_and_sign_template (name )
249250 if new_template != bundle .signed_url_template :
250251 bundle .signed_url_template = new_template
251252 self .log .debug ("Updated URL template for bundle %s" , name )
252253 if new_params != bundle .template_params :
253254 bundle .template_params = new_params
254255 self .log .debug ("Updated template parameters for bundle %s" , name )
255256 else :
256- new_template , new_params = _extract_and_sign_template (name )
257257 bundle = DagBundleModel (name = name )
258258 bundle .signed_url_template = new_template
259259 bundle .template_params = new_params
@@ -279,12 +279,13 @@ def _extract_and_sign_template(bundle_name: str) -> tuple[str | None, dict]:
279279 )
280280 bundle .teams = []
281281
282+ # Import here to avoid circular import
283+ from airflow .models .errors import ParseImportError
284+
282285 for name , bundle in stored .items ():
283286 bundle .active = False
284287 bundle .teams = []
285288 self .log .warning ("DAG bundle %s is no longer found in config and has been disabled" , name )
286- from airflow .models .errors import ParseImportError
287-
288289 session .execute (delete (ParseImportError ).where (ParseImportError .bundle_name == name ))
289290 self .log .info ("Deleted import errors for bundle %s which is no longer configured" , name )
290291
0 commit comments