 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- func CheckEnv()
- type AwsAccountDynamoDB
- type AwsAccountDynamoDBProvider
- func (a *AwsAccountDynamoDBProvider) CountAll() (int, error)
- func (a *AwsAccountDynamoDBProvider) CountReservation(reservation string) (int, error)
- func (a *AwsAccountDynamoDBProvider) CountReservationAvailable(reservation string) (int, error)
- func (a *AwsAccountDynamoDBProvider) DecryptSecret(encrypted string) (string, error)
- func (a *AwsAccountDynamoDBProvider) Delete(name string) error
- func (a *AwsAccountDynamoDBProvider) FetchAll() ([]models.AwsAccount, error)
- func (a *AwsAccountDynamoDBProvider) FetchAllActiveByServiceUuid(serviceUuid string) ([]models.AwsAccount, error)
- func (a *AwsAccountDynamoDBProvider) FetchAllActiveByServiceUuidWithCreds(serviceUuid string) ([]models.AwsAccountWithCreds, error)
- func (a *AwsAccountDynamoDBProvider) FetchAllAvailable() ([]models.AwsAccount, error)
- func (a *AwsAccountDynamoDBProvider) FetchAllByReservation(reservation string) ([]models.AwsAccount, error)
- func (a *AwsAccountDynamoDBProvider) FetchAllByServiceUuid(serviceUuid string) ([]models.AwsAccount, error)
- func (a *AwsAccountDynamoDBProvider) FetchAllByServiceUuidWithCreds(serviceUuid string) ([]models.AwsAccountWithCreds, error)
- func (a *AwsAccountDynamoDBProvider) FetchAllSorted(by string) ([]models.AwsAccount, error)
- func (a *AwsAccountDynamoDBProvider) FetchAllToCleanup() ([]models.AwsAccount, error)
- func (a *AwsAccountDynamoDBProvider) FetchByName(name string) (models.AwsAccount, error)
- func (a *AwsAccountDynamoDBProvider) GetCandidates(reservation string, count int) ([]models.AwsAccount, error)
- func (a *AwsAccountDynamoDBProvider) MarkForCleanup(name string) error
- func (a *AwsAccountDynamoDBProvider) MarkForCleanupByServiceUuid(serviceUuid string) error
- func (a *AwsAccountDynamoDBProvider) RemoveReservation(name string) error
- func (a *AwsAccountDynamoDBProvider) RenameReservation(oldReservation string, newReservation string) error
- func (a *AwsAccountDynamoDBProvider) Request(service_uuid string, reservation string, count int, ...) ([]models.AwsAccountWithCreds, error)
- func (a *AwsAccountDynamoDBProvider) Reserve(reservation string, count int) ([]models.AwsAccount, error)
- func (a *AwsAccountDynamoDBProvider) ScaleDownReservation(reservation string, count int) error
 
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type AwsAccountDynamoDB ¶
type AwsAccountDynamoDB struct {
	Name string `json:"name"`
	// NameInt: Internal plumbing to easily sort Sandboxes
	NameInt            int
	Available          bool    `json:"available"`
	Reservation        string  `json:"reservation,omitempty"`
	Guid               string  `json:"guid"`
	ServiceUUID        string  `json:"service_uuid"`
	Envtype            string  `json:"envtype"`
	AccountID          string  `json:"account_id"`
	Owner              string  `json:"owner"`
	OwnerEmail         string  `json:"owner_email"`
	Zone               string  `json:"zone"`
	HostedZoneID       string  `json:"hosted_zone_id"`
	UpdateTime         float64 `json:"aws:rep:updatetime"`
	Comment            string  `json:"comment"`
	AwsAccessKeyID     string  `json:"aws_access_key_id"`
	AwsSecretAccessKey string  `json:"aws_secret_access_key"`
	// Conan
	ToCleanup         bool              `json:"to_cleanup"`
	ConanStatus       string            `json:"conan_status"`
	ConanTimestamp    string            `json:"conan_timestamp"`
	ConanHostname     string            `json:"conan_hostname"`
	ConanCleanupCount int               `json:"conan_cleanup_count"`
	Annotations       map[string]string `json:"annotations,omitempty"`
}
    Internal Type to represent the dynamodb table
