diff options
author | Larry Sachs <larry.j.sachs@intel.com> | 2020-07-20 22:46:49 -0700 |
---|---|---|
committer | Larry Sachs <larry.j.sachs@intel.com> | 2020-07-24 14:05:40 -0700 |
commit | b102d4ab1a47809f514213eb1f997d4f60893c9f (patch) | |
tree | a9e5d8e345d5e06bbff305f0d557f6452c040ff8 /src/orchestrator/pkg/module/project.go | |
parent | 783ed87fb39a8aa25e303e97aff2170dca059068 (diff) |
Adds PUT api to v2/projects
Add functionality to support the PUT api for v2/projects/{project-name}
Also add unit tests for the PUT api
Issue-ID: MULTICLOUD-1130
Change-Id: Ia271569c5f0dec3152952e64171fd5a182aaa333
Signed-off-by: Larry Sachs <larry.j.sachs@intel.com>
Diffstat (limited to 'src/orchestrator/pkg/module/project.go')
-rw-r--r-- | src/orchestrator/pkg/module/project.go | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/orchestrator/pkg/module/project.go b/src/orchestrator/pkg/module/project.go index 02f6d827..e86266b9 100644 --- a/src/orchestrator/pkg/module/project.go +++ b/src/orchestrator/pkg/module/project.go @@ -55,7 +55,7 @@ func (pk ProjectKey) String() string { // ProjectManager is an interface exposes the Project functionality type ProjectManager interface { - CreateProject(pr Project) (Project, error) + CreateProject(pr Project, exists bool) (Project, error) GetProject(name string) (Project, error) DeleteProject(name string) error GetAllProjects() ([]Project, error) @@ -78,7 +78,7 @@ func NewProjectClient() *ProjectClient { } // CreateProject a new collection based on the project -func (v *ProjectClient) CreateProject(p Project) (Project, error) { +func (v *ProjectClient) CreateProject(p Project, exists bool) (Project, error) { //Construct the composite key to select the entry key := ProjectKey{ @@ -87,7 +87,7 @@ func (v *ProjectClient) CreateProject(p Project) (Project, error) { //Check if this Project already exists _, err := v.GetProject(p.MetaData.Name) - if err == nil { + if err == nil && !exists { return Project{}, pkgerrors.New("Project already exists") } |