Commit Graph
1024 Commits
Author SHA1 Message Date
Irena Rindos 5601f2bc5f feat(config) Add env and file support to Plugins execution dir 2021-12-08 10:48:24 -05:00
Irena Rindos 1f43ec174f Merge branch 'main' into irenarindos-env-file-controllerconfig 2021-12-08 04:58:46 -08:00
Hugo faabfc0002 Merge pull request #1758 from hashicorp/hugoamvieira-env-file-workertags
feat(config): Add env and file support to Worker Tags
2021-12-08 10:40:05 +00:00
Chris Marchesi bf18555d5e internal/host/plugin: remove custom queries for secrets (#1676)
* internal/host/plugin: remove custom queries for secrets

This removes the custom queries for host catalog secrets, now that #1658
has been merged.

It also does a lot of cleanup surrounding the related oplog entries,
using db.WithOplog natively.

* Simplify conflict actions by replacing SetColumnValues with SetColumns

* Remove unused oplog method
2021-12-07 12:38:34 -08:00
Irena Rindos 161916f6d3 feat(config): Add env and file support to Controller description 2021-12-07 15:08:21 -05:00
Thor 8c842df8a8 Remove public_id and session id from Connection api (#1767)
* removed public_id and session_id from Connection msg
2021-12-07 13:27:54 -06:00
Hugo Vieira 1576af70cc feat(config): Add env and file support to Worker Tags
This feature allows the user to set the `tags` field to a string
that points to either an environment variable or file.
We then dynamically pull out the value and parse it into the config.

This can also be done at the keys level, where you set your keys
directly in Boundary's config file, but point the values to env/file.
2021-12-07 19:21:04 +00:00
Louis Ruch b692e0e54c api(session): Add connection to api input (#1763) 2021-12-07 09:33:05 -08:00
Timothy Messier 0cfd8279b0 fix(controller/targets): Fix creation of credential libraries
The arg order was incorrect for ingress/egress credentials.

Ref: 2cc58ff901
Blame: 36f1ae75f7
2021-12-03 10:19:29 -05:00
Timothy Messier 533b434d1a refact(controller/targets): Move tcp functionality into subpackage
This follows a similar pattern as the target domain package, providing a
subpackage for the tcp target functionality, allowing this to be
pluggable.
2021-12-03 10:19:29 -05:00
Timothy Messier c9b99306e1 refact(target): Add NewFunc to registry
This adds a new requirement onto subtypes to register a NewFunc.
Previously the subtypes where implementing this function anyway, but the
target package was not including them in the registry. This resulted in
packages that use the target package needing to import the subtypes
directly, which we want to avoid.

This refactor will require the subtypes to register their NewFunc which
can then be used by `target.New` so packages that need to create targets
can do so by only using the target package.

This also updates the tcp subpackage to register a NewFunc.
2021-12-03 10:19:29 -05:00
Timothy Messier 1ae388438f feat(subtypes): Add function to provide all known prefixes 2021-12-03 10:19:29 -05:00
Thor 9f7c650101 api: Returns connections as part of sessions (#1714)
* session.proto: added connections to Session message

* make proto

* handler: convert connections on toProto

* updated unit test to check connections
2021-12-01 14:02:04 -06:00
Michael Gaffney 72d4d6d205 fix(sql): Remove warning from create_time trigger (#1751)
Raising a warning in the default trigger used for setting the value in
create_time columns creates unnecessary noise in the PostgreSQL log
files.

Closes #1744
2021-12-01 11:05:19 -05:00
Jim 983f7b019c refactor (db): Remove unused gorm formatter (#1738) 2021-11-30 18:20:44 -05:00
Chris MarchesiandTodd 84febd9983 internal/host/plugin: ensure UpdateCatalog triggers updates for sets (#1736)
* internal/host/plugin: ensure UpdateCatalog triggers updates for sets

This ensures that attribute updates to a host catalog triggers an update
to any of its downstream host sets. This ensures that updates to
elements that affect a host set, such as the region a host catalog is
configured for, take effect immediately instead of requiring a wait of
long as 10m after an update.

* Add WithNextRunIn to test sync job

This is to ensure it doesn't run right away when added. This ensures
that we can accurately test *when* the job is set to run immediately.

* Update internal/host/plugin/repository_host_catalog.go

Co-authored-by: Todd <T.Alan.Knight@gmail.com>

* Change TestRepository_UpdateCatalog_SyncSets to check next run time, not wait for run

* Remove explicit version increment and instead rely on implicit increment

* Fix lanuage for rows updated check when flagging host sets for sync

* remove errant non-zero check when looping over the thing we're checking

* remove scheduler start line from TestRepository_UpdateCatalog_SyncSets

Co-authored-by: Todd <T.Alan.Knight@gmail.com>
2021-11-30 14:37:06 -08:00
Hugo Vieira f1063a62a0 feature(config): add sockaddr template support 2021-11-30 14:07:12 +00:00
Hugo Vieira 21a771b581 test(servers base): add tests ahead of functionality change
Adds tests to `SetupControllerPublicClusterAddress` and
`SetupWorkerPublicAddress` ahead of changes in these functions to
ensure functionality is preserved.
2021-11-29 18:19:10 +00:00
Jeff Mitchell 5417cc5cb0 Fix setting nil attributes on host sets (#1746)
This is the analogue of #1743 but for host sets
2021-11-28 15:20:46 -05:00
Jeff Mitchell 269fb94885 Add test controller option to not use a templated database 2021-11-26 20:22:50 -08:00
Jeff Mitchell 1c39691023 Fix setting host catalog attributes to nil (#1743)
Internally attributes are not allowed to be the null value. However, as
currently implemented, this then breaks our normal model of sending an
explicit `null` in the JSON to reset/clear a field. This is a problem
because the CLI doesn't have a way to say "set this but to empty"
without a lot of hoops, and causes some issues for API users and TF as
well.

This changes PatchBytes and PatchStruct to return an empty value (or
marshaled empty value in the case of PatchBytes) if the source is null
or empty. In the host catalog update function we then always set this
value if it's in the db mask (removing the nil check). Together this
means a null value ends up coming out as an empty value (and thus valid
for the DB) from PatchStruct/PatchBytes, and our API translation
function already returns nothing for attributes if the length of the
fields are zero.
2021-11-26 16:58:19 -05:00
Jeff Mitchell b2efce961d Fix comment on sync_interval_seconds being invalid (#1745) 2021-11-26 16:56:34 -05:00
Jeff Mitchell dc2148496b Actually enable loopback plugin in dev (#1742) 2021-11-24 20:58:41 -05:00
Louis Ruch 9bec68f32c refact(servers): Cleanup redundant if else (#1741) 2021-11-24 11:56:04 -08:00
Chris Marchesi 9e976cb4ae internal/host/plugin: Fix TestUpdateSet (#1735)
Now asserts on error on the last lookup check and removes the plugin
lookup since we're not asserting on that.
2021-11-22 13:42:19 -08:00
Jeff Mitchell 95568ef07f Fix tests using multiple controllers (#1734)
The previous PR only initialized plugins if they were required, which
meant that there may not actually be a plugin manager running because a
second node would not actually create the dev database, which is where
the plugin was being added. The assumption that a plugin manager is
running is still a fine one at the moment, but we just need to make sure
it's running in _all_ cases.
2021-11-18 16:01:15 -05:00
Jeff Mitchell ad8ce50f69 Fix Windows (#1733)
The embed package always uses Unix-style forward slashes. filepath.Join
utilization looking for files would cause the slashes to be the wrong
direction on Windows and result in the files not being found.
2021-11-18 15:01:01 -05:00
Jeff Mitchell 5559cf54d3 Don't always assume plugins should be activated (#1732) 2021-11-18 11:53:45 -05:00
Jeff Mitchell 3b83184700 Add missing read only check on secrets hmac field in handler (#1729) 2021-11-18 09:32:32 -05:00
Jeff Mitchell 9213e4b821 Handle same-named options across subtypes (#1728)
This updates the API generation code to allow the same option names to
be used in subtype-scoped options. This means if we have attribute
structs with the same fields, they won't overwrite each other, but will
instead create attribute-specific options.
2021-11-17 20:08:18 -05:00
Todd 18de3653f5 Set sync job still syncs when plugin reports no hosts in sets (#1726)
* Allow the set sync job to sync when no hosts are returned by the sync job.
2021-11-17 13:32:23 -07:00
Todd 63bf60654e Add plugin info on the CLI when reading a host. (#1725) 2021-11-17 10:16:12 -07:00
Michael Gaffney 55c6c5872f feat(sqltest): Make container port configurable 2021-11-17 08:04:56 -05:00
Todd 056e72491d Attempt to fix the ci error. (#1723) 2021-11-17 08:03:42 -05:00
Louis Ruch 0cf9573f24 chore: make fmt 2021-11-16 17:27:16 -08:00
Louis Ruch c33efbf223 chore: make fmt (#1721) 2021-11-16 16:38:30 -08:00
Todd 1417e17909 Fix nil pointer error when listing by non existing host catalog. (#1720)
* Fix nil pointer error when listing hosts from nonexisting host catalog.
2021-11-16 17:36:09 -07:00
Jim 5232be905b fix (auth/oidc): Revert to working version of oidc acct upsert (#1719) 2021-11-16 19:32:50 -05:00
Todd b1c53951d5 Use the correct collection actions response when updating host catalogs. (#1718) 2021-11-16 16:55:36 -07:00
Jeff MitchellandJim 866bfceefc Add secrets_hmac to host catalog output (#1712)
Co-authored-by: Jim <jlambert@hashicorp.com>
2021-11-16 18:54:38 -05:00
Dharini Jeeva c6e7abc9e0 update ui version (#1717) 2021-11-16 17:57:49 -05:00
Jim ebea283421 fix (kms): Add kms.ReconcileKeys(...) to fix missing audit DEK scenario (#1711)
This fix addresses the situation where an existing boundary database
doesn't have the audit DEKs in the global scope.
2021-11-16 07:46:23 -05:00
Thor 7fa2cd2526 rename migration from 01-09 after bad merge (#1709)
* rename migration from 01-09 after bad merge
2021-11-15 16:42:01 -06:00
Thor ad31b6d6c3 repo: Return connection informat in Session response object (#1690)
Add connections to the Session object

* db: creat new session_list view

* repo: session use new session_list view
2021-11-15 15:26:08 -06:00
Jeff Mitchell 8cd8453113 Update dev loopback host plugin flag name 2021-11-15 14:45:48 -05:00
Jeff Mitchell 8110e0eab3 Increment version of host during updates (#1707)
Currently host does not use a version, which means it's not protected
against race conditions of either itself or its value objects. This adds
and plumbs through version to ensure that if a host or its value objects
change that they are not going to be affected by a race condition.
2021-11-15 12:22:39 -05:00
Jim 1b6c9a25c8 Add more opts when using Create + WithOnConflict (#1706) 2021-11-14 09:52:18 -05:00
Jeff Mitchell b3fd23863f Add external ID to host output (#1705)
This also fixes a bug if no hosts were returned where the job would run
over and over in a loop, and some other cleanup.
2021-11-13 17:18:20 -05:00
Todd 46a1edcb3b Add DNS Names and IP Addresses to the CLI output. (#1701) 2021-11-12 18:51:28 -05:00
Todd 78dc6cf370 OnConflict constraints for adding host ip and dns names in upsertHosts (#1700)
* Ignore constraint violations when adding ip addresses and dns addresses that already exist.
2021-11-12 16:17:43 -07:00