inventory

package
v0.0.0-...-62343dc Latest Latest
Warning

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

Go to latest
Published: May 8, 2022 License: MIT Imports: 42 Imported by: 0

Documentation

Overview

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_catalog_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

AUTOGENERATED CODE DO NOT EDIT This file is automatically generated from /internal/codegen/templates/aws_service_inventory_file.tmpl

Index

Constants

This section is empty.

Variables

View Source
var (
	AwsCatalog = []AwsCatalogService{
		{
			ServiceName:     "acm",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "certificates",
					ResourceModel: &acm.Certificate{},
					FetchFunction: IngestAwsACMCertificates,
					UniqueIdField: "CertificateArn",
				},
			},
		},
		{
			ServiceName:     "apigateway",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "rest_apis",
					ResourceModel: &apigateway.RestApi{},
					FetchFunction: IngestAwsApiGatewayRestApis,
					UniqueIdField: "Id",
				},
			},
		},
		{
			ServiceName:     "apigatewayv2",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "apis",
					ResourceModel: &apigatewayv2.Api{},
					FetchFunction: IngestAwsApiGatewayV2Apis,
					UniqueIdField: "ApiId",
				},
			},
		},
		{
			ServiceName:     "applicationautoscaling",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "scaling_policies",
					ResourceModel: &applicationautoscaling.ScalingPolicy{},
					FetchFunction: IngestAwsApplicationAutoScalingScalingPolicies,
					UniqueIdField: "PolicyARN",
				},
			},
		},
		{
			ServiceName:     "athena",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "work_groups",
					ResourceModel: &athena.WorkGroup{},
					FetchFunction: IngestAwsAthenaWorkGroups,
					UniqueIdField: "Name",
				},
				{
					ResourceName:  "data_catalogs",
					ResourceModel: &athena.DataCatalog{},
					FetchFunction: IngestAwsAthenaDataCatalogs,
					UniqueIdField: "Name",
				},
				{
					ResourceName:  "databases",
					ResourceModel: &athena.Database{},
					FetchFunction: IngestAwsAthenaDatabases,
					UniqueIdField: "Name",
				},
			},
		},
		{
			ServiceName:     "autoscaling",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "auto_scaling_groups",
					ResourceModel: &autoscaling.AutoScalingGroup{},
					FetchFunction: IngestAwsAutoScalingAutoScalingGroups,
					UniqueIdField: "AutoScalingGroupARN",
				},
				{
					ResourceName:  "launch_configurations",
					ResourceModel: &autoscaling.LaunchConfiguration{},
					FetchFunction: IngestAwsAutoScalingLaunchConfigurations,
					UniqueIdField: "LaunchConfigurationARN",
				},
			},
		},
		{
			ServiceName:     "backup",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "backup_vaults",
					ResourceModel: &backup.BackupVault{},
					FetchFunction: IngestAwsBackupBackupVaults,
					UniqueIdField: "BackupVaultArn",
				},
				{
					ResourceName:  "backup_plans",
					ResourceModel: &backup.BackupPlan{},
					FetchFunction: IngestAwsBackupBackupPlans,
					UniqueIdField: "BackupPlanArn",
				},
			},
		},
		{
			ServiceName:     "cloudformation",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "stacks",
					ResourceModel: &cloudformation.Stack{},
					FetchFunction: IngestAwsCloudFormationStacks,
					UniqueIdField: "StackId",
				},
			},
		},
		{
			ServiceName:     "cloudfront",
			RegionOverrides: []string{"us-east-1"},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "distributions",
					ResourceModel: &cloudfront.Distribution{},
					FetchFunction: IngestAwsCloudFrontDistributions,
					UniqueIdField: "ARN",
				},
			},
		},
		{
			ServiceName:     "cloudtrail",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "trails",
					ResourceModel: &cloudtrail.Trail{},
					FetchFunction: IngestAwsCloudTrailTrails,
					UniqueIdField: "TrailARN",
				},
			},
		},
		{
			ServiceName:     "cloudwatch",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "metric_alarms",
					ResourceModel: &cloudwatch.MetricAlarm{},
					FetchFunction: IngestAwsCloudWatchMetricAlarms,
					UniqueIdField: "AlarmArn",
				},
				{
					ResourceName:  "composite_alarms",
					ResourceModel: &cloudwatch.CompositeAlarm{},
					FetchFunction: IngestAwsCloudWatchCompositeAlarms,
					UniqueIdField: "AlarmArn",
				},
			},
		},
		{
			ServiceName:     "cloudwatchlogs",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "log_groups",
					ResourceModel: &cloudwatchlogs.LogGroup{},
					FetchFunction: IngestAwsCloudWatchLogsLogGroups,
					UniqueIdField: "Arn",
				},
			},
		},
		{
			ServiceName:     "dynamodb",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "tables",
					ResourceModel: &dynamodb.Table{},
					FetchFunction: IngestAwsDynamoDBTables,
					UniqueIdField: "TableArn",
				},
			},
		},
		{
			ServiceName:     "ec2",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "addresses",
					ResourceModel: &ec2.Address{},
					FetchFunction: IngestAwsEC2Addresses,
					UniqueIdField: "AllocationId",
				},
				{
					ResourceName:  "dhcp_options",
					ResourceModel: &ec2.DhcpOptions{},
					FetchFunction: IngestAwsEC2DhcpOptions,
					UniqueIdField: "DhcpOptionsId",
				},
				{
					ResourceName:  "images",
					ResourceModel: &ec2.Image{},
					FetchFunction: IngestAwsEC2Images,
					UniqueIdField: "ImageId",
				},
				{
					ResourceName:  "instances",
					ResourceModel: &ec2.Instance{},
					FetchFunction: IngestAwsEC2Instances,
					UniqueIdField: "InstanceId",
				},
				{
					ResourceName:  "internet_gateways",
					ResourceModel: &ec2.InternetGateway{},
					FetchFunction: IngestAwsEC2InternetGateways,
					UniqueIdField: "InternetGatewayId",
				},
				{
					ResourceName:  "managed_prefix_lists",
					ResourceModel: &ec2.ManagedPrefixList{},
					FetchFunction: IngestAwsEC2ManagedPrefixLists,
					UniqueIdField: "PrefixListArn",
				},
				{
					ResourceName:  "nat_gateways",
					ResourceModel: &ec2.NatGateway{},
					FetchFunction: IngestAwsEC2NatGateways,
					UniqueIdField: "NatGatewayId",
				},
				{
					ResourceName:  "network_acls",
					ResourceModel: &ec2.NetworkAcl{},
					FetchFunction: IngestAwsEC2NetworkAcls,
					UniqueIdField: "NetworkAclId",
				},
				{
					ResourceName:  "network_interfaces",
					ResourceModel: &ec2.NetworkInterface{},
					FetchFunction: IngestAwsEC2NetworkInterfaces,
					UniqueIdField: "NetworkInterfaceId",
				},
				{
					ResourceName:  "placement_groups",
					ResourceModel: &ec2.PlacementGroup{},
					FetchFunction: IngestAwsEC2PlacementGroups,
					UniqueIdField: "GroupId",
				},
				{
					ResourceName:  "reserved_instances",
					ResourceModel: &ec2.ReservedInstances{},
					FetchFunction: IngestAwsEC2ReservedInstances,
					UniqueIdField: "ReservedInstancesId",
				},
				{
					ResourceName:  "route_tables",
					ResourceModel: &ec2.RouteTable{},
					FetchFunction: IngestAwsEC2RouteTables,
					UniqueIdField: "RouteTableId",
				},
				{
					ResourceName:  "security_groups",
					ResourceModel: &ec2.SecurityGroup{},
					FetchFunction: IngestAwsEC2SecurityGroups,
					UniqueIdField: "GroupId",
				},
				{
					ResourceName:  "subnets",
					ResourceModel: &ec2.Subnet{},
					FetchFunction: IngestAwsEC2Subnets,
					UniqueIdField: "SubnetId",
				},
				{
					ResourceName:  "transit_gateway_peering_attachments",
					ResourceModel: &ec2.TransitGatewayPeeringAttachment{},
					FetchFunction: IngestAwsEC2TransitGatewayPeeringAttachments,
					UniqueIdField: "TransitGatewayAttachmentId",
				},
				{
					ResourceName:  "transit_gateway_route_tables",
					ResourceModel: &ec2.TransitGatewayRouteTable{},
					FetchFunction: IngestAwsEC2TransitGatewayRouteTables,
					UniqueIdField: "TransitGatewayRouteTableId",
				},
				{
					ResourceName:  "transit_gateway_vpc_attachments",
					ResourceModel: &ec2.TransitGatewayVpcAttachment{},
					FetchFunction: IngestAwsEC2TransitGatewayVpcAttachments,
					UniqueIdField: "TransitGatewayAttachmentId",
				},
				{
					ResourceName:  "transit_gateways",
					ResourceModel: &ec2.TransitGateway{},
					FetchFunction: IngestAwsEC2TransitGateways,
					UniqueIdField: "TransitGatewayId",
				},
				{
					ResourceName:  "volumes",
					ResourceModel: &ec2.Volume{},
					FetchFunction: IngestAwsEC2Volumes,
					UniqueIdField: "VolumeId",
				},
				{
					ResourceName:  "vpc_endpoints",
					ResourceModel: &ec2.VpcEndpoint{},
					FetchFunction: IngestAwsEC2VpcEndpoints,
					UniqueIdField: "VpcEndpointId",
				},
				{
					ResourceName:  "vpc_peering_connections",
					ResourceModel: &ec2.VpcPeeringConnection{},
					FetchFunction: IngestAwsEC2VpcPeeringConnections,
					UniqueIdField: "VpcPeeringConnectionId",
				},
				{
					ResourceName:  "vpcs",
					ResourceModel: &ec2.Vpc{},
					FetchFunction: IngestAwsEC2Vpcs,
					UniqueIdField: "VpcId",
				},
				{
					ResourceName:  "vpn_gateways",
					ResourceModel: &ec2.VpnGateway{},
					FetchFunction: IngestAwsEC2VpnGateways,
					UniqueIdField: "VpnGatewayId",
				},
			},
		},
		{
			ServiceName:     "ecr",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "repositories",
					ResourceModel: &ecr.Repository{},
					FetchFunction: IngestAwsECRRepositories,
					UniqueIdField: "RepositoryArn",
				},
			},
		},
		{
			ServiceName:     "ecs",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "clusters",
					ResourceModel: &ecs.Cluster{},
					FetchFunction: IngestAwsECSClusters,
					UniqueIdField: "ClusterArn",
				},
				{
					ResourceName:  "services",
					ResourceModel: &ecs.Service{},
					FetchFunction: IngestAwsECSServices,
					UniqueIdField: "ServiceArn",
				},
				{
					ResourceName:  "tasks",
					ResourceModel: &ecs.Task{},
					FetchFunction: IngestAwsECSTasks,
					UniqueIdField: "TaskArn",
				},
			},
		},
		{
			ServiceName:     "efs",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "file_systems",
					ResourceModel: &efs.FileSystem{},
					FetchFunction: IngestAwsEFSFileSystems,
					UniqueIdField: "FileSystemId",
				},
			},
		},
		{
			ServiceName:     "elasticache",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "cache_clusters",
					ResourceModel: &elasticache.CacheCluster{},
					FetchFunction: IngestAwsElastiCacheCacheClusters,
					UniqueIdField: "ARN",
				},
			},
		},
		{
			ServiceName:     "elasticloadbalancing",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "load_balancers",
					ResourceModel: &elasticloadbalancing.LoadBalancer{},
					FetchFunction: IngestAwsElasticLoadBalancingLoadBalancers,
					UniqueIdField: "LoadBalancerName",
				},
			},
		},
		{
			ServiceName:     "elasticloadbalancingv2",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "load_balancers",
					ResourceModel: &elasticloadbalancingv2.LoadBalancer{},
					FetchFunction: IngestAwsElasticLoadBalancingV2LoadBalancers,
					UniqueIdField: "LoadBalancerArn",
				},
				{
					ResourceName:  "target_groups",
					ResourceModel: &elasticloadbalancingv2.TargetGroup{},
					FetchFunction: IngestAwsElasticLoadBalancingV2TargetGroups,
					UniqueIdField: "TargetGroupArn",
				},
			},
		},
		{
			ServiceName:     "iam",
			RegionOverrides: []string{"us-east-1"},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "groups",
					ResourceModel: &iam.Group{},
					FetchFunction: IngestAwsIAMGroups,
					UniqueIdField: "GroupId",
				},
				{
					ResourceName:  "policies",
					ResourceModel: &iam.Policy{},
					FetchFunction: IngestAwsIAMPolicies,
					UniqueIdField: "PolicyId",
				},
				{
					ResourceName:  "roles",
					ResourceModel: &iam.Role{},
					FetchFunction: IngestAwsIAMRoles,
					UniqueIdField: "RoleId",
				},
				{
					ResourceName:  "users",
					ResourceModel: &iam.User{},
					FetchFunction: IngestAwsIAMUsers,
					UniqueIdField: "UserId",
				},
			},
		},
		{
			ServiceName:     "kms",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "keys",
					ResourceModel: &kms.Key{},
					FetchFunction: IngestAwsKMSKeys,
					UniqueIdField: "Arn",
				},
			},
		},
		{
			ServiceName:     "lambda",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "functions",
					ResourceModel: &lambda.Function{},
					FetchFunction: IngestAwsLambdaFunctions,
					UniqueIdField: "FunctionArn",
				},
			},
		},
		{
			ServiceName:     "rds",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "db_clusters",
					ResourceModel: &rds.DBCluster{},
					FetchFunction: IngestAwsRDSDBClusters,
					UniqueIdField: "DBClusterArn",
				},
				{
					ResourceName:  "db_instances",
					ResourceModel: &rds.DBInstance{},
					FetchFunction: IngestAwsRDSDBInstances,
					UniqueIdField: "DBInstanceArn",
				},
			},
		},
		{
			ServiceName:     "redshift",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "clusters",
					ResourceModel: &redshift.Cluster{},
					FetchFunction: IngestAwsRedshiftClusters,
					UniqueIdField: "ClusterIdentifier",
				},
			},
		},
		{
			ServiceName:     "route53",
			RegionOverrides: []string{"us-east-1"},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "hosted_zones",
					ResourceModel: &route53.HostedZone{},
					FetchFunction: IngestAwsRoute53HostedZones,
					UniqueIdField: "Id",
				},
			},
		},
		{
			ServiceName:     "s3",
			RegionOverrides: []string{"us-east-1"},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "buckets",
					ResourceModel: &s3.Bucket{},
					FetchFunction: IngestAwsS3Buckets,
					UniqueIdField: "Name",
				},
			},
		},
		{
			ServiceName:     "secretsmanager",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "secrets",
					ResourceModel: &secretsmanager.Secret{},
					FetchFunction: IngestAwsSecretsManagerSecrets,
					UniqueIdField: "ARN",
				},
			},
		},
		{
			ServiceName:     "sns",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "topics",
					ResourceModel: &sns.Topic{},
					FetchFunction: IngestAwsSNSTopics,
					UniqueIdField: "TopicArn",
				},
				{
					ResourceName:  "subscriptions",
					ResourceModel: &sns.Subscription{},
					FetchFunction: IngestAwsSNSSubscriptions,
					UniqueIdField: "SubscriptionArn",
				},
			},
		},
		{
			ServiceName:     "sqs",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "queues",
					ResourceModel: &sqs.Queue{},
					FetchFunction: IngestAwsSQSQueues,
					UniqueIdField: "QueueArn",
				},
			},
		},
		{
			ServiceName:     "ssm",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "parameters",
					ResourceModel: &ssm.Parameter{},
					FetchFunction: IngestAwsSSMParameters,
					UniqueIdField: "Name",
				},
			},
		},
		{
			ServiceName:     "storagegateway",
			RegionOverrides: []string{},
			Resources: []AwsCatalogResource{
				{
					ResourceName:  "gateways",
					ResourceModel: &storagegateway.Gateway{},
					FetchFunction: IngestAwsStorageGatewayGateways,
					UniqueIdField: "GatewayARN",
				},
			},
		},
	}
)

