Documentation ¶
Index ¶
- Constants
- Variables
- func CallForEachString(label string, callOnSet []string, callFn func(string) error) (callErrors []error)
- func Deploy() error
- func PantherNames(setString string) []string
- func PreCheck(region string) error
- func Stack(packager *pkg.Packager, templatePath, stack string, params map[string]string) (map[string]string, error)
- type Company
- type FirstUser
- type Infra
- type LogSubscriptions
- type Monitoring
- type PantherConfig
- type Setup
- type Web
Constants ¶
View Source
const ConfigFilepath = "deployments/panther_config.yml"
Variables ¶
View Source
var SupportedRegions = map[string]bool{ "ap-northeast-1": true, "ap-northeast-2": true, "ap-south-1": true, "ap-southeast-1": true, "ap-southeast-2": true, "ca-central-1": true, "eu-central-1": true, "eu-north-1": true, "eu-west-1": true, "eu-west-2": true, "eu-west-3": true, "sa-east-1": true, "us-east-1": true, "us-east-2": true, "us-west-1": true, "us-west-2": true, }
SupportedRegions is a set of region names where Panther can be deployed. Not all AWS services are available in every region. https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services
Functions ¶
func CallForEachString ¶ added in v1.16.0
func CallForEachString(label string, callOnSet []string, callFn func(string) error) (callErrors []error)
Call a method for every string in the callOnSet string slice. Return a slice of errors where the index of the error is the index of the callOnSet string used as the argument in the function call.
func PantherNames ¶ added in v1.16.0
Takes a string and returns the panther- prefixed, lowercased slice of words(strings) (separated by spaces). e.g "oRg-ApI" -> []string{"panther-org-api"} e.g "one two THREE" -> []string{"panther-one", "panther-two", "panther-three"}
Types ¶
type Infra ¶
type Infra struct { BaseLayerVersionArns string `yaml:"BaseLayerVersionArns"` LoadBalancerSecurityGroupCidr string `yaml:"LoadBalancerSecurityGroupCidr"` LogProcessorLambdaMemorySize int `yaml:"LogProcessorLambdaMemorySize"` LogProcessorLambdaSQSReadBatchSize string `yaml:"LogProcessorLambdaSQSReadBatchSize"` PipLayer []string `yaml:"PipLayer"` KvTableBillingMode string `yaml:"KvTableBillingMode"` PythonLayerVersionArn string `yaml:"PythonLayerVersionArn"` PythonManagedPolicyArn string `yaml:"PythonManagedPolicyArn"` PythonAssumableRoleArns []string `yaml:"PythonAssumableRoleArns"` SecurityGroupID string `yaml:"SecurityGroupID"` SubnetOneID string `yaml:"SubnetOneID"` SubnetTwoID string `yaml:"SubnetTwoID"` SubnetOneIPRange string `yaml:"SubnetOneIPRange"` SubnetTwoIPRange string `yaml:"SubnetTwoIPRange"` VpcID string `yaml:"VpcID"` }
type LogSubscriptions ¶
type LogSubscriptions struct {
PrincipalARNs []string `yaml:"PrincipalARNs"`
}
type Monitoring ¶
type PantherConfig ¶
type PantherConfig struct { Infra Infra `yaml:"Infra"` Monitoring Monitoring `yaml:"Monitoring"` Setup Setup `yaml:"Setup"` Web Web `yaml:"Web"` }
type Setup ¶
type Setup struct { Company Company `yaml:"Company"` FirstUser FirstUser `yaml:"FirstUser"` OnboardSelf bool `yaml:"OnboardSelf"` EnableS3AccessLogs bool `yaml:"EnableS3AccessLogs"` EnableCloudTrail bool `yaml:"EnableCloudTrail"` EnableGuardDuty bool `yaml:"EnableGuardDuty"` S3AccessLogsBucket string `yaml:"S3AccessLogsBucket"` DataReplicationBucket string `yaml:"DataReplicationBucket"` InitialAnalysisSets []string `yaml:"InitialAnalysisSets"` LogSubscriptions LogSubscriptions `yaml:"LogSubscriptions"` }
Click to show internal directories.
Click to hide internal directories.