services

package
v0.2.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 6, 2024 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type GitHubApplication

type GitHubApplication string

GitHubApplication represents a GitHub application for secret management.

const (
	GitHubApplicationActions    GitHubApplication = "actions"
	GitHubApplicationCodespaces GitHubApplication = "codespaces"
	GitHubApplicationDependabot GitHubApplication = "dependabot"
)

type GitHubEnvPublicKeyGetter

type GitHubEnvPublicKeyGetter interface {
	GetGitHubEnvPublicKey(ctx context.Context, repoID int, env string) (*github.PublicKey, error)
}

GitHubEnvPublicKeyGetter gets a public key that should be used for secret encryption.

type GitHubEnvSecretCreator

type GitHubEnvSecretCreator interface {
	CreateGitHubEnvSecret(ctx context.Context, repoID int, env string, secret *github.EncryptedSecret) error
}

GitHubEnvSecretCreator creates or updates a single environment secret with an encrypted value.

type GitHubEnvSecretGetter

type GitHubEnvSecretGetter interface {
	GetGitHubEnvSecret(ctx context.Context, repoID int, env, name string) (*github.Secret, error)
}

GitHubEnvSecretGetter gets a single environment secret without revealing its encrypted value.

type GitHubOrgPublicKeyGetter

type GitHubOrgPublicKeyGetter interface {
	GetGitHubOrgPublicKey(ctx context.Context, org string) (*github.PublicKey, error)
}

GitHubOrgPublicKeyGetter gets a public key that should be used for secret encryption.

type GitHubOrgSecretCreator

type GitHubOrgSecretCreator interface {
	CreateGitHubOrgSecret(ctx context.Context, app GitHubApplication, org string, secret *github.EncryptedSecret) error
}

GitHubOrgSecretCreator creates or updates a single organization secret with an encrypted value.

type GitHubOrgSecretGetter

type GitHubOrgSecretGetter interface {
	GetGitHubOrgSecret(ctx context.Context, app GitHubApplication, org, name string) (*github.Secret, error)
}

GitHubOrgSecretGetter gets a single organization secret without revealing its encrypted value.

type GitHubRepoGetter

type GitHubRepoGetter interface {
	GetGitHubRepo(ctx context.Context, owner, repo string) (*github.Repository, error)
}

GitHubRepoGetter fetches the GitHub repository.

type GitHubRepoPublicKeyGetter

type GitHubRepoPublicKeyGetter interface {
	GetGitHubRepoPublicKey(ctx context.Context, owner, repo string) (*github.PublicKey, error)
}

GitHubRepoPublicKeyGetter gets a public key that should be used for secret encryption.

type GitHubRepoSecretCreator

type GitHubRepoSecretCreator interface {
	CreateGitHubRepoSecret(ctx context.Context, app GitHubApplication, owner, repo string, secret *github.EncryptedSecret) error
}

GitHubRepoSecretCreator creates or updates a repository secret with an encrypted value.

type GitHubRepoSecretGetter

type GitHubRepoSecretGetter interface {
	GetGitHubRepoSecret(ctx context.Context, app GitHubApplication, owner, repo, name string) (*github.Secret, error)
}

GitHubRepoSecretGetter gets a single repository secret without revealing its encrypted value.

type GitHubReposIDForOrgSecretLister

type GitHubReposIDForOrgSecretLister interface {
	ListGitHubReposIDForOrgSecret(ctx context.Context, app GitHubApplication, org, name string) ([]int64, error)
}

GitHubReposIDForOrgSecretLister lists all repositories that have access to a secret.

type GitHubUserGetter

type GitHubUserGetter interface {
	GetGitHubUser(ctx context.Context) (*github.User, error)
}

GitHubUserGetter fetches the authenticated GitHub user.

type Injector

type Injector interface {
	Inject(ctx context.Context, template string) ([]byte, error)
}

Injector inject the secrets into the template.

type OnePasswordItem

type OnePasswordItem struct {
	ID      string `json:"id"`
	Title   string `json:"title"`
	Version int    `json:"version"`
	Vault   struct {
		ID   string `json:"id"`
		Name string `json:"name"`
	} `json:"vault"`
	Category              string    `json:"category"`
	LastEditedBy          string    `json:"last_edited_by"`
	CreatedAt             time.Time `json:"created_at"`
	UpdatedAt             time.Time `json:"updated_at"`
	AdditionalInformation string    `json:"additional_information"`
}

type OnePasswordItemGetter

type OnePasswordItemGetter interface {
	GetOnePasswordItem(ctx context.Context, vault, item string) (*OnePasswordItem, error)
}

OnePasswordItemGetter gets the item from 1password.

type OnePasswordReader

type OnePasswordReader interface {
	ReadOnePassword(ctx context.Context, uri string) ([]byte, error)
}

OnePasswordReader reads the secret from 1password.

type OnePasswordUser

type OnePasswordUser struct {
	URL         string `json:"url"`
	Email       string `json:"email"`
	UserUUID    string `json:"user_uuid"`
	AccountUUID string `json:"account_uuid"`
	Shorthand   string `json:"shorthand"`
}

type SSMParameterGetter

type SSMParameterGetter interface {
	SSMGetParameter(ctx context.Context, region string, in *ssm.GetParameterInput) (*ssm.GetParameterOutput, error)
}

type SSMParameterPutter

type SSMParameterPutter interface {
	SSMPutParameter(ctx context.Context, region string, in *ssm.PutParameterInput) (*ssm.PutParameterOutput, error)
}

type STSCallerIdentityGetter

type STSCallerIdentityGetter interface {
	STSGetCallerIdentity(ctx context.Context) (*sts.GetCallerIdentityOutput, error)
}

type SecretsManagerSecretCreator

type SecretsManagerSecretCreator interface {
	SecretsManagerCreateSecret(ctx context.Context, region string, in *secretsmanager.CreateSecretInput) (*secretsmanager.CreateSecretOutput, error)
}

type SecretsManagerSecretGetter

type SecretsManagerSecretGetter interface {
	SecretsManagerGetSecretValue(ctx context.Context, region string, in *secretsmanager.GetSecretValueInput) (*secretsmanager.GetSecretValueOutput, error)
}

type SecretsManagerSecretUpdater added in v0.2.0

type SecretsManagerSecretUpdater interface {
	SecretsManagerUpdateSecret(ctx context.Context, region string, in *secretsmanager.UpdateSecretInput) (*secretsmanager.UpdateSecretOutput, error)
}

type WhoAmIer

type WhoAmIer interface {
	WhoAmI(ctx context.Context) (*OnePasswordUser, error)
}

WhoAmIer returns the information about a signed-in account.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL