diff --git a/src/egon/data/airflow/dags/pipeline.py b/src/egon/data/airflow/dags/pipeline.py index 4fa16e0c8..32974206e 100755 --- a/src/egon/data/airflow/dags/pipeline.py +++ b/src/egon/data/airflow/dags/pipeline.py @@ -591,8 +591,8 @@ dependencies=[vg250, setup_etrago, create_gas_polygons] ) - # Heat pump disaggregation for status2019 - heat_pumps_2019 = HeatPumpsStatusQuo( + # Heat pump disaggregation for status quo + heat_pumps_sq = HeatPumpsStatusQuo( dependencies=[ cts_demand_buildings, DistrictHeatingAreas, diff --git a/src/egon/data/datasets/heat_supply/individual_heating.py b/src/egon/data/datasets/heat_supply/individual_heating.py index 26b0fca57..8c889fa0d 100644 --- a/src/egon/data/datasets/heat_supply/individual_heating.py +++ b/src/egon/data/datasets/heat_supply/individual_heating.py @@ -355,34 +355,42 @@ def dyn_parallel_tasks_status_quo(scenario): ) return tasks - tasks = () - - for scenario in config.settings()["egon-data"]["--scenarios"]: - if "status" in scenario: - postfix = f"_{scenario[-4:]}" - - tasks += ( - wrapped_partial( - delete_heat_peak_loads_status_quo, - scenario=scenario, - postfix=postfix, - ), - wrapped_partial( - delete_hp_capacity_status_quo, - scenario=scenario, - postfix=postfix, - ), - wrapped_partial( - delete_mvgd_ts_status_quo, - scenario=scenario, - postfix=postfix, - ), - ) - - tasks += ( - {*dyn_parallel_tasks_status_quo(scenario)}, - ) + if any("status" in scenario for scenario in config.settings()["egon-data"]["--scenarios"]): + tasks = () + + for scenario in config.settings()["egon-data"]["--scenarios"]: + if "status" in scenario: + postfix = f"_{scenario[-4:]}" + + tasks += ( + wrapped_partial( + delete_heat_peak_loads_status_quo, + scenario=scenario, + postfix=postfix, + ), + wrapped_partial( + delete_hp_capacity_status_quo, + scenario=scenario, + postfix=postfix, + ), + wrapped_partial( + delete_mvgd_ts_status_quo, + scenario=scenario, + postfix=postfix, + ), + ) + tasks += ( + {*dyn_parallel_tasks_status_quo(scenario)}, + ) + else: + tasks = ( + PythonOperator( + task_id="HeatPumpsSQ_skipped", + python_callable=skip_task, + op_kwargs={"scn": "sq", "task": "HeatPumpsStatusQuo"}, + ), + ) super().__init__( name="HeatPumpsStatusQuo", @@ -433,8 +441,6 @@ def dyn_parallel_tasks_2035(): ) return tasks - tasks_HeatPumps2035 = set() - if "eGon2035" in scenarios: tasks_HeatPumps2035 = ( delete_heat_peak_loads_2035,