secrets

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Feb 14, 2022 License: AGPL-3.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateState

func CreateState(client *kubernetes.Clientset) error

CreateState creates an empty state of the credentials

func GenerateRandomString

func GenerateRandomString(n int) (string, error)

func UpdateState

func UpdateState(client *kubernetes.Clientset, state *State) error

UpdateState updates the state of the credentials

Types

type CredsSecrets

type CredsSecrets struct {
	creds.Creds

	State *State
	// contains filtered or unexported fields
}

CredsSecrets implements CredsIf using Kubernetes secrets

func NewCredsSecrets

func NewCredsSecrets() *CredsSecrets

NewCredsSecrets creates a new CredsSecrets

func (*CredsSecrets) AllocateNatsAccount

func (c *CredsSecrets) AllocateNatsAccount(applicationName string) (string, error)

AllocateNatsAccount allocates a new nats account if possible

func (*CredsSecrets) DeleteAccount

func (c *CredsSecrets) DeleteAccount(accountName string) error

DeleteAccount deletes the account from the credentials.

func (*CredsSecrets) DesiredState

func (c *CredsSecrets) DesiredState(accountName string, usernames []string) (*api.DesiredStateResponse, error)

DesiredState constructs the desired state of credentials for a given application name

type NatsAccountMapping

type NatsAccountMapping struct {
	Account         string `json:"account"`
	ApplicationName string `json:"application"`
}

State stores the current state of the credentials (all used accounts)

type State

type State struct {
	// UsedAccounts map the used ngs nats account to the account name specified by the user
	UsedAccounts []NatsAccountMapping `json:"usedaccounts"`
	// UserMappings map the user specified account name to the credentials
	UserMappings []UserMapping `json:"usermapping"`
}

State stores the current state of the anck-credentials

func ReadState

func ReadState(client *kubernetes.Clientset) (*State, error)

ReadState reads the state of the credentials and returns struct State

type UserMapping

type UserMapping struct {
	ApplicationName string             `json:"application"`
	Credentials     []*api.Credentials `json:"credentials"`
}

State stores information about the current state of the credentials

Jump to

Keyboard shortcuts

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