func GetAccount ¶
func GetAccount(svc *dynamodb.DynamoDB, name string) (AwsAccountDynamoDB, error)
func GetAccounts ¶
func GetAccounts(svc *dynamodb.DynamoDB, filter expression.ConditionBuilder, batchSize int) ([]AwsAccountDynamoDB, error)
type AwsAccountDynamoDBProvider ¶
func NewAwsAccountDynamoDBProvider ¶
func NewAwsAccountDynamoDBProvider() *AwsAccountDynamoDBProvider
func NewAwsAccountDynamoDBProviderWithSecret ¶
func NewAwsAccountDynamoDBProviderWithSecret(vaultSecret string) *AwsAccountDynamoDBProvider
func (*AwsAccountDynamoDBProvider) CountAll ¶ added in v1.1.4
func (a *AwsAccountDynamoDBProvider) CountAll() (int, error)
func (*AwsAccountDynamoDBProvider) CountReservation ¶ added in v1.1.4
func (a *AwsAccountDynamoDBProvider) CountReservation(reservation string) (int, error)
func (*AwsAccountDynamoDBProvider) CountReservationAvailable ¶ added in v1.1.4
func (a *AwsAccountDynamoDBProvider) CountReservationAvailable(reservation string) (int, error)
func (*AwsAccountDynamoDBProvider) DecryptSecret ¶
func (a *AwsAccountDynamoDBProvider) DecryptSecret(encrypted string) (string, error)
func (*AwsAccountDynamoDBProvider) Delete ¶ added in v0.3.16
func (a *AwsAccountDynamoDBProvider) Delete(name string) error
Delete deletes an account from dynamodb
func (*AwsAccountDynamoDBProvider) FetchAll ¶
func (a *AwsAccountDynamoDBProvider) FetchAll() ([]models.AwsAccount, error)
FetchAll returns the list of all accounts from dynamodb
func (*AwsAccountDynamoDBProvider) FetchAllActiveByServiceUuid ¶ added in v0.3.5
func (a *AwsAccountDynamoDBProvider) FetchAllActiveByServiceUuid(serviceUuid string) ([]models.AwsAccount, error)
FetchAllActiveByServiceUuid returns the list of accounts from dynamodb for a specific service uuid that are not to cleanup
func (*AwsAccountDynamoDBProvider) FetchAllActiveByServiceUuidWithCreds ¶ added in v0.3.5
func (a *AwsAccountDynamoDBProvider) FetchAllActiveByServiceUuidWithCreds(serviceUuid string) ([]models.AwsAccountWithCreds, error)
FetchAllActiveByServiceUuidWithCreds returns the list of accounts from dynamodb for a specific service uuid
func (*AwsAccountDynamoDBProvider) FetchAllAvailable ¶ added in v0.3.5
func (a *AwsAccountDynamoDBProvider) FetchAllAvailable() ([]models.AwsAccount, error)
FetchAllAvailable returns the list of available accounts from dynamodb
func (*AwsAccountDynamoDBProvider) FetchAllByReservation ¶ added in v0.3.5
func (a *AwsAccountDynamoDBProvider) FetchAllByReservation(reservation string) ([]models.AwsAccount, error)
GetAccountsByReservation returns the list of accounts from dynamodb for a specific reservation
func (*AwsAccountDynamoDBProvider) FetchAllByServiceUuid ¶
func (a *AwsAccountDynamoDBProvider) FetchAllByServiceUuid(serviceUuid string) ([]models.AwsAccount, error)
FetchAllByServiceUuid returns the list of accounts from dynamodb for a specific service uuid
func (*AwsAccountDynamoDBProvider) FetchAllByServiceUuidWithCreds ¶ added in v0.3.1
func (a *AwsAccountDynamoDBProvider) FetchAllByServiceUuidWithCreds(serviceUuid string) ([]models.AwsAccountWithCreds, error)
FetchAllByServiceUuidWithCreds returns the list of accounts from dynamodb for a specific service uuid
func (*AwsAccountDynamoDBProvider) FetchAllSorted ¶
func (a *AwsAccountDynamoDBProvider) FetchAllSorted(by string) ([]models.AwsAccount, error)
FetchAllSorted
func (*AwsAccountDynamoDBProvider) FetchAllToCleanup ¶
func (a *AwsAccountDynamoDBProvider) FetchAllToCleanup() ([]models.AwsAccount, error)
FetchAllToCleanup returns the list of accounts from dynamodb
func (*AwsAccountDynamoDBProvider) FetchByName ¶
func (a *AwsAccountDynamoDBProvider) FetchByName(name string) (models.AwsAccount, error)
func (*AwsAccountDynamoDBProvider) GetCandidates ¶ added in v1.1.6
func (a *AwsAccountDynamoDBProvider) GetCandidates(reservation string, count int) ([]models.AwsAccount, error)
func (*AwsAccountDynamoDBProvider) MarkForCleanup ¶
func (a *AwsAccountDynamoDBProvider) MarkForCleanup(name string) error
func (*AwsAccountDynamoDBProvider) MarkForCleanupByServiceUuid ¶
func (a *AwsAccountDynamoDBProvider) MarkForCleanupByServiceUuid(serviceUuid string) error
func (*AwsAccountDynamoDBProvider) RemoveReservation ¶ added in v0.3.5
func (a *AwsAccountDynamoDBProvider) RemoveReservation(name string) error
RemoveReservation remove an account from a reservation
func (*AwsAccountDynamoDBProvider) RenameReservation ¶ added in v1.1.1
func (a *AwsAccountDynamoDBProvider) RenameReservation(oldReservation string, newReservation string) error
RenameReservation rename a reservation It renames all the accounts from the old reservation to the new reservation
func (*AwsAccountDynamoDBProvider) Request ¶
func (a *AwsAccountDynamoDBProvider) Request(service_uuid string, reservation string, count int, annotations models.Annotations) ([]models.AwsAccountWithCreds, error)
Request reserve accounts for a service
func (*AwsAccountDynamoDBProvider) Reserve ¶ added in v0.3.5
func (a *AwsAccountDynamoDBProvider) Reserve(reservation string, count int) ([]models.AwsAccount, error)
Reserve reserve accounts for a reservation It takes the number of account to reserve. The function iterates over available accounts and update the 'reservation' column
func (*AwsAccountDynamoDBProvider) ScaleDownReservation ¶ added in v0.3.5
func (a *AwsAccountDynamoDBProvider) ScaleDownReservation(reservation string, count int) error
ScaleDownReservation scale down a reservation It removes some of the accounts from the reservation