Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RepoURLToSecretName ¶
RepoURLToSecretName hashes repo URL to a secret name using a formula. This is used when repositories are _imperatively_ created and need its credentials to be stored in a secret. NOTE: this formula should not be considered stable and may change in future releases. Do NOT rely on this formula as a means of secret lookup, only secret creation.
func StripCRLFCharacter ¶
StripCRLFCharacter strips the trailing CRLF characters
func URIToSecretName ¶ added in v2.1.0
URIToSecretName hashes an uri address to the secret name using a formula. Part of the uri address is incorporated for debugging purposes
Types ¶
type ArgoDB ¶
type ArgoDB interface { // ListClusters lists configured clusters ListClusters(ctx context.Context) (*appv1.ClusterList, error) // CreateCluster creates a cluster CreateCluster(ctx context.Context, c *appv1.Cluster) (*appv1.Cluster, error) // WatchClusters allow watching for cluster informer WatchClusters(ctx context.Context, handleAddEvent func(cluster *appv1.Cluster), handleModEvent func(oldCluster *appv1.Cluster, newCluster *appv1.Cluster), handleDeleteEvent func(clusterServer string)) error // GetCluster get returns a cluster by given server url GetCluster(ctx context.Context, server string) (*appv1.Cluster, error) // GetProjectClusters return project scoped clusters by given project name GetProjectClusters(ctx context.Context, project string) ([]*appv1.Cluster, error) // UpdateCluster updates a cluster UpdateCluster(ctx context.Context, c *appv1.Cluster) (*appv1.Cluster, error) // DeleteCluster deletes a cluster by name DeleteCluster(ctx context.Context, server string) error // ListRepositories lists repositories ListRepositories(ctx context.Context) ([]*appv1.Repository, error) // CreateRepository creates a repository CreateRepository(ctx context.Context, r *appv1.Repository) (*appv1.Repository, error) // GetRepository returns a repository by URL GetRepository(ctx context.Context, url string) (*appv1.Repository, error) // GetProjectRepositories returns project scoped repositories by given project name GetProjectRepositories(ctx context.Context, project string) ([]*appv1.Repository, error) // RepositoryExists returns whether a repository is configured for the given URL RepositoryExists(ctx context.Context, repoURL string) (bool, error) // UpdateRepository updates a repository UpdateRepository(ctx context.Context, r *appv1.Repository) (*appv1.Repository, error) // DeleteRepository deletes a repository from config DeleteRepository(ctx context.Context, name string) error // ListRepoCredentials list all repo credential sets URL patterns ListRepositoryCredentials(ctx context.Context) ([]string, error) // GetRepoCredentials gets repo credentials for given URL GetRepositoryCredentials(ctx context.Context, name string) (*appv1.RepoCreds, error) // CreateRepoCredentials creates a repository credential set CreateRepositoryCredentials(ctx context.Context, r *appv1.RepoCreds) (*appv1.RepoCreds, error) // UpdateRepoCredentials updates a repository credential set UpdateRepositoryCredentials(ctx context.Context, r *appv1.RepoCreds) (*appv1.RepoCreds, error) // DeleteRepoCredentials deletes a repository credential set from config DeleteRepositoryCredentials(ctx context.Context, name string) error // ListRepoCertificates lists all configured certificates ListRepoCertificates(ctx context.Context, selector *CertificateListSelector) (*appv1.RepositoryCertificateList, error) // CreateRepoCertificate creates a new certificate entry CreateRepoCertificate(ctx context.Context, certificate *appv1.RepositoryCertificateList, upsert bool) (*appv1.RepositoryCertificateList, error) // CreateRepoCertificate creates a new certificate entry RemoveRepoCertificates(ctx context.Context, selector *CertificateListSelector) (*appv1.RepositoryCertificateList, error) // GetAllHelmRepositoryCredentials gets all repo credentials GetAllHelmRepositoryCredentials(ctx context.Context) ([]*appv1.RepoCreds, error) // ListHelmRepositories lists repositories ListHelmRepositories(ctx context.Context) ([]*appv1.Repository, error) // ListConfiguredGPGPublicKeys returns all GPG public key IDs that are configured ListConfiguredGPGPublicKeys(ctx context.Context) (map[string]*appv1.GnuPGPublicKey, error) // AddGPGPublicKey adds one ore more GPG public keys to the configuration AddGPGPublicKey(ctx context.Context, keyData string) (map[string]*appv1.GnuPGPublicKey, []string, error) // DeleteGPGPublicKey removes a GPG public key from the configuration DeleteGPGPublicKey(ctx context.Context, keyID string) error }
func NewDB ¶
func NewDB(namespace string, settingsMgr *settings.SettingsManager, kubeclientset kubernetes.Interface) ArgoDB
NewDB returns a new instance of the argo database
type CertificateListSelector ¶
type CertificateListSelector struct { // Pattern to match the hostname with HostNamePattern string // Type of certificate to match CertType string // Subtype of certificate to match CertSubType string }
Helper struct for certificate selection
type ClusterEvent ¶
ClusterEvent contains information about cluster event
type SSHKnownHostsEntry ¶
type SSHKnownHostsEntry struct { // Hostname the key is for Host string // The type of the key SubType string // The data of the key, including the type Data string // The SHA256 fingerprint of the key Fingerprint string }
A struct representing an entry in the list of SSH known hosts.
type SecretMaperValidation ¶
SecretMaperValidation determine whether the secret should be transformed(i.e. trailing CRLF characters trimmed)
type TLSCertificate ¶
type TLSCertificate struct { // Subject of the certificate Subject string // Issuer of the certificate Issuer string // Certificate data Data string }
A representation of a TLS certificate