From 79cce050a418824320928f1600faacc02c27fad7 Mon Sep 17 00:00:00 2001 From: David Whittaker Date: Tue, 14 Jan 2025 14:48:33 -0800 Subject: [PATCH 1/2] fix(org): disallow creation of org with same id --- src/dispatch/organization/views.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/dispatch/organization/views.py b/src/dispatch/organization/views.py index 23aa75b05daa..d6e5c6115756 100644 --- a/src/dispatch/organization/views.py +++ b/src/dispatch/organization/views.py @@ -51,6 +51,11 @@ def create_organization( status_code=status.HTTP_409_CONFLICT, detail=[{"msg": "An organization with this name already exists."}], ) + if organization_in.id and get(db_session=db_session, organization_id=organization_in.id): + raise HTTPException( + status_code=status.HTTP_409_CONFLICT, + detail=[{"msg": "An organization with this id already exists."}], + ) # we create the organization organization = create(db_session=db_session, organization_in=organization_in) From 61282a58d48be1a95de079aebd5a34d0b7b73382 Mon Sep 17 00:00:00 2001 From: David Whittaker Date: Tue, 14 Jan 2025 15:33:13 -0800 Subject: [PATCH 2/2] also disallow project creation with existing id --- src/dispatch/project/views.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/dispatch/project/views.py b/src/dispatch/project/views.py index f0908135964a..b903ee8ab9a1 100644 --- a/src/dispatch/project/views.py +++ b/src/dispatch/project/views.py @@ -51,6 +51,11 @@ def create_project( [ErrorWrapper(ExistsError(msg="A project with this name already exists."), loc="name")], model=ProjectCreate, ) + if project_in.id and get(db_session=db_session, project_id=project_in.id): + raise ValidationError( + [ErrorWrapper(ExistsError(msg="A project with this id already exists."), loc="id")], + model=ProjectCreate, + ) project = create(db_session=db_session, project_in=project_in) background_tasks.add_task(