# README
awscmd
import "github.com/slalombuild/fusion/internal/commands/awscmd"
Package awscmd contains all commands for the aws section of the fusion cli
Commands
AWS commands can be executed with fusion new aws
Index
- Variables
- type AWS
- type Globals
- type NewAPIGatewayCmd
- type NewAWSServerlessWebsiteCmd
- type NewCloudfrontCmd
- type NewIamPolicyCmd
- type NewLambdaCommand
- type NewRoute53ZoneCmd
- type NewS3BucketCmd
- type NewSecurityGroupCmd
- type NewVpcStackCmd
Variables
var (
ErrGenLambda = "failed to generate terraform for lamba"
ErrHighlight = "error highlighting terraform"
)
type AWS
type AWS struct {
Stack struct {
ServerlessWebsite NewAWSServerlessWebsiteCmd `cmd:"" help:"Create new AWS static website w/ serverless backend"`
} `cmd:"" help:"Create new stacks of resources"`
Resource struct {
SecurityGroup NewSecurityGroupCmd `cmd:"" help:"Create new AWS Security Group"`
S3Bucket NewS3BucketCmd `cmd:"" help:"Create new AWS S3 bucket" name:"s3_bucket"`
Cloudfront NewCloudfrontCmd `cmd:"" help:"Create new AWS cloudfront distribution"`
Route53 NewRoute53ZoneCmd `cmd:"" help:"Create new AWS route53 hosted zone"`
Lambda NewLambdaCommand `cmd:"" help:"Create new AWS lambda function"`
IamPolicy NewIamPolicyCmd `cmd:"" help:"Create new AWS IAM policy"`
ApiGateway NewAPIGatewayCmd `cmd:"" help:"Create new AWS API gateway v2"`
VpcStack NewVpcStackCmd `cmd:"" help:"Create new VPC with public & private subnets, igws, & NAT gateways"`
} `cmd:"" help:"Create new single resource"`
}
type Globals
type Globals struct {
Region string `enum:"us-west-1,us-west-2,us-east-1,us-east-2,af-south-1,ap-east-1,ap-southeast-3,ap-south-1,ap-northeast-3,ap-northeast-2,ap-southeast-1,ap-southeast-2,ap-northeast-1,ca-central-1,eu-central-1,eu-west-1,eu-west-2,eu-south-1,eu-west-3,eu-north-1,me-south-1,sa-east-1,us-gov-east-1,us-gov-west-1" default:"us-east-1"`
}
type NewAPIGatewayCmd
NewAPIGatewayv2Cmd creates a new api_gatewayv2
type NewAPIGatewayCmd struct {
Globals
*aws.APIGateway `embed:""`
}
func (*NewAPIGatewayCmd) Run
func (cmd *NewAPIGatewayCmd) Run(ctx *commands.Context) error
type NewAWSServerlessWebsiteCmd
NewAWSServerlessWebsiteCmd creates a new ServerlessWebsite
type NewAWSServerlessWebsiteCmd struct {
Globals
*stacks.ServerlessWebsite `embed:""`
}
func (*NewAWSServerlessWebsiteCmd) Run
func (cmd *NewAWSServerlessWebsiteCmd) Run(ctx *commands.Context) error
type NewCloudfrontCmd
NewCloudfrontCmd creates a new CloudFront
type NewCloudfrontCmd struct {
Globals
*aws.CloudfrontDistribution `embed:""`
}
func (*NewCloudfrontCmd) Run
func (cmd *NewCloudfrontCmd) Run(ctx *commands.Context) error
type NewIamPolicyCmd
NewIamPolicyCmd creates a new iam_policy
type NewIamPolicyCmd struct {
Globals
*aws.IamPolicy `embed:""`
}
func (*NewIamPolicyCmd) Run
func (cmd *NewIamPolicyCmd) Run(ctx *commands.Context) error
type NewLambdaCommand
type NewLambdaCommand struct {
Globals
Graph bool `help:"Generate graphviz of terraform resource" default:"false"`
*aws.LambdaFunction `embed:""`
}
func (*NewLambdaCommand) Run
func (cmd *NewLambdaCommand) Run(ctx *commands.Context) error
type NewRoute53ZoneCmd
NewRoute53ZoneCmd creates a new route53_zone
type NewRoute53ZoneCmd struct {
Globals
*aws.Route53HostedZone `embed:""`
}
func (*NewRoute53ZoneCmd) Run
func (cmd *NewRoute53ZoneCmd) Run(ctx *commands.Context) error
type NewS3BucketCmd
NewS3BucketCmd creates a new s3_bucket
type NewS3BucketCmd struct {
Globals
*aws.S3Bucket `embed:""`
}
func (*NewS3BucketCmd) Run
func (cmd *NewS3BucketCmd) Run(ctx *commands.Context) error
type NewSecurityGroupCmd
NewSecurityGroupCmd creates a new SecurityGroup
type NewSecurityGroupCmd struct {
Globals
*aws.SecurityGroup `embed:""`
}
func (*NewSecurityGroupCmd) Run
func (cmd *NewSecurityGroupCmd) Run(ctx *commands.Context) error
type NewVpcStackCmd
NewVpcStackCmd creates a new vpc_stack
type NewVpcStackCmd struct {
Globals
*aws.VPC `embed:""`
}
func (*NewVpcStackCmd) Run
func (cmd *NewVpcStackCmd) Run(ctx *commands.Context) error
Generated by gomarkdoc