-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: secrets manager interface #75
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Go test coverage
Total coverage: 1.7% |
…ts-manager-interface
…ts-manager-interface
mfiedorowicz
approved these changes
Mar 24, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, one ask though
ltucker
reviewed
Mar 24, 2025
ltucker
approved these changes
Mar 24, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request introduces a new secrets management system to the
orb-agent
by integrating asecretsmgr
package and updating relevant parts of the codebase to support it. The most important changes include adding a new secrets manager, updating the configuration structures, and modifying theConfigManager
to handle secrets.Integration of Secrets Management:
agent/agent.go
: Addedsecretsmgr.Manager
to theorbAgent
struct and initialized it in theNew
function. ThesecretsManager
is now started in theStart
method. [1] [2] [3] [4]agent/config/types.go
: Introduced new configuration typesVaultManager
,SecretsSources
, andManagerSecrets
to support secrets management. UpdatedOrbAgent
struct to includeManagerSecrets
. [1] [2]Modifications to Config Manager:
agent/configmgr/manager.go
: Updated theNew
function to accept asecretsmgr.Manager
and pass it to thelocalConfigManager
andgitConfigManager
. [1] [2]agent/configmgr/git.go
andagent/configmgr/local.go
: Addedsecretsmgr.Manager
to the configuration managers and modified theapplyPolicies
method to useSolveSecrets
for processing secrets. [1] [2] [3] [4]New Secrets Manager Implementation:
agent/secretsmgr/manager.go
: Introduced thesecretsmgr
package with an interface for managing secrets and a factory method for creating instances based on configuration.agent/secretsmgr/vault.go
: ImplementedvaultManager
for managing secrets using HashiCorp Vault, including methods for starting the manager, registering update callbacks, and solving secrets.agent/secretsmgr/vault_auth.go
: Added various authentication methods for Vault, including token, AppRole, userpass, Kubernetes, and LDAP.Dependency Updates:
go.mod
: Added thegithub.com/hashicorp/vault/api
dependency to support Vault integration.