awscan

package module
v0.0.0-...-4644b59 Latest Latest
Warning

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

Go to latest
Published: Feb 3, 2017 License: MIT Imports: 8 Imported by: 1

README

AWS can

this is a can

A scanner for aws resources. You can use the discovery package to get a channel of resources:

import (
        "github.com/opsee/awscan"
)

scanner := awscan.NewScanner(&awscan.Config{AccessKeyId: "YOURID", SecretKey: "YOURSECRET", Region: "us-west-1"})
disco := awscan.NewDiscoverer(scanner)

for event := range disco.Discover() {
	if event.Err != nil {
		fmt.Println("whoops: ", event.Err.Error())
	} else {
		fmt.Println("yay: ", event.Result)
	}
}

Documentation

Index

Constants

View Source
const (
	InstanceType         = "Instance"
	DBInstanceType       = "DBInstance"
	SecurityGroupType    = "SecurityGroup"
	DBSecurityGroupType  = "DBSecurityGroup"
	AutoScalingGroupType = "AutoScalingGroup"
	LoadBalancerType     = "LoadBalancerDescription"
	SubnetType           = "Subnet"
	RouteTableType       = "RouteTable"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Discoverer

type Discoverer interface {
	Discover() <-chan Event
}

func NewDiscoverer

func NewDiscoverer(s EC2Scanner) Discoverer

type DiscoveryError

type DiscoveryError struct {
	Type string
	// contains filtered or unexported fields
}

func (*DiscoveryError) Error

func (e *DiscoveryError) Error() string

type EC2Scanner

type EC2Scanner interface {
	GetInstance(string) (*ec2.Reservation, error)
	ScanSecurityGroups() ([]*ec2.SecurityGroup, error)
	ScanSecurityGroupInstances(string) ([]*ec2.Reservation, error)
	GetLoadBalancer(string) (*elb.LoadBalancerDescription, error)
	ScanLoadBalancers() ([]*elb.LoadBalancerDescription, error)
	ScanRDS() ([]*rds.DBInstance, error)
	ScanRDSSecurityGroups() ([]*rds.DBSecurityGroup, error)
	ScanAutoScalingGroups() ([]*autoscaling.Group, error)
	ScanRouteTables() ([]*ec2.RouteTable, error)
	ScanSubnets() ([]*ec2.Subnet, error)
}

func NewScanner

func NewScanner(sess *session.Session, vpcID string) EC2Scanner

type Event

type Event struct {
	Result interface{}
	Err    error
}

Jump to

Keyboard shortcuts

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