diff --git a/pillar_tool/routers/state.py b/pillar_tool/routers/state.py index b1067d7..ae036aa 100644 --- a/pillar_tool/routers/state.py +++ b/pillar_tool/routers/state.py @@ -128,7 +128,7 @@ def state_create(req: Request, name: str, patch_params: StateParams): stmt_set_env = insert(StateAssignment).values(state_id=new_id, environment_id=bindparam('env_id')) stmt_get_env_id = select(Environment).where(Environment.name == bindparam('env_name')) - for env in patch_params.addenv: + for env in patch_params.addenv or []: env_id_res = db.execute(stmt_get_env_id, {'env_name': env}).fetchall() if len(env_id_res) < 1: print("[DEBUG] state_create: ERROR - Environment '{}' does not exist. Cannot assign non-existent environment to new state.".format(env)) @@ -250,7 +250,7 @@ def state_patch(req: Request, name: str, patch_params: StateParams): # add any requested environments to the state in question stmt_set_env = insert(StateAssignment).values(state_id=state.id, environment_id=bindparam('env_id')) - for env in patch_params.addenv: + for env in patch_params.addenv or []: env_id_res = db.execute(stmt_get_env_id, {'env_name': env}).fetchall() if len(env_id_res) < 1: print("[DEBUG] state_patch: ERROR - Environment '{}' does not exist. Cannot add non-existent environment to state.".format(env)) @@ -261,7 +261,7 @@ def state_patch(req: Request, name: str, patch_params: StateParams): print("[DEBUG] state_patch: added state '{}' to environment '{}' (id={})".format(name, env, env_id)) stmt_del_env = delete(StateAssignment).where(and_(StateAssignment.state_id == state.id, StateAssignment.environment_id == bindparam('env_id'))) - for env in patch_params.delenv: + for env in patch_params.delenv or []: env_id_res = db.execute(stmt_get_env_id, {'env_name': env}).fetchall() if len(env_id_res) < 1: print("[DEBUG] state_patch: ERROR - Environment '{}' does not exist. Cannot remove non-existent environment from state.".format(env))