github.com/khulnasoft-lab/defsec@v1.0.5-0.20230827010352-5e9f46893d95/internal/adapters/cloudformation/aws/adapt.go (about)

     1  package aws
     2  
     3  import (
     4  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/apigateway"
     5  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/athena"
     6  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/cloudfront"
     7  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/cloudtrail"
     8  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/cloudwatch"
     9  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/codebuild"
    10  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/config"
    11  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/documentdb"
    12  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/dynamodb"
    13  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/ec2"
    14  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/ecr"
    15  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/ecs"
    16  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/efs"
    17  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/eks"
    18  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/elasticache"
    19  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/elasticsearch"
    20  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/elb"
    21  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/iam"
    22  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/kinesis"
    23  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/lambda"
    24  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/mq"
    25  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/msk"
    26  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/neptune"
    27  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/rds"
    28  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/redshift"
    29  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/s3"
    30  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/sam"
    31  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/sns"
    32  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/sqs"
    33  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/ssm"
    34  	"github.com/khulnasoft-lab/defsec/internal/adapters/cloudformation/aws/workspaces"
    35  	"github.com/khulnasoft-lab/defsec/pkg/providers/aws"
    36  	"github.com/khulnasoft-lab/defsec/pkg/scanners/cloudformation/parser"
    37  )
    38  
    39  // Adapt ...
    40  func Adapt(cfFile parser.FileContext) aws.AWS {
    41  	return aws.AWS{
    42  		APIGateway:    apigateway.Adapt(cfFile),
    43  		Athena:        athena.Adapt(cfFile),
    44  		Cloudfront:    cloudfront.Adapt(cfFile),
    45  		CloudTrail:    cloudtrail.Adapt(cfFile),
    46  		CloudWatch:    cloudwatch.Adapt(cfFile),
    47  		CodeBuild:     codebuild.Adapt(cfFile),
    48  		Config:        config.Adapt(cfFile),
    49  		DocumentDB:    documentdb.Adapt(cfFile),
    50  		DynamoDB:      dynamodb.Adapt(cfFile),
    51  		EC2:           ec2.Adapt(cfFile),
    52  		ECR:           ecr.Adapt(cfFile),
    53  		ECS:           ecs.Adapt(cfFile),
    54  		EFS:           efs.Adapt(cfFile),
    55  		IAM:           iam.Adapt(cfFile),
    56  		EKS:           eks.Adapt(cfFile),
    57  		ElastiCache:   elasticache.Adapt(cfFile),
    58  		Elasticsearch: elasticsearch.Adapt(cfFile),
    59  		ELB:           elb.Adapt(cfFile),
    60  		MSK:           msk.Adapt(cfFile),
    61  		MQ:            mq.Adapt(cfFile),
    62  		Kinesis:       kinesis.Adapt(cfFile),
    63  		Lambda:        lambda.Adapt(cfFile),
    64  		Neptune:       neptune.Adapt(cfFile),
    65  		RDS:           rds.Adapt(cfFile),
    66  		Redshift:      redshift.Adapt(cfFile),
    67  		S3:            s3.Adapt(cfFile),
    68  		SAM:           sam.Adapt(cfFile),
    69  		SNS:           sns.Adapt(cfFile),
    70  		SQS:           sqs.Adapt(cfFile),
    71  		SSM:           ssm.Adapt(cfFile),
    72  		WorkSpaces:    workspaces.Adapt(cfFile),
    73  	}
    74  }