Functions

func FetchAwsInventory

func FetchAwsInventory(ctx context.Context, accountIds []string, regions []string, baseAwsConfig aws.Config, useLocalCredentials bool, assumeRoleName string, reportTime int64, dao db.WriterDAO, numWorkers int)

func IngestAwsACMCertificates

func IngestAwsACMCertificates(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsApiGatewayRestApis

func IngestAwsApiGatewayRestApis(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsApiGatewayV2Apis

func IngestAwsApiGatewayV2Apis(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsApplicationAutoScalingScalingPolicies

func IngestAwsApplicationAutoScalingScalingPolicies(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsAthenaDataCatalogs

func IngestAwsAthenaDataCatalogs(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsAthenaDatabases

func IngestAwsAthenaDatabases(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsAthenaWorkGroups

func IngestAwsAthenaWorkGroups(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsAutoScalingAutoScalingGroups

func IngestAwsAutoScalingAutoScalingGroups(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsAutoScalingLaunchConfigurations

func IngestAwsAutoScalingLaunchConfigurations(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsBackupBackupPlans

func IngestAwsBackupBackupPlans(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsBackupBackupVaults

func IngestAwsBackupBackupVaults(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsCloudFormationStacks

func IngestAwsCloudFormationStacks(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsCloudFrontDistributions

func IngestAwsCloudFrontDistributions(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsCloudTrailTrails

func IngestAwsCloudTrailTrails(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsCloudWatchCompositeAlarms

func IngestAwsCloudWatchCompositeAlarms(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsCloudWatchLogsLogGroups

func IngestAwsCloudWatchLogsLogGroups(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsCloudWatchMetricAlarms

func IngestAwsCloudWatchMetricAlarms(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsDynamoDBTables

func IngestAwsDynamoDBTables(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2Addresses

func IngestAwsEC2Addresses(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2DhcpOptions

func IngestAwsEC2DhcpOptions(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2Images

func IngestAwsEC2Images(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2Instances

func IngestAwsEC2Instances(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2InternetGateways

func IngestAwsEC2InternetGateways(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2ManagedPrefixLists

func IngestAwsEC2ManagedPrefixLists(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2NatGateways

func IngestAwsEC2NatGateways(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2NetworkAcls

func IngestAwsEC2NetworkAcls(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2NetworkInterfaces

func IngestAwsEC2NetworkInterfaces(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2PlacementGroups

func IngestAwsEC2PlacementGroups(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2ReservedInstances

func IngestAwsEC2ReservedInstances(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2RouteTables

func IngestAwsEC2RouteTables(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2SecurityGroups

func IngestAwsEC2SecurityGroups(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2Subnets

func IngestAwsEC2Subnets(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2TransitGatewayPeeringAttachments

func IngestAwsEC2TransitGatewayPeeringAttachments(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2TransitGatewayRouteTables

func IngestAwsEC2TransitGatewayRouteTables(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2TransitGatewayVpcAttachments

func IngestAwsEC2TransitGatewayVpcAttachments(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2TransitGateways

func IngestAwsEC2TransitGateways(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2Volumes

func IngestAwsEC2Volumes(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2VpcEndpoints

func IngestAwsEC2VpcEndpoints(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2VpcPeeringConnections

func IngestAwsEC2VpcPeeringConnections(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2Vpcs

func IngestAwsEC2Vpcs(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEC2VpnGateways

func IngestAwsEC2VpnGateways(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsECRRepositories

func IngestAwsECRRepositories(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsECSClusters

func IngestAwsECSClusters(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsECSServices

func IngestAwsECSServices(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsECSTasks

func IngestAwsECSTasks(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsEFSFileSystems

func IngestAwsEFSFileSystems(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsElastiCacheCacheClusters

func IngestAwsElastiCacheCacheClusters(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsElasticLoadBalancingLoadBalancers

func IngestAwsElasticLoadBalancingLoadBalancers(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsElasticLoadBalancingV2LoadBalancers

func IngestAwsElasticLoadBalancingV2LoadBalancers(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsElasticLoadBalancingV2TargetGroups

func IngestAwsElasticLoadBalancingV2TargetGroups(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsIAMGroups

func IngestAwsIAMGroups(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsIAMPolicies

func IngestAwsIAMPolicies(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsIAMRoles

func IngestAwsIAMRoles(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsIAMUsers

func IngestAwsIAMUsers(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsKMSKeys

func IngestAwsKMSKeys(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsLambdaFunctions

func IngestAwsLambdaFunctions(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsRDSDBClusters

func IngestAwsRDSDBClusters(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsRDSDBInstances

func IngestAwsRDSDBInstances(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsRedshiftClusters

func IngestAwsRedshiftClusters(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsRoute53HostedZones

func IngestAwsRoute53HostedZones(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsS3Buckets

func IngestAwsS3Buckets(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsSNSSubscriptions

func IngestAwsSNSSubscriptions(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsSNSTopics

func IngestAwsSNSTopics(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsSQSQueues

func IngestAwsSQSQueues(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsSSMParameters

func IngestAwsSSMParameters(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsSecretsManagerSecrets

func IngestAwsSecretsManagerSecrets(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func IngestAwsStorageGatewayGateways

func IngestAwsStorageGatewayGateways(ctx context.Context, dao db.WriterDAO, input *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)

func ProcessAwsFetchJobs

func ProcessAwsFetchJobs(ctx context.Context, jobs <-chan AwsFetchJob, results chan<- *localAws.AwsFetchOutputMetadata, waitGroup *sync.WaitGroup)

Types

type AwsCatalogResource

type AwsCatalogResource struct {
	ResourceName  string
	ResourceModel interface{}
	FetchFunction func(context.Context, db.WriterDAO, *aws.AwsFetchInput) (*aws.AwsFetchOutputMetadata, error)
	UniqueIdField string
}

type AwsCatalogService

type AwsCatalogService struct {
	ServiceName     string
	RegionOverrides []string
	Resources       []AwsCatalogResource
}

type AwsFetchJob

type AwsFetchJob struct {
	Input     *localAws.AwsFetchInput
	Service   string
	Resource  string
	DAO       db.WriterDAO
	WaitGroup *sync.WaitGroup
	Function  func(context.Context, db.WriterDAO, *localAws.AwsFetchInput) (*localAws.AwsFetchOutputMetadata, error)
}

Jump to

Keyboard shortcuts

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