Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Credentials ¶
type Credentials struct { // Username identifies a principal, which combined with the value of the // Password field, can be used for access to some repository. Username string // Password, when combined with the principal identified by the Username // field, can be used for access to some repository. Password string // SSHPrivateKey is a private key that can be used for access to some remote // repository. This is primarily applicable for Git repositories. SSHPrivateKey string }
Credentials generically represents any type of repository credential.
type Database ¶
type Database interface { Get( ctx context.Context, namespace string, credType Type, repo string, ) (Credentials, bool, error) }
Database is an interface for a Credentials store.
func NewKubernetesDatabase ¶
func NewKubernetesDatabase( kargoClient client.Client, cfg KubernetesDatabaseConfig, ) Database
NewKubernetesDatabase initializes and returns an implementation of the Database interface that utilizes a Kubernetes controller runtime client to retrieve Credentials stored in Kubernetes Secrets.
type FakeDB ¶
type FakeDB struct { GetFn func( ctx context.Context, namespace string, credType Type, repo string, ) (Credentials, bool, error) }
FakeDB is a mock implementation of the Database interface that is used to facilitate unit testing.
type KubernetesDatabaseConfig ¶ added in v0.4.0
type KubernetesDatabaseConfig struct {
GlobalCredentialsNamespaces []string `envconfig:"GLOBAL_CREDENTIALS_NAMESPACES" default:""`
}
KubernetesDatabaseConfig represents configuration for a Kubernetes based implementation of the Database interface.
func KubernetesDatabaseConfigFromEnv ¶ added in v0.4.0
func KubernetesDatabaseConfigFromEnv() KubernetesDatabaseConfig
Click to show internal directories.
Click to hide internal directories.