* Feature: Create MaskManager logic to handle project -> scope update mask logic.
* Updating resource protos and services to use new mask manager setup.
Co-authored-by: Jeff Mitchell <jeffrey.mitchell@gmail.com>
* Add error handler that converts from rpc.Status errors to Watchtower API errors.
* Better testing for ErrorHandler.
* Rename testcase and remove empty default switch case.
* Change the error status back to int64.
* Converting everything to int32s.
jsonpb wraps int64s as a string which we dont like. We'll figure out how to use values larger than int64s when it comes up.
* Remove special casing for TraceId which isn't needed anymore.
* Removing wrappers from error details since we never need to know when they are set or unset from the end user.
* Using the helper error functions inside the project service.
* Correct usage of hclog, replace panic with Error log.
* Adding periods to all API returned errors, correct spelling, fix missed invalid argument error not using helper function.
* Change our logged errors to Error instead of Warn.
* Add TODO for defining and using our own defined API error codes.
* Add TODO to remove internal error messages.
* Setup buf to see and process protos correctly.
This commit adds a proposed directory structure for protos. Included is a rough draft of the Ec2Catalog protos.
* Add host and host_catalog service apis.
This also has for the first time the move away from holding individual ids for resources and instead using the full uri path as the api facing identifier. There are some issues with the swagger generation stripping out the format of the path matching so currently only PATCH uses the approach I would like to move to. In follow up commits I'll try to either get swagger to display the correct expected paths or I'll resolve if that is even needed by our clients.
* Move all protos and generated files to under the internal directory.
This also required updating the buf config to explicitly name the exluded linted proto files under oplog since previously /internal/ was listed as a root in buf. Future commit will move oplog proto files to be with the others.
* Moved oplog related protos to under the proto directory and regenerated.
* Update the oplog protos to be compliant with buf lint.
* Clean up comments in tools.
* Merged in recent changes to oplog protos.
* Add resource result messages to contain the read only fields and separate them from the writable fields.
* Merge the ec2 catalog resources in with the more generic host_catalog resource.
* Cleaning the generated swagger.
This included adding summaries for each proto rpc method, Making the resources be the full fqn, removing the default error, and a few other tweaks.
* Make project plural in the paths.
* Adding the ability to add and remove hosts from a host set.
* Add the ignore result limit for host set request.
* Make size and host lists read only.
* Add documentation about what host references are allowed to be added.
* Remove ignore result limit when listing items. These can be added in later.
* Add handlers and tests for unimplemented services.
* Add bootstrap target and update how tools are built (#13)
* Update tool installation method, add bootstrap target to makefile
* Changing org to orgs in all paths and org param to org_id.
* Adding tests for unimplemented service implementations.
Co-authored-by: Jeff Mitchell <jeffrey.mitchell@gmail.com>
* Setup buf to see and process protos correctly.
This commit adds a proposed directory structure for protos. Included is a rough draft of the Ec2Catalog protos.
* Setup buf to see and process protos correctly.
This commit adds a proposed directory structure for protos, but leaves the existing oplog related protos alone. Included is a rough draft of the Ec2Catalog protos.
* Update makefile and add script to generate the appropriate pb.go files.
* Add comment explaining google.golang.org/protobuf vs github.com/golang/protobuf
* Move all protos and generated files to under the internal directory.
This also required updating the buf config to explicitly name the excluded linted proto files under oplog since previously /internal/ was listed as a root in buf. Future commit will move oplog proto files to be with the others.
* Moved oplog related protos to under the proto directory and regenerated.
* Update the oplog protos to be compliant with buf lint.