Handler project (#44)

* Renamed fakeRepo to mockRepo

* Changing around TODOs to capture current plans with the code.

* Remove the repo interface and use a real DB for tests.

* Fixed a few tests.

* Adding checks for properly formatted identifiers.

* Updating code to account for recent merges.  Relaxing some restrictions on what an id can look like.

* Added small comment explaining why RegisterGrpcGatewayer interface exists.

* Move project service up a call level.

Long term I think it would make sense to define these services even higher up the call stack, potentially at the initialization of the controller server, near where the DB is initialized.

* Making these fields align with those in the resources under hosts/...

* Hard code the service initialization in the handler registration code.

* Regenerate project related code proto code.

* Removing type field for project.

* Adds basic project handling in CLI/SDK (#47)

*    Adds SDK for creating and reading projects
*    Reorganizes a bit
*    Adds CLI for creating and reading projects
*    Fixes some some generation bugs
*    Adds redirect support for default org ID

* Fix protobuf import references being moved.

* Update client test to look for "orgs" and "projects" instead of "org" and "project"

* Update expected segments test

* Fix setAddr handling when default organization is in use

* Set client in target after create or read

Co-authored-by: Jim Lambert <jimlambrt@Jims-MBP-3.home>
Co-authored-by: Jim <jlambert@hashicorp.com>
Co-authored-by: Michael Gaffney <mgaffney@users.noreply.github.com>
Co-authored-by: Jeff Mitchell <jeffrey.mitchell@gmail.com>
This commit is contained in:
authored and GitHub committed 2020-05-12 17:35:48 -07:00
1 parent 8d7f24268c
commit c0c6a9b0b8
36 files changed
+4104 -112

No files matched your search

+20 -4
View File
@@ -13,10 +13,16 @@ func (s HostCatalog) CreateHost(ctx context.Context, host *Host) (*Host, *api.Er
return nil, nil, fmt.Errorf("nil client in CreateHost request")
}
if s.Id == "" {
return nil, nil, fmt.Errorf("missing catalog ID in CreateHost request")
return nil, nil, fmt.Errorf("missing HostCatalog ID in CreateHost request")
} else {
// If it's explicitly set here, override anything that might be in the
// client
}
req, err := s.Client.NewRequest(ctx, "PUT", fmt.Sprintf("host-catalogs/%s/hosts", s.Id), host)
req, err := s.Client.NewRequest(ctx, "POST", fmt.Sprintf("host-catalogs/%s/hosts", s.Id), host)
if err != nil {
return nil, nil, fmt.Errorf("error creating CreateHost request: %w", err)
}
@@ -32,6 +38,8 @@ func (s HostCatalog) CreateHost(ctx context.Context, host *Host) (*Host, *api.Er
return nil, nil, fmt.Errorf("error decoding CreateHost repsonse: %w", err)
}
target.Client = s.Client
return target, apiErr, nil
}
@@ -40,10 +48,16 @@ func (s HostCatalog) CreateHostSet(ctx context.Context, hostset *HostSet) (*Host
return nil, nil, fmt.Errorf("nil client in CreateHostSet request")
}
if s.Id == "" {
return nil, nil, fmt.Errorf("missing catalog ID in CreateHostSet request")
return nil, nil, fmt.Errorf("missing HostCatalog ID in CreateHostSet request")
} else {
// If it's explicitly set here, override anything that might be in the
// client
}
req, err := s.Client.NewRequest(ctx, "PUT", fmt.Sprintf("host-catalogs/%s/host-sets", s.Id), hostset)
req, err := s.Client.NewRequest(ctx, "POST", fmt.Sprintf("host-catalogs/%s/host-sets", s.Id), hostset)
if err != nil {
return nil, nil, fmt.Errorf("error creating CreateHostSet request: %w", err)
}
@@ -59,5 +73,7 @@ func (s HostCatalog) CreateHostSet(ctx context.Context, hostset *HostSet) (*Host
return nil, nil, fmt.Errorf("error decoding CreateHostSet repsonse: %w", err)
}
target.Client = s.Client
return target, apiErr, nil
}