service

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Dec 16, 2019 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const ArtifactsFileName = "terraform_artifacts.zip"
View Source
const AssetsFileName = "build_artifacts.zip"
View Source
const LeasesPath = "/leases"

Variables

This section is empty.

Functions

This section is empty.

Types

type Accounter

type Accounter interface {
	AddAccount(accountID, adminRoleARN string)
	RemoveAccount(accountID string)
	GetAccount(accountID string)
	ListAccounts()
}

type AccountsService

type AccountsService struct {
	Config      *configs.Root
	Observation *observ.ObservationContainer
	Util        *utl.UtilContainer
}

func (*AccountsService) AddAccount

func (s *AccountsService) AddAccount(accountID, adminRoleARN string)

func (*AccountsService) GetAccount

func (s *AccountsService) GetAccount(accountID string)

func (*AccountsService) ListAccounts

func (s *AccountsService) ListAccounts()

func (*AccountsService) RemoveAccount

func (s *AccountsService) RemoveAccount(accountID string)

type AuthService

type AuthService struct {
	Config      *configs.Root
	Observation *observ.ObservationContainer
	Util        *utl.UtilContainer
}

func (*AuthService) Authenticate

func (s *AuthService) Authenticate() error

type Authenticater

type Authenticater interface {
	Authenticate() error
}

type DeployOverrides

type DeployOverrides struct {
	AWSRegion                         string
	GlobalTags                        []string
	Namespace                         string
	BudgetNotificationFromEmail       string
	BudgetNotificationBCCEmails       []string
	BudgetNotificationTemplateHTML    string
	BudgetNotificationTemplateText    string
	BudgetNotificationTemplateSubject string
}

type DeployService

type DeployService struct {
	Config      *configs.Root
	Observation *observ.ObservationContainer
	Util        *utl.UtilContainer
	LocalRepo   string
}

func (*DeployService) Deploy

func (s *DeployService) Deploy(deployLocal string, overrides *DeployOverrides)

type Deployer

type Deployer interface {
	Deploy(deployLocal string, overrides *DeployOverrides)
}

type InitService

type InitService struct {
	Config      *configs.Root
	Observation *observ.ObservationContainer
	Util        *utl.UtilContainer
}

func (*InitService) InitializeDCE

func (s *InitService) InitializeDCE()

type Initer

type Initer interface {
	InitializeDCE()
}

type Leaser

type Leaser interface {
	CreateLease(principalID string, budgetAmount float64, budgetCurrency string, email []string, expiresOn string)
	EndLease(accountID, principalID string)
	LoginToLease(leaseID, profile string, loginOpenBrowser, loginPrintCreds bool)
	ListLeases(acctID, principalID, nextAcctID, nextPrincipalID, leaseStatus string, pagLimit int64)
	GetLease(leaseID string)
}

type LeasesService

type LeasesService struct {
	Config      *configs.Root
	Observation *observ.ObservationContainer
	Util        *utl.UtilContainer
}

func (*LeasesService) CreateLease

func (s *LeasesService) CreateLease(principalID string, budgetAmount float64, budgetCurrency string, email []string, expiresOn string)

func (*LeasesService) EndLease

func (s *LeasesService) EndLease(accountID, principalID string)

func (*LeasesService) GetLease

func (s *LeasesService) GetLease(leaseID string)

func (*LeasesService) ListLeases

func (s *LeasesService) ListLeases(acctID, principalID, nextAcctID, nextPrincipalID, leaseStatus string, pagLimit int64)

func (*LeasesService) LoginToLease

func (s *LeasesService) LoginToLease(leaseID, loginProfile string, loginOpenBrowser, loginPrintCreds bool)

type ResponseWithPayload

type ResponseWithPayload interface {
	GetPayload() interface{}
}

type ServiceContainer

type ServiceContainer struct {
	Config      *configs.Root
	Observation *observ.ObservationContainer
	Util        *utl.UtilContainer
	Deployer
	Accounter
	Leaser
	Initer
	Authenticater
	Usager
}

ServiceContainer is a service that injects its config and util into other services

func New

func New(config *configs.Root, observation *observ.ObservationContainer, util *utl.UtilContainer) *ServiceContainer

New returns a new ServiceContainer given config

type UsageService

type UsageService struct {
	Config      *configs.Root
	Observation *observ.ObservationContainer
	Util        *utl.UtilContainer
}

func (*UsageService) GetUsage

func (s *UsageService) GetUsage(startDate, endDate float64)

type Usager

type Usager interface {
	GetUsage(startDate, endDate float64)
}

Jump to

Keyboard shortcuts

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