Commit Graph
19 Commits
Author SHA1 Message Date
Jeff Mitchell f8b456f3a7 Add TestController (#50)
This can be used in tests to get access to a controller that behaves
just like a dev controller but doesn't require the normal Command bits
(UI, etc).

This can be enhanced over time as needed; for now it's pretty simple but
it's good enough to be used for API tests. A simple project create/read
API test is added as well, which serves to show the programmatic model
(as well as test those functions at the API level).
2020-05-15 10:19:55 -04:00
c0c6a9b0b8 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>
2020-05-12 17:35:48 -07:00
Jeff Mitchell 7f2aa5ca8f Add httpfs DB migrations and generate the input (#35) 2020-05-11 12:42:10 -04:00
Jeff Mitchell e8b5384b7a Fix missed address change in test 2020-05-08 12:03:56 -04:00
Jeff Mitchell c6a9c970b0 Don't require project in generated client requests 2020-05-05 16:32:27 -04:00
Jeff Mitchell 828fee20a1 Rename generated files to make them obvious 2020-05-05 15:33:16 -04:00
Jeff Mitchell 050b914447 Fix detail template test 2020-05-05 14:28:20 -04:00
Jeff Mitchell 11f640a0f8 Fix compilation after Id changing 2020-05-05 14:13:08 -04:00
Jeff Mitchell f36f25a23b Add json_name fields to proto for complex names (#27)
This was generating fine before but it makes it explicit in the proto
and it avoids weirdness where the protobuf tag will say a name is
something like requestId where the json tag says it's request_id. This
way they line up.

One thing not honoring this properly is TraceId. I don't know why the
JSON tag being generated doesn't match even when explicitly set here.
For now I'm just manually fixing it.
2020-05-05 14:08:13 -04:00
Jeff Mitchell 1f0748a8c3 Don't make Id fields pointers as they are immutable 2020-05-05 14:02:46 -04:00
Jeff Mitchell 416688448c Project isn't required, so don't require it in the client 2020-05-05 13:32:54 -04:00
Jeff Mitchell 1f3c52f495 Name and addr updates (#26)
* Rename FriendlyName to Name

* Standardize on connection parameters for the server being addr

This syncs up WATCHTOWER_ADDR and -addr (formerly -address) and frees up
-address to be used in resources (which it is).

* Add description fields
2020-05-05 11:19:42 -04:00
Jeff Mitchell 17fffe7c23 Add Response type and decoding (#24)
This may not be the final interface for responses but it is fine to
start.

Fix some bugs, e.g. require an org and project to be set.
2020-05-04 23:02:18 -04:00
Jeff Mitchell e31e91a5ad Add create function template and fix some minor template bugs (#23) 2020-05-04 22:59:45 -04:00
Jeff Mitchell 19f74a8247 Minor template cleanup 2020-05-04 12:09:57 -04:00
Jeff Mitchell be1063d168 Clean up and reorganize API generation 2020-05-04 11:23:35 -04:00
Jeff Mitchell 9325a6422d Remove timestamps in generated files 2020-05-04 11:04:17 -04:00
Jeff Mitchell 2926cc1000 Add initial API generation bits (#20)
* Add initial API generation bits

* Revert accidental changes to oplog
2020-05-04 10:58:20 -04:00
Jeff Mitchell 7f03246c6f Add basic API client (#19) 2020-05-04 10:58:03 -04:00