This PR changes delete behavior:
* On success, a 204 is returned rather than a 200 with an empty JSON object
* The CLI now passes through the 404 error if encountered instead of swallowing it
It also updates formatting for JSON to use the response body, which means that the item (or items) in the JSON format are actually the format across the wire, instead of being reinterpreted by unmarshaling into the Go SDK and then remarshaling.
This is a wire breaking change for json errors since we have removed and renamed a few fields, and changed part of the structure of the returned json error.
* Remove redundant fields in Status, details.error_id, details.TraceId and details.request_id from API errors.
* Added wrapped errors and "ops" field to indicate the internal operation of the errors returned by the API.
* Added error cli error reporting of Op and wrapped errors.
* 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>