Documentation ¶
Index ¶
- Constants
- Variables
- func GetCloudServicesForAPIs(apis ...string) (services []cloud.Service)
- func GetCloudServicesForTypes(types ...string) (services []cloud.Service)
- func InitServices(conf map[string]interface{}, log *logger.Logger) error
- func NewAccess(sess *session.Session, awsconf config, log *logger.Logger) cloud.Service
- func NewDns(sess *session.Session, awsconf config, log *logger.Logger) cloud.Service
- func NewDriver(region, profile string, log ...*logger.Logger) (driver.Driver, error)
- func NewInfra(sess *session.Session, awsconf config, log *logger.Logger) cloud.Service
- func NewLambda(sess *session.Session, awsconf config, log *logger.Logger) cloud.Service
- func NewMonitoring(sess *session.Session, awsconf config, log *logger.Logger) cloud.Service
- func NewNotification(sess *session.Session, awsconf config, log *logger.Logger) cloud.Service
- func NewQueue(sess *session.Session, awsconf config, log *logger.Logger) cloud.Service
- func NewStorage(sess *session.Session, awsconf config, log *logger.Logger) cloud.Service
- func ResourceTypesPerServiceName() map[string][]string
- type Access
- func (s *Access) Drivers() []driver.Driver
- func (s *Access) FetchByType(t string) (*graph.Graph, error)
- func (s *Access) FetchResources() (*graph.Graph, error)
- func (s *Access) GetIdentity() (*Identity, error)
- func (s *Access) GetUserPolicies(username string) (*UserPolicies, error)
- func (s *Access) IsSyncDisabled() bool
- func (s *Access) Name() string
- func (s *Access) ResourceTypes() []string
- type Dns
- type Identity
- type Infra
- type Lambda
- type Monitoring
- type Notification
- func (s *Notification) Drivers() []driver.Driver
- func (s *Notification) FetchByType(t string) (*graph.Graph, error)
- func (s *Notification) FetchResources() (*graph.Graph, error)
- func (s *Notification) IsSyncDisabled() bool
- func (s *Notification) Name() string
- func (s *Notification) ResourceTypes() []string
- type Queue
- type Storage
- type UserPolicies
Constants ¶
View Source
const ( PARENT_OF = iota // default APPLIES_ON DEPENDING_ON )
Variables ¶
View Source
var APIPerResourceType = map[string]string{
"instance": "ec2",
"subnet": "ec2",
"vpc": "ec2",
"keypair": "ec2",
"securitygroup": "ec2",
"volume": "ec2",
"internetgateway": "ec2",
"routetable": "ec2",
"availabilityzone": "ec2",
"image": "ec2",
"elasticip": "ec2",
"snapshot": "ec2",
"loadbalancer": "elbv2",
"targetgroup": "elbv2",
"listener": "elbv2",
"database": "rds",
"dbsubnetgroup": "rds",
"launchconfiguration": "autoscaling",
"scalinggroup": "autoscaling",
"scalingpolicy": "autoscaling",
"user": "iam",
"group": "iam",
"role": "iam",
"policy": "iam",
"accesskey": "iam",
"bucket": "s3",
"s3object": "s3",
"subscription": "sns",
"topic": "sns",
"queue": "sqs",
"zone": "route53",
"record": "route53",
"function": "lambda",
"metric": "cloudwatch",
"alarm": "cloudwatch",
}
View Source
var (
AccessService, InfraService, StorageService, NotificationService, QueueService, DnsService, LambdaService, MonitoringService cloud.Service
)
View Source
var ErrTagNotFound = errors.New("aws tag key not found")
View Source
var ResourceTypes = []string{
"instance",
"subnet",
"vpc",
"keypair",
"securitygroup",
"volume",
"internetgateway",
"routetable",
"availabilityzone",
"image",
"elasticip",
"snapshot",
"loadbalancer",
"targetgroup",
"listener",
"database",
"dbsubnetgroup",
"launchconfiguration",
"scalinggroup",
"scalingpolicy",
"user",
"group",
"role",
"policy",
"accesskey",
"bucket",
"s3object",
"subscription",
"topic",
"queue",
"zone",
"record",
"function",
"metric",
"alarm",
}
View Source
var ServiceNames = []string{
"infra",
"access",
"storage",
"notification",
"queue",
"dns",
"lambda",
"monitoring",
}
View Source
var ServicePerAPI = map[string]string{
"ec2": "infra",
"elbv2": "infra",
"rds": "infra",
"autoscaling": "infra",
"iam": "access",
"sts": "access",
"s3": "storage",
"sns": "notification",
"sqs": "queue",
"route53": "dns",
"lambda": "lambda",
"cloudwatch": "monitoring",
}
View Source
var ServicePerResourceType = map[string]string{
"instance": "infra",
"subnet": "infra",
"vpc": "infra",
"keypair": "infra",
"securitygroup": "infra",
"volume": "infra",
"internetgateway": "infra",
"routetable": "infra",
"availabilityzone": "infra",
"image": "infra",
"elasticip": "infra",
"snapshot": "infra",
"loadbalancer": "infra",
"targetgroup": "infra",
"listener": "infra",
"database": "infra",
"dbsubnetgroup": "infra",
"launchconfiguration": "infra",
"scalinggroup": "infra",
"scalingpolicy": "infra",
"user": "access",
"group": "access",
"role": "access",
"policy": "access",
"accesskey": "access",
"bucket": "storage",
"s3object": "storage",
"subscription": "notification",
"topic": "notification",
"queue": "queue",
"zone": "dns",
"record": "dns",
"function": "lambda",
"metric": "monitoring",
"alarm": "monitoring",
}
Functions ¶
func GetCloudServicesForAPIs ¶ added in v0.0.21
func GetCloudServicesForTypes ¶ added in v0.0.21
func NewMonitoring ¶ added in v0.0.23
func NewNotification ¶
func NewStorage ¶
func ResourceTypesPerServiceName ¶ added in v0.0.22
Types ¶
type Access ¶
func (*Access) GetIdentity ¶ added in v0.0.21
func (*Access) GetUserPolicies ¶ added in v0.0.21
func (s *Access) GetUserPolicies(username string) (*UserPolicies, error)
func (*Access) IsSyncDisabled ¶
func (*Access) ResourceTypes ¶
type Dns ¶
type Dns struct { route53iface.Route53API // contains filtered or unexported fields }
func (*Dns) IsSyncDisabled ¶
func (*Dns) ResourceTypes ¶
type Infra ¶
type Infra struct { ec2iface.EC2API elbv2iface.ELBV2API rdsiface.RDSAPI autoscalingiface.AutoScalingAPI // contains filtered or unexported fields }
func (*Infra) IsSyncDisabled ¶
func (*Infra) ResourceTypes ¶
type Lambda ¶ added in v0.0.23
type Lambda struct { lambdaiface.LambdaAPI // contains filtered or unexported fields }
func (*Lambda) FetchByType ¶ added in v0.0.23
func (*Lambda) FetchResources ¶ added in v0.0.23
func (*Lambda) IsSyncDisabled ¶ added in v0.0.23
func (*Lambda) ResourceTypes ¶ added in v0.0.23
type Monitoring ¶ added in v0.0.23
type Monitoring struct { cloudwatchiface.CloudWatchAPI // contains filtered or unexported fields }
func (*Monitoring) Drivers ¶ added in v0.0.23
func (s *Monitoring) Drivers() []driver.Driver
func (*Monitoring) FetchByType ¶ added in v0.0.23
func (s *Monitoring) FetchByType(t string) (*graph.Graph, error)
func (*Monitoring) FetchResources ¶ added in v0.0.23
func (s *Monitoring) FetchResources() (*graph.Graph, error)
func (*Monitoring) IsSyncDisabled ¶ added in v0.0.23
func (s *Monitoring) IsSyncDisabled() bool
func (*Monitoring) Name ¶ added in v0.0.23
func (s *Monitoring) Name() string
func (*Monitoring) ResourceTypes ¶ added in v0.0.23
func (s *Monitoring) ResourceTypes() []string
type Notification ¶
func (*Notification) Drivers ¶
func (s *Notification) Drivers() []driver.Driver
func (*Notification) FetchByType ¶
func (s *Notification) FetchByType(t string) (*graph.Graph, error)
func (*Notification) FetchResources ¶
func (s *Notification) FetchResources() (*graph.Graph, error)
func (*Notification) IsSyncDisabled ¶
func (s *Notification) IsSyncDisabled() bool
func (*Notification) Name ¶
func (s *Notification) Name() string
func (*Notification) ResourceTypes ¶
func (s *Notification) ResourceTypes() []string
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
DO NOT EDIT This file was automatically generated with go generate
|
DO NOT EDIT This file was automatically generated with go generate |
DO NOT EDIT This file was automatically generated with go generate DO NOT EDIT This file was automatically generated with go generate DO NOT EDIT This file was automatically generated with go generate
|
DO NOT EDIT This file was automatically generated with go generate DO NOT EDIT This file was automatically generated with go generate DO NOT EDIT This file was automatically generated with go generate |
Click to show internal directories.
Click to hide internal directories.