{
"author": {
"email": "patrick.florek@gmail.com",
"name": "Patrick Florek",
"organization": true,
"roles": [
"author"
]
},
"bundled": {
"@iarna/toml": "^2.2.5",
"param-case": "^3.0.4",
"pascal-case": "^3.1.2",
"snake-case": "^3.0.4"
},
"dependencies": {
"@pepperize/cdk-private-bucket": "^0.0.351",
"@pepperize/cdk-security-group": "^v0.0.439",
"@pepperize/cdk-vpc": "^0.0.558",
"aws-cdk-lib": "^2.8.0",
"constructs": "^10.0.5"
},
"dependencyClosure": {
"@pepperize/cdk-private-bucket": {
"targets": {
"dotnet": {
"namespace": "Pepperize.CDK",
"packageId": "Pepperize.CDK.PrivateBucket"
},
"java": {
"maven": {
"artifactId": "cdk-private-bucket",
"groupId": "com.pepperize"
},
"package": "com.pepperize.cdk.private_bucket"
},
"js": {
"npm": "@pepperize/cdk-private-bucket"
},
"python": {
"distName": "pepperize.cdk-private-bucket",
"module": "pepperize_cdk_private_bucket"
}
}
},
"@pepperize/cdk-security-group": {
"targets": {
"dotnet": {
"namespace": "Pepperize.CDK",
"packageId": "Pepperize.CDK.SecurityGroup"
},
"java": {
"maven": {
"artifactId": "cdk-security-group",
"groupId": "com.pepperize"
},
"package": "com.pepperize.cdk.security_group"
},
"js": {
"npm": "@pepperize/cdk-security-group"
},
"python": {
"distName": "pepperize.cdk-security-group",
"module": "pepperize_cdk_security_group"
}
}
},
"@pepperize/cdk-vpc": {
"targets": {
"dotnet": {
"namespace": "Pepperize.CDK",
"packageId": "Pepperize.CDK.Vpc"
},
"java": {
"maven": {
"artifactId": "cdk-vpc",
"groupId": "com.pepperize"
},
"package": "com.pepperize.cdk.vpc"
},
"js": {
"npm": "@pepperize/cdk-vpc"
},
"python": {
"distName": "pepperize.cdk-vpc",
"module": "pepperize_cdk_vpc"
}
}
},
"aws-cdk-lib": {
"submodules": {
"aws-cdk-lib.alexa_ask": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.Alexa.Ask"
},
"java": {
"package": "software.amazon.awscdk.alexa.ask"
},
"python": {
"module": "aws_cdk.alexa_ask"
}
}
},
"aws-cdk-lib.assertions": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.Assertions"
},
"java": {
"package": "software.amazon.awscdk.assertions"
},
"python": {
"module": "aws_cdk.assertions"
}
}
},
"aws-cdk-lib.assets": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.Assets"
},
"java": {
"package": "software.amazon.awscdk.assets"
},
"python": {
"module": "aws_cdk.assets"
}
}
},
"aws-cdk-lib.aws_accessanalyzer": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AccessAnalyzer"
},
"java": {
"package": "software.amazon.awscdk.services.accessanalyzer"
},
"python": {
"module": "aws_cdk.aws_accessanalyzer"
}
}
},
"aws-cdk-lib.aws_acmpca": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ACMPCA"
},
"java": {
"package": "software.amazon.awscdk.services.acmpca"
},
"python": {
"module": "aws_cdk.aws_acmpca"
}
}
},
"aws-cdk-lib.aws_amazonmq": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AmazonMQ"
},
"java": {
"package": "software.amazon.awscdk.services.amazonmq"
},
"python": {
"module": "aws_cdk.aws_amazonmq"
}
}
},
"aws-cdk-lib.aws_amplify": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Amplify"
},
"java": {
"package": "software.amazon.awscdk.services.amplify"
},
"python": {
"module": "aws_cdk.aws_amplify"
}
}
},
"aws-cdk-lib.aws_amplifyuibuilder": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AmplifyUIBuilder"
},
"java": {
"package": "software.amazon.awscdk.services.amplifyuibuilder"
},
"python": {
"module": "aws_cdk.aws_amplifyuibuilder"
}
}
},
"aws-cdk-lib.aws_apigateway": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.APIGateway"
},
"java": {
"package": "software.amazon.awscdk.services.apigateway"
},
"python": {
"module": "aws_cdk.aws_apigateway"
}
}
},
"aws-cdk-lib.aws_apigatewayv2": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Apigatewayv2"
},
"java": {
"package": "software.amazon.awscdk.services.apigatewayv2"
},
"python": {
"module": "aws_cdk.aws_apigatewayv2"
}
}
},
"aws-cdk-lib.aws_appconfig": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AppConfig"
},
"java": {
"package": "software.amazon.awscdk.services.appconfig"
},
"python": {
"module": "aws_cdk.aws_appconfig"
}
}
},
"aws-cdk-lib.aws_appflow": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AppFlow"
},
"java": {
"package": "software.amazon.awscdk.services.appflow"
},
"python": {
"module": "aws_cdk.aws_appflow"
}
}
},
"aws-cdk-lib.aws_appintegrations": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AppIntegrations"
},
"java": {
"package": "software.amazon.awscdk.services.appintegrations"
},
"python": {
"module": "aws_cdk.aws_appintegrations"
}
}
},
"aws-cdk-lib.aws_applicationautoscaling": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ApplicationAutoScaling"
},
"java": {
"package": "software.amazon.awscdk.services.applicationautoscaling"
},
"python": {
"module": "aws_cdk.aws_applicationautoscaling"
}
}
},
"aws-cdk-lib.aws_applicationinsights": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ApplicationInsights"
},
"java": {
"package": "software.amazon.awscdk.services.applicationinsights"
},
"python": {
"module": "aws_cdk.aws_applicationinsights"
}
}
},
"aws-cdk-lib.aws_appmesh": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AppMesh"
},
"java": {
"package": "software.amazon.awscdk.services.appmesh"
},
"python": {
"module": "aws_cdk.aws_appmesh"
}
}
},
"aws-cdk-lib.aws_apprunner": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AppRunner"
},
"java": {
"package": "software.amazon.awscdk.services.apprunner"
},
"python": {
"module": "aws_cdk.aws_apprunner"
}
}
},
"aws-cdk-lib.aws_appstream": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AppStream"
},
"java": {
"package": "software.amazon.awscdk.services.appstream"
},
"python": {
"module": "aws_cdk.aws_appstream"
}
}
},
"aws-cdk-lib.aws_appsync": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AppSync"
},
"java": {
"package": "software.amazon.awscdk.services.appsync"
},
"python": {
"module": "aws_cdk.aws_appsync"
}
}
},
"aws-cdk-lib.aws_aps": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.APS"
},
"java": {
"package": "software.amazon.awscdk.services.aps"
},
"python": {
"module": "aws_cdk.aws_aps"
}
}
},
"aws-cdk-lib.aws_athena": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Athena"
},
"java": {
"package": "software.amazon.awscdk.services.athena"
},
"python": {
"module": "aws_cdk.aws_athena"
}
}
},
"aws-cdk-lib.aws_auditmanager": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AuditManager"
},
"java": {
"package": "software.amazon.awscdk.services.auditmanager"
},
"python": {
"module": "aws_cdk.aws_auditmanager"
}
}
},
"aws-cdk-lib.aws_autoscaling": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AutoScaling"
},
"java": {
"package": "software.amazon.awscdk.services.autoscaling"
},
"python": {
"module": "aws_cdk.aws_autoscaling"
}
}
},
"aws-cdk-lib.aws_autoscaling_common": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AutoScaling.Common"
},
"java": {
"package": "software.amazon.awscdk.services.autoscaling.common"
},
"python": {
"module": "aws_cdk.aws_autoscaling_common"
}
}
},
"aws-cdk-lib.aws_autoscaling_hooktargets": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AutoScaling.HookTargets"
},
"java": {
"package": "software.amazon.awscdk.services.autoscaling.hooktargets"
},
"python": {
"module": "aws_cdk.aws_autoscaling_hooktargets"
}
}
},
"aws-cdk-lib.aws_autoscalingplans": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.AutoScalingPlans"
},
"java": {
"package": "software.amazon.awscdk.services.autoscalingplans"
},
"python": {
"module": "aws_cdk.aws_autoscalingplans"
}
}
},
"aws-cdk-lib.aws_backup": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Backup"
},
"java": {
"package": "software.amazon.awscdk.services.backup"
},
"python": {
"module": "aws_cdk.aws_backup"
}
}
},
"aws-cdk-lib.aws_batch": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Batch"
},
"java": {
"package": "software.amazon.awscdk.services.batch"
},
"python": {
"module": "aws_cdk.aws_batch"
}
}
},
"aws-cdk-lib.aws_budgets": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Budgets"
},
"java": {
"package": "software.amazon.awscdk.services.budgets"
},
"python": {
"module": "aws_cdk.aws_budgets"
}
}
},
"aws-cdk-lib.aws_cassandra": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Cassandra"
},
"java": {
"package": "software.amazon.awscdk.services.cassandra"
},
"python": {
"module": "aws_cdk.aws_cassandra"
}
}
},
"aws-cdk-lib.aws_ce": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CE"
},
"java": {
"package": "software.amazon.awscdk.services.ce"
},
"python": {
"module": "aws_cdk.aws_ce"
}
}
},
"aws-cdk-lib.aws_certificatemanager": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CertificateManager"
},
"java": {
"package": "software.amazon.awscdk.services.certificatemanager"
},
"python": {
"module": "aws_cdk.aws_certificatemanager"
}
}
},
"aws-cdk-lib.aws_chatbot": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Chatbot"
},
"java": {
"package": "software.amazon.awscdk.services.chatbot"
},
"python": {
"module": "aws_cdk.aws_chatbot"
}
}
},
"aws-cdk-lib.aws_cloud9": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Cloud9"
},
"java": {
"package": "software.amazon.awscdk.services.cloud9"
},
"python": {
"module": "aws_cdk.aws_cloud9"
}
}
},
"aws-cdk-lib.aws_cloudformation": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CloudFormation"
},
"java": {
"package": "software.amazon.awscdk.services.cloudformation"
},
"python": {
"module": "aws_cdk.aws_cloudformation"
}
}
},
"aws-cdk-lib.aws_cloudfront": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CloudFront"
},
"java": {
"package": "software.amazon.awscdk.services.cloudfront"
},
"python": {
"module": "aws_cdk.aws_cloudfront"
}
}
},
"aws-cdk-lib.aws_cloudfront.experimental": {},
"aws-cdk-lib.aws_cloudfront_origins": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CloudFront.Origins"
},
"java": {
"package": "software.amazon.awscdk.services.cloudfront.origins"
},
"python": {
"module": "aws_cdk.aws_cloudfront_origins"
}
}
},
"aws-cdk-lib.aws_cloudtrail": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CloudTrail"
},
"java": {
"package": "software.amazon.awscdk.services.cloudtrail"
},
"python": {
"module": "aws_cdk.aws_cloudtrail"
}
}
},
"aws-cdk-lib.aws_cloudwatch": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CloudWatch"
},
"java": {
"package": "software.amazon.awscdk.services.cloudwatch"
},
"python": {
"module": "aws_cdk.aws_cloudwatch"
}
}
},
"aws-cdk-lib.aws_cloudwatch_actions": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CloudWatch.Actions"
},
"java": {
"package": "software.amazon.awscdk.services.cloudwatch.actions"
},
"python": {
"module": "aws_cdk.aws_cloudwatch_actions"
}
}
},
"aws-cdk-lib.aws_codeartifact": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CodeArtifact"
},
"java": {
"package": "software.amazon.awscdk.services.codeartifact"
},
"python": {
"module": "aws_cdk.aws_codeartifact"
}
}
},
"aws-cdk-lib.aws_codebuild": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CodeBuild"
},
"java": {
"package": "software.amazon.awscdk.services.codebuild"
},
"python": {
"module": "aws_cdk.aws_codebuild"
}
}
},
"aws-cdk-lib.aws_codecommit": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CodeCommit"
},
"java": {
"package": "software.amazon.awscdk.services.codecommit"
},
"python": {
"module": "aws_cdk.aws_codecommit"
}
}
},
"aws-cdk-lib.aws_codedeploy": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CodeDeploy"
},
"java": {
"package": "software.amazon.awscdk.services.codedeploy"
},
"python": {
"module": "aws_cdk.aws_codedeploy"
}
}
},
"aws-cdk-lib.aws_codeguruprofiler": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CodeGuruProfiler"
},
"java": {
"package": "software.amazon.awscdk.services.codeguruprofiler"
},
"python": {
"module": "aws_cdk.aws_codeguruprofiler"
}
}
},
"aws-cdk-lib.aws_codegurureviewer": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CodeGuruReviewer"
},
"java": {
"package": "software.amazon.awscdk.services.codegurureviewer"
},
"python": {
"module": "aws_cdk.aws_codegurureviewer"
}
}
},
"aws-cdk-lib.aws_codepipeline": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CodePipeline"
},
"java": {
"package": "software.amazon.awscdk.services.codepipeline"
},
"python": {
"module": "aws_cdk.aws_codepipeline"
}
}
},
"aws-cdk-lib.aws_codepipeline_actions": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CodePipeline.Actions"
},
"java": {
"package": "software.amazon.awscdk.services.codepipeline.actions"
},
"python": {
"module": "aws_cdk.aws_codepipeline_actions"
}
}
},
"aws-cdk-lib.aws_codestar": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Codestar"
},
"java": {
"package": "software.amazon.awscdk.services.codestar"
},
"python": {
"module": "aws_cdk.aws_codestar"
}
}
},
"aws-cdk-lib.aws_codestarconnections": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CodeStarConnections"
},
"java": {
"package": "software.amazon.awscdk.services.codestarconnections"
},
"python": {
"module": "aws_cdk.aws_codestarconnections"
}
}
},
"aws-cdk-lib.aws_codestarnotifications": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CodeStarNotifications"
},
"java": {
"package": "software.amazon.awscdk.services.codestarnotifications"
},
"python": {
"module": "aws_cdk.aws_codestarnotifications"
}
}
},
"aws-cdk-lib.aws_cognito": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Cognito"
},
"java": {
"package": "software.amazon.awscdk.services.cognito"
},
"python": {
"module": "aws_cdk.aws_cognito"
}
}
},
"aws-cdk-lib.aws_config": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Config"
},
"java": {
"package": "software.amazon.awscdk.services.config"
},
"python": {
"module": "aws_cdk.aws_config"
}
}
},
"aws-cdk-lib.aws_connect": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Connect"
},
"java": {
"package": "software.amazon.awscdk.services.connect"
},
"python": {
"module": "aws_cdk.aws_connect"
}
}
},
"aws-cdk-lib.aws_cur": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CUR"
},
"java": {
"package": "software.amazon.awscdk.services.cur"
},
"python": {
"module": "aws_cdk.aws_cur"
}
}
},
"aws-cdk-lib.aws_customerprofiles": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.CustomerProfiles"
},
"java": {
"package": "software.amazon.awscdk.services.customerprofiles"
},
"python": {
"module": "aws_cdk.aws_customerprofiles"
}
}
},
"aws-cdk-lib.aws_databrew": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.DataBrew"
},
"java": {
"package": "software.amazon.awscdk.services.databrew"
},
"python": {
"module": "aws_cdk.aws_databrew"
}
}
},
"aws-cdk-lib.aws_datapipeline": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.DataPipeline"
},
"java": {
"package": "software.amazon.awscdk.services.datapipeline"
},
"python": {
"module": "aws_cdk.aws_datapipeline"
}
}
},
"aws-cdk-lib.aws_datasync": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.DataSync"
},
"java": {
"package": "software.amazon.awscdk.services.datasync"
},
"python": {
"module": "aws_cdk.aws_datasync"
}
}
},
"aws-cdk-lib.aws_dax": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.DAX"
},
"java": {
"package": "software.amazon.awscdk.services.dax"
},
"python": {
"module": "aws_cdk.aws_dax"
}
}
},
"aws-cdk-lib.aws_detective": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Detective"
},
"java": {
"package": "software.amazon.awscdk.services.detective"
},
"python": {
"module": "aws_cdk.aws_detective"
}
}
},
"aws-cdk-lib.aws_devopsguru": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.DevOpsGuru"
},
"java": {
"package": "software.amazon.awscdk.services.devopsguru"
},
"python": {
"module": "aws_cdk.aws_devopsguru"
}
}
},
"aws-cdk-lib.aws_directoryservice": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.DirectoryService"
},
"java": {
"package": "software.amazon.awscdk.services.directoryservice"
},
"python": {
"module": "aws_cdk.aws_directoryservice"
}
}
},
"aws-cdk-lib.aws_dlm": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.DLM"
},
"java": {
"package": "software.amazon.awscdk.services.dlm"
},
"python": {
"module": "aws_cdk.aws_dlm"
}
}
},
"aws-cdk-lib.aws_dms": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.DMS"
},
"java": {
"package": "software.amazon.awscdk.services.dms"
},
"python": {
"module": "aws_cdk.aws_dms"
}
}
},
"aws-cdk-lib.aws_docdb": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.DocDB"
},
"java": {
"package": "software.amazon.awscdk.services.docdb"
},
"python": {
"module": "aws_cdk.aws_docdb"
}
}
},
"aws-cdk-lib.aws_dynamodb": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.DynamoDB"
},
"java": {
"package": "software.amazon.awscdk.services.dynamodb"
},
"python": {
"module": "aws_cdk.aws_dynamodb"
}
}
},
"aws-cdk-lib.aws_ec2": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.EC2"
},
"java": {
"package": "software.amazon.awscdk.services.ec2"
},
"python": {
"module": "aws_cdk.aws_ec2"
}
}
},
"aws-cdk-lib.aws_ecr": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ECR"
},
"java": {
"package": "software.amazon.awscdk.services.ecr"
},
"python": {
"module": "aws_cdk.aws_ecr"
}
}
},
"aws-cdk-lib.aws_ecr_assets": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Ecr.Assets"
},
"java": {
"package": "software.amazon.awscdk.services.ecr.assets"
},
"python": {
"module": "aws_cdk.aws_ecr_assets"
}
}
},
"aws-cdk-lib.aws_ecs": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ECS"
},
"java": {
"package": "software.amazon.awscdk.services.ecs"
},
"python": {
"module": "aws_cdk.aws_ecs"
}
}
},
"aws-cdk-lib.aws_ecs_patterns": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ECS.Patterns"
},
"java": {
"package": "software.amazon.awscdk.services.ecs.patterns"
},
"python": {
"module": "aws_cdk.aws_ecs_patterns"
}
}
},
"aws-cdk-lib.aws_efs": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.EFS"
},
"java": {
"package": "software.amazon.awscdk.services.efs"
},
"python": {
"module": "aws_cdk.aws_efs"
}
}
},
"aws-cdk-lib.aws_eks": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.EKS"
},
"java": {
"package": "software.amazon.awscdk.services.eks"
},
"python": {
"module": "aws_cdk.aws_eks"
}
}
},
"aws-cdk-lib.aws_elasticache": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ElastiCache"
},
"java": {
"package": "software.amazon.awscdk.services.elasticache"
},
"python": {
"module": "aws_cdk.aws_elasticache"
}
}
},
"aws-cdk-lib.aws_elasticbeanstalk": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ElasticBeanstalk"
},
"java": {
"package": "software.amazon.awscdk.services.elasticbeanstalk"
},
"python": {
"module": "aws_cdk.aws_elasticbeanstalk"
}
}
},
"aws-cdk-lib.aws_elasticloadbalancing": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ElasticLoadBalancing"
},
"java": {
"package": "software.amazon.awscdk.services.elasticloadbalancing"
},
"python": {
"module": "aws_cdk.aws_elasticloadbalancing"
}
}
},
"aws-cdk-lib.aws_elasticloadbalancingv2": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2"
},
"java": {
"package": "software.amazon.awscdk.services.elasticloadbalancingv2"
},
"python": {
"module": "aws_cdk.aws_elasticloadbalancingv2"
}
}
},
"aws-cdk-lib.aws_elasticloadbalancingv2_actions": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2.Actions"
},
"java": {
"package": "software.amazon.awscdk.services.elasticloadbalancingv2.actions"
},
"python": {
"module": "aws_cdk.aws_elasticloadbalancingv2_actions"
}
}
},
"aws-cdk-lib.aws_elasticloadbalancingv2_targets": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ElasticLoadBalancingV2.Targets"
},
"java": {
"package": "software.amazon.awscdk.services.elasticloadbalancingv2.targets"
},
"python": {
"module": "aws_cdk.aws_elasticloadbalancingv2_targets"
}
}
},
"aws-cdk-lib.aws_elasticsearch": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Elasticsearch"
},
"java": {
"package": "software.amazon.awscdk.services.elasticsearch"
},
"python": {
"module": "aws_cdk.aws_elasticsearch"
}
}
},
"aws-cdk-lib.aws_emr": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.EMR"
},
"java": {
"package": "software.amazon.awscdk.services.emr"
},
"python": {
"module": "aws_cdk.aws_emr"
}
}
},
"aws-cdk-lib.aws_emrcontainers": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.EMRContainers"
},
"java": {
"package": "software.amazon.awscdk.services.emrcontainers"
},
"python": {
"module": "aws_cdk.aws_emrcontainers"
}
}
},
"aws-cdk-lib.aws_events": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Events"
},
"java": {
"package": "software.amazon.awscdk.services.events"
},
"python": {
"module": "aws_cdk.aws_events"
}
}
},
"aws-cdk-lib.aws_events_targets": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Events.Targets"
},
"java": {
"package": "software.amazon.awscdk.services.events.targets"
},
"python": {
"module": "aws_cdk.aws_events_targets"
}
}
},
"aws-cdk-lib.aws_eventschemas": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.EventSchemas"
},
"java": {
"package": "software.amazon.awscdk.services.eventschemas"
},
"python": {
"module": "aws_cdk.aws_eventschemas"
}
}
},
"aws-cdk-lib.aws_evidently": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Evidently"
},
"java": {
"package": "software.amazon.awscdk.services.evidently"
},
"python": {
"module": "aws_cdk.aws_evidently"
}
}
},
"aws-cdk-lib.aws_finspace": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.FinSpace"
},
"java": {
"package": "software.amazon.awscdk.services.finspace"
},
"python": {
"module": "aws_cdk.aws_finspace"
}
}
},
"aws-cdk-lib.aws_fis": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.FIS"
},
"java": {
"package": "software.amazon.awscdk.services.fis"
},
"python": {
"module": "aws_cdk.aws_fis"
}
}
},
"aws-cdk-lib.aws_fms": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.FMS"
},
"java": {
"package": "software.amazon.awscdk.services.fms"
},
"python": {
"module": "aws_cdk.aws_fms"
}
}
},
"aws-cdk-lib.aws_frauddetector": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.FraudDetector"
},
"java": {
"package": "software.amazon.awscdk.services.frauddetector"
},
"python": {
"module": "aws_cdk.aws_frauddetector"
}
}
},
"aws-cdk-lib.aws_fsx": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.FSx"
},
"java": {
"package": "software.amazon.awscdk.services.fsx"
},
"python": {
"module": "aws_cdk.aws_fsx"
}
}
},
"aws-cdk-lib.aws_gamelift": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.GameLift"
},
"java": {
"package": "software.amazon.awscdk.services.gamelift"
},
"python": {
"module": "aws_cdk.aws_gamelift"
}
}
},
"aws-cdk-lib.aws_globalaccelerator": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.GlobalAccelerator"
},
"java": {
"package": "software.amazon.awscdk.services.globalaccelerator"
},
"python": {
"module": "aws_cdk.aws_globalaccelerator"
}
}
},
"aws-cdk-lib.aws_globalaccelerator_endpoints": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.GlobalAccelerator.Endpoints"
},
"java": {
"package": "software.amazon.awscdk.services.globalaccelerator.endpoints"
},
"python": {
"module": "aws_cdk.aws_globalaccelerator_endpoints"
}
}
},
"aws-cdk-lib.aws_glue": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Glue"
},
"java": {
"package": "software.amazon.awscdk.services.glue"
},
"python": {
"module": "aws_cdk.aws_glue"
}
}
},
"aws-cdk-lib.aws_greengrass": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Greengrass"
},
"java": {
"package": "software.amazon.awscdk.services.greengrass"
},
"python": {
"module": "aws_cdk.aws_greengrass"
}
}
},
"aws-cdk-lib.aws_greengrassv2": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.GreengrassV2"
},
"java": {
"package": "software.amazon.awscdk.services.greengrassv2"
},
"python": {
"module": "aws_cdk.aws_greengrassv2"
}
}
},
"aws-cdk-lib.aws_groundstation": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.GroundStation"
},
"java": {
"package": "software.amazon.awscdk.services.groundstation"
},
"python": {
"module": "aws_cdk.aws_groundstation"
}
}
},
"aws-cdk-lib.aws_guardduty": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.GuardDuty"
},
"java": {
"package": "software.amazon.awscdk.services.guardduty"
},
"python": {
"module": "aws_cdk.aws_guardduty"
}
}
},
"aws-cdk-lib.aws_healthlake": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.HealthLake"
},
"java": {
"package": "software.amazon.awscdk.services.healthlake"
},
"python": {
"module": "aws_cdk.aws_healthlake"
}
}
},
"aws-cdk-lib.aws_iam": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.IAM"
},
"java": {
"package": "software.amazon.awscdk.services.iam"
},
"python": {
"module": "aws_cdk.aws_iam"
}
}
},
"aws-cdk-lib.aws_imagebuilder": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ImageBuilder"
},
"java": {
"package": "software.amazon.awscdk.services.imagebuilder"
},
"python": {
"module": "aws_cdk.aws_imagebuilder"
}
}
},
"aws-cdk-lib.aws_inspector": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Inspector"
},
"java": {
"package": "software.amazon.awscdk.services.inspector"
},
"python": {
"module": "aws_cdk.aws_inspector"
}
}
},
"aws-cdk-lib.aws_iot": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.IoT"
},
"java": {
"package": "software.amazon.awscdk.services.iot"
},
"python": {
"module": "aws_cdk.aws_iot"
}
}
},
"aws-cdk-lib.aws_iot1click": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.IoT1Click"
},
"java": {
"package": "software.amazon.awscdk.services.iot1click"
},
"python": {
"module": "aws_cdk.aws_iot1click"
}
}
},
"aws-cdk-lib.aws_iotanalytics": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.IoTAnalytics"
},
"java": {
"package": "software.amazon.awscdk.services.iotanalytics"
},
"python": {
"module": "aws_cdk.aws_iotanalytics"
}
}
},
"aws-cdk-lib.aws_iotcoredeviceadvisor": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.IoTCoreDeviceAdvisor"
},
"java": {
"package": "software.amazon.awscdk.services.iotcoredeviceadvisor"
},
"python": {
"module": "aws_cdk.aws_iotcoredeviceadvisor"
}
}
},
"aws-cdk-lib.aws_iotevents": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.IoTEvents"
},
"java": {
"package": "software.amazon.awscdk.services.iotevents"
},
"python": {
"module": "aws_cdk.aws_iotevents"
}
}
},
"aws-cdk-lib.aws_iotfleethub": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.IoTFleetHub"
},
"java": {
"package": "software.amazon.awscdk.services.iotfleethub"
},
"python": {
"module": "aws_cdk.aws_iotfleethub"
}
}
},
"aws-cdk-lib.aws_iotsitewise": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.IoTSiteWise"
},
"java": {
"package": "software.amazon.awscdk.services.iotsitewise"
},
"python": {
"module": "aws_cdk.aws_iotsitewise"
}
}
},
"aws-cdk-lib.aws_iotthingsgraph": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.IoTThingsGraph"
},
"java": {
"package": "software.amazon.awscdk.services.iotthingsgraph"
},
"python": {
"module": "aws_cdk.aws_iotthingsgraph"
}
}
},
"aws-cdk-lib.aws_iotwireless": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.IoTWireless"
},
"java": {
"package": "software.amazon.awscdk.services.iotwireless"
},
"python": {
"module": "aws_cdk.aws_iotwireless"
}
}
},
"aws-cdk-lib.aws_ivs": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Ivs"
},
"java": {
"package": "software.amazon.awscdk.services.ivs"
},
"python": {
"module": "aws_cdk.aws_ivs"
}
}
},
"aws-cdk-lib.aws_kendra": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Kendra"
},
"java": {
"package": "software.amazon.awscdk.services.kendra"
},
"python": {
"module": "aws_cdk.aws_kendra"
}
}
},
"aws-cdk-lib.aws_kinesis": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Kinesis"
},
"java": {
"package": "software.amazon.awscdk.services.kinesis"
},
"python": {
"module": "aws_cdk.aws_kinesis"
}
}
},
"aws-cdk-lib.aws_kinesisanalytics": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.KinesisAnalytics"
},
"java": {
"package": "software.amazon.awscdk.services.kinesisanalytics"
},
"python": {
"module": "aws_cdk.aws_kinesisanalytics"
}
}
},
"aws-cdk-lib.aws_kinesisfirehose": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.KinesisFirehose"
},
"java": {
"package": "software.amazon.awscdk.services.kinesisfirehose"
},
"python": {
"module": "aws_cdk.aws_kinesisfirehose"
}
}
},
"aws-cdk-lib.aws_kms": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.KMS"
},
"java": {
"package": "software.amazon.awscdk.services.kms"
},
"python": {
"module": "aws_cdk.aws_kms"
}
}
},
"aws-cdk-lib.aws_lakeformation": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.LakeFormation"
},
"java": {
"package": "software.amazon.awscdk.services.lakeformation"
},
"python": {
"module": "aws_cdk.aws_lakeformation"
}
}
},
"aws-cdk-lib.aws_lambda": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Lambda"
},
"java": {
"package": "software.amazon.awscdk.services.lambda"
},
"python": {
"module": "aws_cdk.aws_lambda"
}
}
},
"aws-cdk-lib.aws_lambda_destinations": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Lambda.Destinations"
},
"java": {
"package": "software.amazon.awscdk.services.lambda.destinations"
},
"python": {
"module": "aws_cdk.aws_lambda_destinations"
}
}
},
"aws-cdk-lib.aws_lambda_event_sources": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Lambda.EventSources"
},
"java": {
"package": "software.amazon.awscdk.services.lambda.eventsources"
},
"python": {
"module": "aws_cdk.aws_lambda_event_sources"
}
}
},
"aws-cdk-lib.aws_lambda_nodejs": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Lambda.Nodejs"
},
"java": {
"package": "software.amazon.awscdk.services.lambda.nodejs"
},
"python": {
"module": "aws_cdk.aws_lambda_nodejs"
}
}
},
"aws-cdk-lib.aws_lex": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Lex"
},
"java": {
"package": "software.amazon.awscdk.services.lex"
},
"python": {
"module": "aws_cdk.aws_lex"
}
}
},
"aws-cdk-lib.aws_licensemanager": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.LicenseManager"
},
"java": {
"package": "software.amazon.awscdk.services.licensemanager"
},
"python": {
"module": "aws_cdk.aws_licensemanager"
}
}
},
"aws-cdk-lib.aws_lightsail": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Lightsail"
},
"java": {
"package": "software.amazon.awscdk.services.lightsail"
},
"python": {
"module": "aws_cdk.aws_lightsail"
}
}
},
"aws-cdk-lib.aws_location": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Location"
},
"java": {
"package": "software.amazon.awscdk.services.location"
},
"python": {
"module": "aws_cdk.aws_location"
}
}
},
"aws-cdk-lib.aws_logs": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Logs"
},
"java": {
"package": "software.amazon.awscdk.services.logs"
},
"python": {
"module": "aws_cdk.aws_logs"
}
}
},
"aws-cdk-lib.aws_logs_destinations": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Logs.Destinations"
},
"java": {
"package": "software.amazon.awscdk.services.logs.destinations"
},
"python": {
"module": "aws_cdk.aws_logs_destinations"
}
}
},
"aws-cdk-lib.aws_lookoutequipment": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.LookoutEquipment"
},
"java": {
"package": "software.amazon.awscdk.services.lookoutequipment"
},
"python": {
"module": "aws_cdk.aws_lookoutequipment"
}
}
},
"aws-cdk-lib.aws_lookoutmetrics": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.LookoutMetrics"
},
"java": {
"package": "software.amazon.awscdk.services.lookoutmetrics"
},
"python": {
"module": "aws_cdk.aws_lookoutmetrics"
}
}
},
"aws-cdk-lib.aws_lookoutvision": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.LookoutVision"
},
"java": {
"package": "software.amazon.awscdk.services.lookoutvision"
},
"python": {
"module": "aws_cdk.aws_lookoutvision"
}
}
},
"aws-cdk-lib.aws_macie": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Macie"
},
"java": {
"package": "software.amazon.awscdk.services.macie"
},
"python": {
"module": "aws_cdk.aws_macie"
}
}
},
"aws-cdk-lib.aws_managedblockchain": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ManagedBlockchain"
},
"java": {
"package": "software.amazon.awscdk.services.managedblockchain"
},
"python": {
"module": "aws_cdk.aws_managedblockchain"
}
}
},
"aws-cdk-lib.aws_mediaconnect": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.MediaConnect"
},
"java": {
"package": "software.amazon.awscdk.services.mediaconnect"
},
"python": {
"module": "aws_cdk.aws_mediaconnect"
}
}
},
"aws-cdk-lib.aws_mediaconvert": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.MediaConvert"
},
"java": {
"package": "software.amazon.awscdk.services.mediaconvert"
},
"python": {
"module": "aws_cdk.aws_mediaconvert"
}
}
},
"aws-cdk-lib.aws_medialive": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.MediaLive"
},
"java": {
"package": "software.amazon.awscdk.services.medialive"
},
"python": {
"module": "aws_cdk.aws_medialive"
}
}
},
"aws-cdk-lib.aws_mediapackage": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.MediaPackage"
},
"java": {
"package": "software.amazon.awscdk.services.mediapackage"
},
"python": {
"module": "aws_cdk.aws_mediapackage"
}
}
},
"aws-cdk-lib.aws_mediastore": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.MediaStore"
},
"java": {
"package": "software.amazon.awscdk.services.mediastore"
},
"python": {
"module": "aws_cdk.aws_mediastore"
}
}
},
"aws-cdk-lib.aws_memorydb": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.MemoryDB"
},
"java": {
"package": "software.amazon.awscdk.services.memorydb"
},
"python": {
"module": "aws_cdk.aws_memorydb"
}
}
},
"aws-cdk-lib.aws_msk": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.MSK"
},
"java": {
"package": "software.amazon.awscdk.services.msk"
},
"python": {
"module": "aws_cdk.aws_msk"
}
}
},
"aws-cdk-lib.aws_mwaa": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.MWAA"
},
"java": {
"package": "software.amazon.awscdk.services.mwaa"
},
"python": {
"module": "aws_cdk.aws_mwaa"
}
}
},
"aws-cdk-lib.aws_neptune": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Neptune"
},
"java": {
"package": "software.amazon.awscdk.services.neptune"
},
"python": {
"module": "aws_cdk.aws_neptune"
}
}
},
"aws-cdk-lib.aws_networkfirewall": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.NetworkFirewall"
},
"java": {
"package": "software.amazon.awscdk.services.networkfirewall"
},
"python": {
"module": "aws_cdk.aws_networkfirewall"
}
}
},
"aws-cdk-lib.aws_networkmanager": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.NetworkManager"
},
"java": {
"package": "software.amazon.awscdk.services.networkmanager"
},
"python": {
"module": "aws_cdk.aws_networkmanager"
}
}
},
"aws-cdk-lib.aws_nimblestudio": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.NimbleStudio"
},
"java": {
"package": "software.amazon.awscdk.services.nimblestudio"
},
"python": {
"module": "aws_cdk.aws_nimblestudio"
}
}
},
"aws-cdk-lib.aws_opensearchservice": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.OpenSearchService"
},
"java": {
"package": "software.amazon.awscdk.services.opensearchservice"
},
"python": {
"module": "aws_cdk.aws_opensearchservice"
}
}
},
"aws-cdk-lib.aws_opsworks": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.OpsWorks"
},
"java": {
"package": "software.amazon.awscdk.services.opsworks"
},
"python": {
"module": "aws_cdk.aws_opsworks"
}
}
},
"aws-cdk-lib.aws_opsworkscm": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.OpsWorksCM"
},
"java": {
"package": "software.amazon.awscdk.services.opsworkscm"
},
"python": {
"module": "aws_cdk.aws_opsworkscm"
}
}
},
"aws-cdk-lib.aws_panorama": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Panorama"
},
"java": {
"package": "software.amazon.awscdk.services.panorama"
},
"python": {
"module": "aws_cdk.aws_panorama"
}
}
},
"aws-cdk-lib.aws_pinpoint": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Pinpoint"
},
"java": {
"package": "software.amazon.awscdk.services.pinpoint"
},
"python": {
"module": "aws_cdk.aws_pinpoint"
}
}
},
"aws-cdk-lib.aws_pinpointemail": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.PinpointEmail"
},
"java": {
"package": "software.amazon.awscdk.services.pinpointemail"
},
"python": {
"module": "aws_cdk.aws_pinpointemail"
}
}
},
"aws-cdk-lib.aws_qldb": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.QLDB"
},
"java": {
"package": "software.amazon.awscdk.services.qldb"
},
"python": {
"module": "aws_cdk.aws_qldb"
}
}
},
"aws-cdk-lib.aws_quicksight": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.QuickSight"
},
"java": {
"package": "software.amazon.awscdk.services.quicksight"
},
"python": {
"module": "aws_cdk.aws_quicksight"
}
}
},
"aws-cdk-lib.aws_ram": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.RAM"
},
"java": {
"package": "software.amazon.awscdk.services.ram"
},
"python": {
"module": "aws_cdk.aws_ram"
}
}
},
"aws-cdk-lib.aws_rds": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.RDS"
},
"java": {
"package": "software.amazon.awscdk.services.rds"
},
"python": {
"module": "aws_cdk.aws_rds"
}
}
},
"aws-cdk-lib.aws_redshift": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Redshift"
},
"java": {
"package": "software.amazon.awscdk.services.redshift"
},
"python": {
"module": "aws_cdk.aws_redshift"
}
}
},
"aws-cdk-lib.aws_refactorspaces": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.RefactorSpaces"
},
"java": {
"package": "software.amazon.awscdk.services.refactorspaces"
},
"python": {
"module": "aws_cdk.aws_refactorspaces"
}
}
},
"aws-cdk-lib.aws_rekognition": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Rekognition"
},
"java": {
"package": "software.amazon.awscdk.services.rekognition"
},
"python": {
"module": "aws_cdk.aws_rekognition"
}
}
},
"aws-cdk-lib.aws_resiliencehub": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ResilienceHub"
},
"java": {
"package": "software.amazon.awscdk.services.resiliencehub"
},
"python": {
"module": "aws_cdk.aws_resiliencehub"
}
}
},
"aws-cdk-lib.aws_resourcegroups": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ResourceGroups"
},
"java": {
"package": "software.amazon.awscdk.services.resourcegroups"
},
"python": {
"module": "aws_cdk.aws_resourcegroups"
}
}
},
"aws-cdk-lib.aws_robomaker": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.RoboMaker"
},
"java": {
"package": "software.amazon.awscdk.services.robomaker"
},
"python": {
"module": "aws_cdk.aws_robomaker"
}
}
},
"aws-cdk-lib.aws_route53": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Route53"
},
"java": {
"package": "software.amazon.awscdk.services.route53"
},
"python": {
"module": "aws_cdk.aws_route53"
}
}
},
"aws-cdk-lib.aws_route53_patterns": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Route53.Patterns"
},
"java": {
"package": "software.amazon.awscdk.services.route53.patterns"
},
"python": {
"module": "aws_cdk.aws_route53_patterns"
}
}
},
"aws-cdk-lib.aws_route53_targets": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Route53.Targets"
},
"java": {
"package": "software.amazon.awscdk.services.route53.targets"
},
"python": {
"module": "aws_cdk.aws_route53_targets"
}
}
},
"aws-cdk-lib.aws_route53recoverycontrol": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Route53RecoveryControl"
},
"java": {
"package": "software.amazon.awscdk.services.route53recoverycontrol"
},
"python": {
"module": "aws_cdk.aws_route53recoverycontrol"
}
}
},
"aws-cdk-lib.aws_route53recoveryreadiness": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Route53RecoveryReadiness"
},
"java": {
"package": "software.amazon.awscdk.services.route53recoveryreadiness"
},
"python": {
"module": "aws_cdk.aws_route53recoveryreadiness"
}
}
},
"aws-cdk-lib.aws_route53resolver": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Route53Resolver"
},
"java": {
"package": "software.amazon.awscdk.services.route53resolver"
},
"python": {
"module": "aws_cdk.aws_route53resolver"
}
}
},
"aws-cdk-lib.aws_rum": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.RUM"
},
"java": {
"package": "software.amazon.awscdk.services.rum"
},
"python": {
"module": "aws_cdk.aws_rum"
}
}
},
"aws-cdk-lib.aws_s3": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.S3"
},
"java": {
"package": "software.amazon.awscdk.services.s3"
},
"python": {
"module": "aws_cdk.aws_s3"
}
}
},
"aws-cdk-lib.aws_s3_assets": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.S3.Assets"
},
"java": {
"package": "software.amazon.awscdk.services.s3.assets"
},
"python": {
"module": "aws_cdk.aws_s3_assets"
}
}
},
"aws-cdk-lib.aws_s3_deployment": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.S3.Deployment"
},
"java": {
"package": "software.amazon.awscdk.services.s3.deployment"
},
"python": {
"module": "aws_cdk.aws_s3_deployment"
}
}
},
"aws-cdk-lib.aws_s3_notifications": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.S3.Notifications"
},
"java": {
"package": "software.amazon.awscdk.services.s3.notifications"
},
"python": {
"module": "aws_cdk.aws_s3_notifications"
}
}
},
"aws-cdk-lib.aws_s3objectlambda": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.S3ObjectLambda"
},
"java": {
"package": "software.amazon.awscdk.services.s3objectlambda"
},
"python": {
"module": "aws_cdk.aws_s3objectlambda"
}
}
},
"aws-cdk-lib.aws_s3outposts": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.S3Outposts"
},
"java": {
"package": "software.amazon.awscdk.services.s3outposts"
},
"python": {
"module": "aws_cdk.aws_s3outposts"
}
}
},
"aws-cdk-lib.aws_sagemaker": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Sagemaker"
},
"java": {
"package": "software.amazon.awscdk.services.sagemaker"
},
"python": {
"module": "aws_cdk.aws_sagemaker"
}
}
},
"aws-cdk-lib.aws_sam": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SAM"
},
"java": {
"package": "software.amazon.awscdk.services.sam"
},
"python": {
"module": "aws_cdk.aws_sam"
}
}
},
"aws-cdk-lib.aws_sdb": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SDB"
},
"java": {
"package": "software.amazon.awscdk.services.sdb"
},
"python": {
"module": "aws_cdk.aws_sdb"
}
}
},
"aws-cdk-lib.aws_secretsmanager": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SecretsManager"
},
"java": {
"package": "software.amazon.awscdk.services.secretsmanager"
},
"python": {
"module": "aws_cdk.aws_secretsmanager"
}
}
},
"aws-cdk-lib.aws_securityhub": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SecurityHub"
},
"java": {
"package": "software.amazon.awscdk.services.securityhub"
},
"python": {
"module": "aws_cdk.aws_securityhub"
}
}
},
"aws-cdk-lib.aws_servicecatalog": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Servicecatalog"
},
"java": {
"package": "software.amazon.awscdk.services.servicecatalog"
},
"python": {
"module": "aws_cdk.aws_servicecatalog"
}
}
},
"aws-cdk-lib.aws_servicecatalogappregistry": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Servicecatalogappregistry"
},
"java": {
"package": "software.amazon.awscdk.services.servicecatalogappregistry"
},
"python": {
"module": "aws_cdk.aws_servicecatalogappregistry"
}
}
},
"aws-cdk-lib.aws_servicediscovery": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.ServiceDiscovery"
},
"java": {
"package": "software.amazon.awscdk.services.servicediscovery"
},
"python": {
"module": "aws_cdk.aws_servicediscovery"
}
}
},
"aws-cdk-lib.aws_ses": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SES"
},
"java": {
"package": "software.amazon.awscdk.services.ses"
},
"python": {
"module": "aws_cdk.aws_ses"
}
}
},
"aws-cdk-lib.aws_ses_actions": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SES.Actions"
},
"java": {
"package": "software.amazon.awscdk.services.ses.actions"
},
"python": {
"module": "aws_cdk.aws_ses_actions"
}
}
},
"aws-cdk-lib.aws_signer": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Signer"
},
"java": {
"package": "software.amazon.awscdk.services.signer"
},
"python": {
"module": "aws_cdk.aws_signer"
}
}
},
"aws-cdk-lib.aws_sns": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SNS"
},
"java": {
"package": "software.amazon.awscdk.services.sns"
},
"python": {
"module": "aws_cdk.aws_sns"
}
}
},
"aws-cdk-lib.aws_sns_subscriptions": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SNS.Subscriptions"
},
"java": {
"package": "software.amazon.awscdk.services.sns.subscriptions"
},
"python": {
"module": "aws_cdk.aws_sns_subscriptions"
}
}
},
"aws-cdk-lib.aws_sqs": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SQS"
},
"java": {
"package": "software.amazon.awscdk.services.sqs"
},
"python": {
"module": "aws_cdk.aws_sqs"
}
}
},
"aws-cdk-lib.aws_ssm": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SSM"
},
"java": {
"package": "software.amazon.awscdk.services.ssm"
},
"python": {
"module": "aws_cdk.aws_ssm"
}
}
},
"aws-cdk-lib.aws_ssmcontacts": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SSMContacts"
},
"java": {
"package": "software.amazon.awscdk.services.ssmcontacts"
},
"python": {
"module": "aws_cdk.aws_ssmcontacts"
}
}
},
"aws-cdk-lib.aws_ssmincidents": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SSMIncidents"
},
"java": {
"package": "software.amazon.awscdk.services.ssmincidents"
},
"python": {
"module": "aws_cdk.aws_ssmincidents"
}
}
},
"aws-cdk-lib.aws_sso": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.SSO"
},
"java": {
"package": "software.amazon.awscdk.services.sso"
},
"python": {
"module": "aws_cdk.aws_sso"
}
}
},
"aws-cdk-lib.aws_stepfunctions": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.StepFunctions"
},
"java": {
"package": "software.amazon.awscdk.services.stepfunctions"
},
"python": {
"module": "aws_cdk.aws_stepfunctions"
}
}
},
"aws-cdk-lib.aws_stepfunctions_tasks": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.StepFunctions.Tasks"
},
"java": {
"package": "software.amazon.awscdk.services.stepfunctions.tasks"
},
"python": {
"module": "aws_cdk.aws_stepfunctions_tasks"
}
}
},
"aws-cdk-lib.aws_synthetics": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Synthetics"
},
"java": {
"package": "software.amazon.awscdk.services.synthetics"
},
"python": {
"module": "aws_cdk.aws_synthetics"
}
}
},
"aws-cdk-lib.aws_timestream": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Timestream"
},
"java": {
"package": "software.amazon.awscdk.services.timestream"
},
"python": {
"module": "aws_cdk.aws_timestream"
}
}
},
"aws-cdk-lib.aws_transfer": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Transfer"
},
"java": {
"package": "software.amazon.awscdk.services.transfer"
},
"python": {
"module": "aws_cdk.aws_transfer"
}
}
},
"aws-cdk-lib.aws_waf": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.WAF"
},
"java": {
"package": "software.amazon.awscdk.services.waf"
},
"python": {
"module": "aws_cdk.aws_waf"
}
}
},
"aws-cdk-lib.aws_wafregional": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.WAFRegional"
},
"java": {
"package": "software.amazon.awscdk.services.waf.regional"
},
"python": {
"module": "aws_cdk.aws_wafregional"
}
}
},
"aws-cdk-lib.aws_wafv2": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.WAFv2"
},
"java": {
"package": "software.amazon.awscdk.services.wafv2"
},
"python": {
"module": "aws_cdk.aws_wafv2"
}
}
},
"aws-cdk-lib.aws_wisdom": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.Wisdom"
},
"java": {
"package": "software.amazon.awscdk.services.wisdom"
},
"python": {
"module": "aws_cdk.aws_wisdom"
}
}
},
"aws-cdk-lib.aws_workspaces": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.WorkSpaces"
},
"java": {
"package": "software.amazon.awscdk.services.workspaces"
},
"python": {
"module": "aws_cdk.aws_workspaces"
}
}
},
"aws-cdk-lib.aws_xray": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.AWS.XRay"
},
"java": {
"package": "software.amazon.awscdk.services.xray"
},
"python": {
"module": "aws_cdk.aws_xray"
}
}
},
"aws-cdk-lib.cloud_assembly_schema": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.CloudAssembly.Schema"
},
"java": {
"package": "software.amazon.awscdk.cloudassembly.schema"
},
"python": {
"module": "aws_cdk.cloud_assembly_schema"
}
}
},
"aws-cdk-lib.cloudformation_include": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.CloudFormation.Include"
},
"java": {
"package": "software.amazon.awscdk.cloudformation.include"
},
"python": {
"module": "aws_cdk.cloudformation_include"
}
}
},
"aws-cdk-lib.custom_resources": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.CustomResources"
},
"java": {
"package": "software.amazon.awscdk.customresources"
},
"python": {
"module": "aws_cdk.custom_resources"
}
}
},
"aws-cdk-lib.cx_api": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.CXAPI"
},
"java": {
"package": "software.amazon.awscdk.cxapi"
},
"python": {
"module": "aws_cdk.cx_api"
}
}
},
"aws-cdk-lib.lambda_layer_awscli": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.LambdaLayer.AwsCli"
},
"java": {
"package": "software.amazon.awscdk.lambdalayer.awscli"
},
"python": {
"module": "aws_cdk.lambda_layer_awscli"
}
}
},
"aws-cdk-lib.lambda_layer_kubectl": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.LambdaLayer.Kubectl"
},
"java": {
"package": "software.amazon.awscdk.lambdalayer.kubectl"
},
"python": {
"module": "aws_cdk.lambda_layer_kubectl"
}
}
},
"aws-cdk-lib.lambda_layer_node_proxy_agent": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.LambdaLayer.NodeProxyAgent"
},
"java": {
"package": "software.amazon.awscdk.lambda.layer.node.proxy.agent"
},
"python": {
"module": "aws_cdk.lambda_layer_node_proxy_agent"
}
}
},
"aws-cdk-lib.pipelines": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.Pipelines"
},
"java": {
"package": "software.amazon.awscdk.pipelines"
},
"python": {
"module": "aws_cdk.pipelines"
}
}
},
"aws-cdk-lib.region_info": {
"targets": {
"dotnet": {
"namespace": "Amazon.CDK.RegionInfo"
},
"java": {
"package": "software.amazon.awscdk.regioninfo"
},
"python": {
"module": "aws_cdk.region_info"
}
}
}
},
"targets": {
"dotnet": {
"iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
"namespace": "Amazon.CDK",
"packageId": "Amazon.CDK.Lib"
},
"go": {
"moduleName": "github.com/aws/aws-cdk-go",
"packageName": "awscdk"
},
"java": {
"maven": {
"artifactId": "aws-cdk-lib",
"groupId": "software.amazon.awscdk"
},
"package": "software.amazon.awscdk"
},
"js": {
"npm": "aws-cdk-lib"
},
"python": {
"distName": "aws-cdk-lib",
"module": "aws_cdk"
}
}
},
"constructs": {
"targets": {
"dotnet": {
"namespace": "Constructs",
"packageId": "Constructs"
},
"go": {
"moduleName": "github.com/aws/constructs-go"
},
"java": {
"maven": {
"artifactId": "constructs",
"groupId": "software.constructs"
},
"package": "software.constructs"
},
"js": {
"npm": "constructs"
},
"python": {
"distName": "constructs",
"module": "constructs"
}
}
}
},
"description": "AWS CDK GitLab Runner autoscaling on EC2 instances using docker+machine executor.",
"docs": {
"stability": "stable"
},
"homepage": "https://github.com/pepperize/cdk-autoscaling-gitlab-runner.git",
"jsiiVersion": "5.6.22 (build cdb8ab8)",
"keywords": [
"AWS",
"Autoscaling",
"CDK",
"Deployment",
"Docker Machine",
"Docker in Docker",
"EC2",
"Executor",
"GitLab",
"Graviton",
"Runner",
"S3",
"Shared Cache",
"Spot Instances",
"Utilities",
"cdk"
],
"license": "MIT",
"metadata": {
"jsii": {
"pacmak": {
"hasDefaultInterfaces": true
}
},
"tscRootDir": "src"
},
"name": "@pepperize/cdk-autoscaling-gitlab-runner",
"readme": {
"markdown": "[](https://makeapullrequest.com)\n[](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/LICENSE)\n[](https://www.npmjs.com/package/@pepperize/cdk-autoscaling-gitlab-runner)\n[](https://pypi.org/project/pepperize.cdk-autoscaling-gitlab-runner/)\n[](https://www.nuget.org/packages/Pepperize.CDK.AutoscalingGitlabRunner/)\n[](https://s01.oss.sonatype.org/content/repositories/releases/com/pepperize/cdk-autoscaling-gitlab-runner/)\n[](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/actions/workflows/release.yml)\n[](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/releases)\n\n# AWS CDK GitLab Runner autoscaling on EC2\n\nThis project provides a CDK construct to [execute jobs on auto-scaled EC2 instances](https://docs.gitlab.com/runner/configuration/runner_autoscale_aws/index.html) using the [Docker Machine](https://docs.gitlab.com/runner/executors/docker_machine.html) executor.\n\n> Running out of [Runner minutes](https://about.gitlab.com/pricing/),\n> using [Docker-in-Docker (dind)](https://docs.gitlab.com/ee/ci/docker/using_docker_build.html),\n> speed up jobs with [shared S3 Cache](https://docs.gitlab.com/runner/configuration/autoscale.html#distributed-runners-caching),\n> cross compiling/building environment [multiarch](https://hub.docker.com/r/multiarch/qemu-user-static/),\n> cost effective [autoscaling on EC2](https://docs.gitlab.com/runner/configuration/runner_autoscale_aws/#the-runnersmachine-section),\n> deploy directly from AWS accounts (without [AWS Access Key](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys)),\n> running on [Spot instances](https://aws.amazon.com/ec2/spot/),\n> having a bigger [build log size](https://docs.gitlab.com/runner/configuration/advanced-configuration.html)\n\n[](https://constructs.dev/packages/@pepperize/cdk-autoscaling-gitlab-runner)\n\n## Install\n\n### TypeScript\n\n```shell\nnpm install @pepperize/cdk-autoscaling-gitlab-runner\n```\n\nor\n\n```shell\nyarn add @pepperize/cdk-autoscaling-gitlab-runner\n```\n\n### Python\n\n```shell\npip install pepperize.cdk-autoscaling-gitlab-runner\n```\n\n### C# / .Net\n\n```\ndotnet add package Pepperize.CDK.AutoscalingGitlabRunner\n```\n\n### Java\n\n```xml\n\n com.pepperize\n cdk-autoscaling-gitlab-runner\n ${cdkAutoscalingGitlabRunner.version}\n\n```\n\n## Quickstart\n\n1. **Create a new AWS CDK App** in TypeScript with [projen](https://github.com/projen/projen)\n\n ```shell\n mkdir gitlab-runner\n cd gitlab-runner\n git init\n npx projen new awscdk-app-ts\n ```\n\n2. **Configure your project in `.projenrc.js`**\n\n - Add `deps: [\"@pepperize/cdk-autoscaling-gitlab-runner\"],`\n\n3. **Update project files and install dependencies**\n\n ```shell\n npx projen\n ```\n\n4. **Register a new runner**\n\n [Registering runners](https://docs.gitlab.com/runner/register/):\n\n - For a [shared runner](https://docs.gitlab.com/ee/ci/runners/#shared-runners), go to the GitLab Admin Area and click **Overview > Runners**\n - For a [group runner](https://docs.gitlab.com/ee/ci/runners/index.html#group-runners), go to **Settings > CI/CD** and expand the **Runners** section\n - For a [project runner](https://docs.gitlab.com/ee/ci/runners/index.html#specific-runners), go to **Settings > CI/CD** and expand the **Runners** section\n\n _Optionally enable: **Run untagged jobs** [x]\n Indicates whether this runner can pick jobs without tags_\n\n See also _[Registration token vs. Authentication token](https://docs.gitlab.com/ee/api/runners.html#registration-and-authentication-tokens)_\n\n5. **Retrieve a new runner authentication token**\n\n [Register a new runner](https://docs.gitlab.com/ee/api/runners.html#register-a-new-runner)\n\n ```shell\n curl --request POST \"https://gitlab.com/api/v4/runners\" --form \"token=\" --form \"description=gitlab-runner\" --form \"tag_list=pepperize,docker,production\"\n ```\n\n6. **Store runner authentication token in SSM ParameterStore**\n\n [Create a String parameter](https://docs.aws.amazon.com/systems-manager/latest/userguide/param-create-cli.html#param-create-cli-string)\n\n ```shell\n aws ssm put-parameter --name \"/gitlab-runner/token\" --value \"\" --type \"String\"\n ```\n\n7. **Add to your `main.ts`**\n\n ```typescript\n import { Vpc } from \"@aws-cdk/aws-ec2\";\n import { App, Stack } from \"@aws-cdk/core\";\n import { GitlabRunnerAutoscaling } from \"@pepperize/cdk-autoscaling-gitlab-runner\";\n\n const app = new App();\n const stack = new Stack(app, \"GitLabRunnerStack\");\n const vpc = Vpc.fromLookup(app, \"ExistingVpc\", {\n vpcId: \"\",\n });\n const token = StringParameter.fromStringParameterAttributes(stack, \"Token\", {\n parameterName: \"/gitlab-runner/token\",\n });\n new GitlabRunnerAutoscaling(stack, \"GitlabRunner\", {\n network: {\n vpc: vpc,\n },\n runners: [\n {\n token: token,\n configuration: {\n // optionally configure your runner\n },\n },\n ],\n });\n ```\n\n8. **Create service linked role**\n\n _(If requesting spot instances, default: true)_\n\n ```sh\n aws iam create-service-linked-role --aws-service-name spot.amazonaws.com\n ```\n\n9. **Configure the AWS CLI**\n\n - [AWSume](https://awsu.me/)\n - [Configuring the AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html)\n - [AWS Single Sign-On](https://docs.aws.amazon.com/singlesignon/latest/userguide/what-is.html)\n\n10. **Deploy the GitLab Runner**\n\n ```shell\n npm run deploy\n ```\n\n## Example\n\n### Custom cache bucket\n\nBy default, an AWS S3 Bucket is created as GitLab Runner's distributed cache.\nIt's encrypted and public access is blocked.\nA custom S3 Bucket can be configured:\n\n```typescript\nconst cache = new Bucket(this, \"Cache\", {\n // Your custom bucket\n});\nconst token = StringParameter.fromStringParameterAttributes(stack, \"Token\", {\n parameterName: \"/gitlab-runner/token\",\n});\n\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n runners: [\n {\n token: token,\n },\n ],\n cache: { bucket: cache },\n});\n```\n\nSee [example](https://github.com/pepperize/cdk-autoscaling-gitlab-runner-example/blob/main/src/cache.ts),\n[GitlabRunnerAutoscalingCacheProps](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#gitlabrunnerautoscalingcacheprops-)\n\n### Custom EC2 key pair\n\nBy default, the [amazonec2](https://gitlab.com/gitlab-org/ci-cd/docker-machine/-/blob/main/drivers/amazonec2/amazonec2.go) driver will create an EC2 key pair for each runner. To use custom ssh credentials provide a SecretsManager Secret with the private and public key file:\n\n1. [Create a key pair](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-key-pairs.html), download the private key file and remember the created key pair name\n2. Generate the public key file\n ```\n ssh-keygen -f -y\n ```\n3. Create an AWS SecretsManager Secret from the key pair\n ```shell\n aws secretsmanager create-secret --name --secret-string \"{\\\"\\\":\\\"\\\",\\\".pub\\\":\\\"\\\"}\"\n ```\n4. Configure the job runner\n\n ```typescript\n const keyPair = Secret.fromSecretNameV2(stack, \"Secret\", \"CustomEC2KeyPair\");\n\n new GitlabRunnerAutoscaling(this, \"Runner\", {\n runners: [\n {\n keyPair: keyPair,\n configuration: {\n machine: {\n machineOptions: {\n keypairName: \"\",\n },\n },\n },\n },\n ],\n cache: { bucket: cache },\n });\n ```\n\n### Configure Docker Machine\n\nBy default, docker machine is configured to run privileged with `CAP_SYS_ADMIN` to support [Docker-in-Docker using the OverlayFS driver](https://docs.gitlab.com/ee/ci/docker/using_docker_build.html#use-the-overlayfs-driver)\nand cross compiling/building with [multiarch](https://hub.docker.com/r/multiarch/qemu-user-static/).\n\nSee [runners.docker section](https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnersdocker-section)\nin [Advanced configuration](https://docs.gitlab.com/runner/configuration/advanced-configuration.html)\n\n```typescript\nimport { GitlabRunnerAutoscaling } from \"@pepperize/cdk-autoscaling-gitlab-runner\";\nimport { StringParameter } from \"aws-cdk-lib/aws-ssm\";\n\nconst token = StringParameter.fromStringParameterAttributes(stack, \"Token\", {\n parameterName: \"/gitlab-runner/token\",\n});\n\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n runners: [\n {\n token: token,\n configuration: {\n environment: [], // Reset the OverlayFS driver for every project\n docker: {\n capAdd: [], // Remove the CAP_SYS_ADMIN\n privileged: false, // Run unprivileged\n },\n machine: {\n idleCount: 2, // Number of idle machine\n idleTime: 3000, // Waiting time in idle state\n maxBuilds: 1, // Max builds before instance is removed\n },\n },\n },\n ],\n});\n```\n\nSee [example](https://github.com/pepperize/cdk-autoscaling-gitlab-runner-example/blob/main/src/docker-machine.ts),\n[DockerConfiguration](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#dockerconfiguration-)\n\n### Bigger instance type\n\nBy default, t3.nano is used for the manager/coordinator and t3.micro instances will be spawned.\nFor bigger projects, for example with [webpack](https://webpack.js.org/), this won't be enough memory.\n\n```typescript\nconst token = StringParameter.fromStringParameterAttributes(stack, \"Token\", {\n parameterName: \"/gitlab-runner/token\",\n});\n\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n manager: {\n instanceType: InstanceType.of(InstanceClass.T3, InstanceSize.SMALL),\n },\n runners: [\n {\n instanceType: InstanceType.of(InstanceClass.T3, InstanceSize.LARGE),\n token: token,\n configuration: {\n // optionally configure your runner\n },\n },\n ],\n});\n```\n\n> You may have to disable or configure [Spot instances](#spot-instances)\n\nSee [example](https://github.com/pepperize/cdk-autoscaling-gitlab-runner-example/blob/main/src/instance-type.ts),\n[GitlabRunnerAutoscalingManagerProps](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#gitlabrunnerautoscalingmanagerprops-),\n[GitlabRunnerAutoscalingJobRunnerProps](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#gitlabrunnerautoscalingjobrunnerprops-)\n\n### Different machine image\n\nBy default, the latest [Amazon 2 Linux](https://aws.amazon.com/amazon-linux-2/) will be used for the manager/coordinator.\nThe manager/coordinator instance's cloud init scripts requires [yum](https://access.redhat.com/solutions/9934) is installed, any RHEL flavor should work.\nThe requested runner instances by default using Ubuntu 20.04, any OS implemented by the [Docker Machine provisioner](https://gitlab.com/gitlab-org/ci-cd/docker-machine/-/tree/main/libmachine/provision) should work.\n\n```typescript\nconst token = StringParameter.fromStringParameterAttributes(stack, \"Token\", {\n parameterName: \"/gitlab-runner/token\",\n});\n\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n manager: {\n machineImage: MachineImage.genericLinux(managerAmiMap),\n },\n runners: [\n {\n machineImage: MachineImage.genericLinux(runnerAmiMap),\n token: token,\n configuration: {\n // optionally configure your runner\n },\n },\n ],\n});\n```\n\nSee [example](https://github.com/pepperize/cdk-autoscaling-gitlab-runner-example/blob/main/src/machine-image.ts),\n[GitlabRunnerAutoscalingManagerProps](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#gitlabrunnerautoscalingmanagerprops-),\n[GitlabRunnerAutoscalingJobRunnerProps](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#gitlabrunnerautoscalingjobrunnerprops-)\n\n### Multiple runners configuration\n\nEach runner defines one `[[runners]]` section in the [configuration file](https://docs.gitlab.com/runner/configuration/).\nUse [Specific runners](https://docs.gitlab.com/ee/ci/runners/runners_scope.html#specific-runners) when you want to use runners for specific projects.\n\n```typescript\nconst privilegedRole = new Role(this, \"PrivilegedRunnersRole\", {\n // role 1\n});\n\nconst restrictedRole = new Role(this, \"RestrictedRunnersRole\", {\n // role 2\n});\n\nconst token1 = StringParameter.fromStringParameterAttributes(stack, \"Token1\", {\n parameterName: \"/gitlab-runner/token1\",\n});\n\nconst token2 = StringParameter.fromStringParameterAttributes(stack, \"Token2\", {\n parameterName: \"/gitlab-runner/token2\",\n});\n\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n runners: [\n {\n token: token1,\n configuration: {\n name: \"privileged-runner\",\n },\n role: privilegedRole,\n },\n {\n token: token2,\n configuration: {\n name: \"restricted-runner\",\n docker: {\n privileged: false, // Run unprivileged\n },\n },\n role: restrictedRole,\n },\n ],\n});\n```\n\nSee [example](https://github.com/pepperize/cdk-autoscaling-gitlab-runner-example/blob/main/src/machine-image.ts),\n[GitlabRunnerAutoscalingProps](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingProps)\n\n### Spot instances\n\nBy default, EC2 Spot Instances are requested.\n\n```typescript\nconst token = StringParameter.fromStringParameterAttributes(stack, \"Token\", {\n parameterName: \"/gitlab-runner/token\",\n});\n\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n runners: [\n {\n token: token,\n configuration: {\n machine: {\n machineOptions: {\n requestSpotInstance: false,\n spotPrice: 0.5,\n },\n },\n },\n },\n ],\n});\n```\n\nSee [example](https://github.com/pepperize/cdk-autoscaling-gitlab-runner-example/blob/main/src/on-demand-instances.ts),\n[EC2 spot price](https://aws.amazon.com/de/ec2/spot/pricing/),\n[MachineConfiguration](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#machineconfiguration-),\n[MachineOptions](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#machineoptions-),\n[Advanced configuration - runners.machine.autoscaling](https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnersmachineautoscaling-sections)\n\n### Cross-Compile with Multiarch\n\nTo build binaries of different architectures can also use [Multiarch](https://wiki.debian.org/Multiarch)\n\n```typescript\nconst token = StringParameter.fromStringParameterAttributes(stack, \"Token\", {\n parameterName: \"/gitlab-runner/token\",\n});\n\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n runners: [\n {\n token: token,\n configuration: {\n docker: {\n privileged: true,\n },\n },\n },\n ],\n});\n```\n\nConfigure your [.gitlab-ci.yml](https://docs.gitlab.com/ee/ci/yaml/) file\n\n```yaml\nbuild:\n image: multiarch/debian-debootstrap:armhf-buster\n services:\n - docker:stable-dind\n - name: multiarch/qemu-user-static:register\n command:\n - \"--reset\"\n script:\n - make build\n```\n\nSee [multiarch/qemu-user-static](https://hub.docker.com/r/multiarch/qemu-user-static)\n\n### Running on AWS Graviton\n\nTo run your jobs on [AWS Graviton](https://aws.amazon.com/ec2/graviton/) you have to provide an AMI for arm64 architecture.\n\n```typescript\nconst token = StringParameter.fromStringParameterAttributes(stack, \"Token\", {\n parameterName: \"/gitlab-runner/token\",\n});\n\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n runners: [\n {\n token: token,\n configuration: {\n instanceType: InstanceType.of(InstanceClass.M6G, InstanceSize.LARGE),\n machineImage: MachineImage.genericLinux({\n [this.region]: new LookupMachineImage({\n name: \"ubuntu/images/hvm-ssd/ubuntu-focal-20.04-*-server-*\",\n owners: [\"099720109477\"],\n filters: {\n architecture: [InstanceArchitecture.ARM_64],\n \"image-type\": [\"machine\"],\n state: [\"available\"],\n \"root-device-type\": [\"ebs\"],\n \"virtualization-type\": [\"hvm\"],\n },\n }).getImage(this).imageId,\n }),\n },\n },\n ],\n});\n```\n\nSee [Ubuntu Amazon EC2 AMI Locator](https://cloud-images.ubuntu.com/locator/ec2/)\n\n### Custom runner's role\n\nTo deploy from within your GitLab Runner Instances, you may pass a Role with the IAM Policies attached.\n\n```typescript\nconst role = new Role(this, \"RunnersRole\", {\n assumedBy: new ServicePrincipal(\"ec2.amazonaws.com\", {}),\n inlinePolicies: {},\n});\nconst token = StringParameter.fromStringParameterAttributes(stack, \"Token\", {\n parameterName: \"/gitlab-runner/token\",\n});\n\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n runners: [\n {\n role: role,\n token: token,\n configuration: {\n // optionally configure your runner\n },\n },\n ],\n});\n```\n\nSee [example](https://github.com/pepperize/cdk-autoscaling-gitlab-runner-example/blob/main/src/runner-role.ts),\n[GitlabRunnerAutoscalingProps](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingProps)\n\n### Vpc\n\nIf no existing Vpc is passed, a cheap [VPC](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.Vpc.html) with a NatInstance (t3.nano) and a single AZ will be created.\n\n```typescript\nconst natInstanceProvider = aws_ec2.NatProvider.instance({\n instanceType: aws_ec2.InstanceType.of(InstanceClass.T3, InstanceSize.NANO), // using a cheaper gateway (not scalable)\n});\nconst vpc = new Vpc(this, \"Vpc\", {\n // Your custom vpc, i.e.:\n natGatewayProvider: natInstanceProvider,\n maxAzs: 1,\n});\n\nconst token = StringParameter.fromStringParameterAttributes(stack, \"Token\", {\n parameterName: \"/gitlab-runner/token\",\n});\n\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n runners: [\n {\n token: token,\n configuration: {\n // optionally configure your runner\n },\n },\n ],\n network: { vpc: vpc },\n});\n```\n\nSee [example](https://github.com/pepperize/cdk-autoscaling-gitlab-runner-example/blob/main/src/vpc.ts),\n[GitlabRunnerAutoscalingProps](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingProps)\n\n### Zero config\n\nDeploys the [Autoscaling GitLab Runner on AWS EC2](https://docs.gitlab.com/runner/configuration/runner_autoscale_aws/) with the default settings mentioned above.\n\nHappy with the presets?\n\n```typescript\nconst token = StringParameter.fromStringParameterAttributes(stack, \"Token\", {\n parameterName: \"/gitlab-runner/token\",\n});\n\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n runners: [\n {\n token: token,\n configuration: {\n // optionally configure your runner\n },\n },\n ],\n});\n```\n\nSee [example](https://github.com/pepperize/cdk-autoscaling-gitlab-runner-example/blob/main/src/zero-config.ts),\n[GitlabRunnerAutoscalingProps](https://github.com/pepperize/cdk-autoscaling-gitlab-runner/blob/main/API.md#@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingProps)\n\n### ECR Credentials Helper\n\nBy default, the GitLab [amzonec2 driver](https://gitlab.com/gitlab-org/ci-cd/docker-machine/-/blob/main/drivers/amazonec2/amazonec2.go) will be configured to install the\n[amazon-ecr-credential-helper](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry_auth.html#registry-auth-credential-helper)\non the runner's instances.\n\nTo configure, override the default job runners environment:\n\n```typescript\nnew GitlabRunnerAutoscaling(this, \"Runner\", {\n runners: [\n {\n // ...\n environment: [\n \"DOCKER_DRIVER=overlay2\",\n \"DOCKER_TLS_CERTDIR=/certs\",\n 'DOCKER_AUTH_CONFIG={\"credHelpers\": { \"public.ecr.aws\": \"ecr-login\", \".dkr.ecr..amazonaws.com\": \"ecr-login\" } }',\n ],\n },\n ],\n});\n```\n\n## Projen\n\nThis project uses [projen](https://github.com/projen/projen) to maintain project configuration through code. Thus, the synthesized files with projen should never be manually edited (in fact, projen enforces that).\n\nTo modify the project setup, you should interact with rich strongly-typed\nclass [AwsCdkTypeScriptApp](https://github.com/projen/projen/blob/master/API.md#projen-awscdktypescriptapp) and\nexecute `npx projen` to update project configuration files.\n\n> In simple words, developers can only modify `.projenrc.js` file for configuration/maintenance and files under `/src` directory for development.\n\nSee also [Create and Publish CDK Constructs Using projen and jsii](https://github.com/seeebiii/projen-test).\n"
},
"repository": {
"type": "git",
"url": "https://github.com/pepperize/cdk-autoscaling-gitlab-runner.git"
},
"schema": "jsii/0.10.0",
"targets": {
"dotnet": {
"namespace": "Pepperize.CDK",
"packageId": "Pepperize.CDK.AutoscalingGitlabRunner"
},
"java": {
"maven": {
"artifactId": "cdk-autoscaling-gitlab-runner",
"groupId": "com.pepperize"
},
"package": "com.pepperize.cdk.autoscaling_gitlab_runner"
},
"js": {
"npm": "@pepperize/cdk-autoscaling-gitlab-runner"
},
"python": {
"distName": "pepperize.cdk-autoscaling-gitlab-runner",
"module": "pepperize_cdk_autoscaling_gitlab_runner"
}
},
"types": {
"@pepperize/cdk-autoscaling-gitlab-runner.AutoscalingConfiguration": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"see": "https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnersmachineautoscaling-sections",
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.AutoscalingConfiguration",
"kind": "interface",
"locationInModule": {
"filename": "src/runner-configuration/autoscaling-configuration.ts",
"line": 4
},
"name": "AutoscalingConfiguration",
"properties": [
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/autoscaling-configuration.ts",
"line": 5
},
"name": "idleCount",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/autoscaling-configuration.ts",
"line": 6
},
"name": "idleTime",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"example": "// \"* * 7-22 * * mon-fri *\"",
"remarks": "[second] [minute] [hour] [day of month] [month] [day of week] [year]",
"stability": "stable",
"summary": "The Periods setting contains an array of string patterns of time periods represented in a cron-style format. https://github.com/gorhill/cronexpr#implementation."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/autoscaling-configuration.ts",
"line": 16
},
"name": "periods",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/autoscaling-configuration.ts",
"line": 17
},
"name": "timezone",
"optional": true,
"type": {
"primitive": "string"
}
}
],
"symbolId": "src/runner-configuration/autoscaling-configuration:AutoscalingConfiguration"
},
"@pepperize/cdk-autoscaling-gitlab-runner.Cache": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"base": "constructs.Construct",
"docs": {
"remarks": "The bucket is encrypted with a KMS managed master key, it has public access blocked and will be cleared and deleted on CFN stack deletion.",
"stability": "stable",
"summary": "A GitLab Runner cache consisting of an Amazon S3 bucket."
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.Cache",
"initializer": {
"docs": {
"stability": "stable"
},
"locationInModule": {
"filename": "src/runner/cache.ts",
"line": 28
},
"parameters": [
{
"name": "scope",
"type": {
"fqn": "constructs.Construct"
}
},
{
"name": "id",
"type": {
"primitive": "string"
}
},
{
"name": "props",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.CacheProps"
}
}
]
},
"kind": "class",
"locationInModule": {
"filename": "src/runner/cache.ts",
"line": 25
},
"name": "Cache",
"properties": [
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/cache.ts",
"line": 26
},
"name": "bucket",
"type": {
"fqn": "aws-cdk-lib.aws_s3.IBucket"
}
}
],
"symbolId": "src/runner/cache:Cache"
},
"@pepperize/cdk-autoscaling-gitlab-runner.CacheConfiguration": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.CacheConfiguration",
"kind": "interface",
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 1
},
"name": "CacheConfiguration",
"properties": [
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 4
},
"name": "s3",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.CacheS3Configuration"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 3
},
"name": "shared",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 2
},
"name": "type",
"optional": true,
"type": {
"primitive": "string"
}
}
],
"symbolId": "src/runner-configuration/cache-configuration:CacheConfiguration"
},
"@pepperize/cdk-autoscaling-gitlab-runner.CacheProps": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.CacheProps",
"kind": "interface",
"locationInModule": {
"filename": "src/runner/cache.ts",
"line": 6
},
"name": "CacheProps",
"properties": [
{
"abstract": true,
"docs": {
"default": "\"runner-cache\"",
"stability": "stable",
"summary": "The infix of the physical cache bucket name."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/cache.ts",
"line": 12
},
"name": "bucketName",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "30 days",
"stability": "stable",
"summary": "The number of days after which the created cache objects are deleted from S3."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/cache.ts",
"line": 17
},
"name": "expiration",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.Duration"
}
}
],
"symbolId": "src/runner/cache:CacheProps"
},
"@pepperize/cdk-autoscaling-gitlab-runner.CacheS3Configuration": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"see": "https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnerscaches3-section",
"stability": "stable",
"summary": "Define cache configuration for S3 storage."
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.CacheS3Configuration",
"kind": "interface",
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 12
},
"name": "CacheS3Configuration",
"properties": [
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 42
},
"name": "accessKey",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "\"iam\"",
"see": "https://gitlab.com/gitlab-org/gitlab-runner/-/issues/28171",
"stability": "stable",
"summary": "In GitLab 15.0 and later, explicitly set AuthenticationType to iam or access-key."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 35
},
"name": "authenticationType",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "The name of the S3 region."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 26
},
"name": "bucketLocation",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "\"runners-cache\"",
"stability": "stable",
"summary": "The name of the storage bucket where cache is stored."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 22
},
"name": "bucketName",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "false",
"stability": "stable",
"summary": "Set to true if the S3 service is available by HTTP."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 41
},
"name": "insecure",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 43
},
"name": "secretKey",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "\"s3.amazonaws.com\"",
"stability": "stable",
"summary": "The AWS S3 host."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/cache-configuration.ts",
"line": 17
},
"name": "serverAddress",
"optional": true,
"type": {
"primitive": "string"
}
}
],
"symbolId": "src/runner-configuration/cache-configuration:CacheS3Configuration"
},
"@pepperize/cdk-autoscaling-gitlab-runner.ConfigurationMapper": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"docs": {
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.ConfigurationMapper",
"kind": "class",
"locationInModule": {
"filename": "src/runner-configuration/configuration-mapper.ts",
"line": 14
},
"methods": [
{
"docs": {
"stability": "stable"
},
"locationInModule": {
"filename": "src/runner-configuration/configuration-mapper.ts",
"line": 87
},
"name": "fromProps",
"parameters": [
{
"name": "props",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.ConfigurationMapperProps"
}
}
],
"returns": {
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.ConfigurationMapper"
}
},
"static": true
},
{
"docs": {
"stability": "stable"
},
"locationInModule": {
"filename": "src/runner-configuration/configuration-mapper.ts",
"line": 15
},
"name": "withDefaults",
"parameters": [
{
"name": "props",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.ConfigurationMapperProps"
}
}
],
"returns": {
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.ConfigurationMapper"
}
},
"static": true
},
{
"docs": {
"stability": "stable"
},
"locationInModule": {
"filename": "src/runner-configuration/configuration-mapper.ts",
"line": 93
},
"name": "toToml",
"returns": {
"type": {
"primitive": "string"
}
}
}
],
"name": "ConfigurationMapper",
"properties": [
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/configuration-mapper.ts",
"line": 91
},
"name": "props",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.ConfigurationMapperProps"
}
}
],
"symbolId": "src/runner-configuration/configuration-mapper:ConfigurationMapper"
},
"@pepperize/cdk-autoscaling-gitlab-runner.ConfigurationMapperProps": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.ConfigurationMapperProps",
"kind": "interface",
"locationInModule": {
"filename": "src/runner-configuration/configuration-mapper.ts",
"line": 9
},
"name": "ConfigurationMapperProps",
"properties": [
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/configuration-mapper.ts",
"line": 10
},
"name": "globalConfiguration",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GlobalConfiguration"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/configuration-mapper.ts",
"line": 11
},
"name": "runnersConfiguration",
"type": {
"collection": {
"elementtype": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.RunnerConfiguration"
},
"kind": "array"
}
}
}
],
"symbolId": "src/runner-configuration/configuration-mapper:ConfigurationMapperProps"
},
"@pepperize/cdk-autoscaling-gitlab-runner.DockerConfiguration": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"see": "https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnersdocker-section",
"stability": "stable",
"summary": "Configure docker on the runners."
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.DockerConfiguration",
"kind": "interface",
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 6
},
"name": "DockerConfiguration",
"properties": [
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Wildcard list of images that can be specified in the .gitlab-ci.yml file. If not present, all images are allowed (equivalent to [\"*\\/*:*\"]). See Restrict Docker images and services."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 10
},
"name": "allowedImages",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Wildcard list of services that can be specified in the .gitlab-ci.yml file. If not present, all images are allowed (equivalent to [*\\/*:*]). See Restrict Docker images and services."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 14
},
"name": "allowedServices",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"remarks": "This path can be absolute or relative to current working directory. See disable_cache for more information.",
"stability": "stable",
"summary": "Directory where Docker caches should be stored."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 18
},
"name": "cacheDir",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "[\"CAP_SYS_ADMIN\"]",
"stability": "stable",
"summary": "Add additional Linux capabilities to the container."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 23
},
"name": "capAdd",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Drop additional Linux capabilities from the container."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 28
},
"name": "capDrop",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Number of CPUs (available in Docker 1.13 or later. A string."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 43
},
"name": "cpus",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "A string.",
"stability": "stable",
"summary": "The control group’s CpusetCpus."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 33
},
"name": "cpusetCpus",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "Default is 1024.",
"stability": "stable",
"summary": "Number of CPU shares used to set relative CPU usage."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 38
},
"name": "cpuShares",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Share additional host devices with the container."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 48
},
"name": "devices",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"default": "false",
"remarks": "This configuration flag acts only on the local one which disables the use of automatically created (not mapped to a host directory) cache volumes. In other words, it only prevents creating a container that holds temporary files of builds, it does not disable the cache if the runner is configured in distributed cache mode.",
"stability": "stable",
"summary": "The Docker executor has two levels of caching: a global one (like any other executor) and a local cache based on Docker volumes."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 54
},
"name": "disableCache",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Disable the image entrypoint overwriting."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 59
},
"name": "disableEntrypointOverwrite",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "A list of DNS servers for the container to use."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 64
},
"name": "dns",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "A list of DNS search domains."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 69
},
"name": "dnsSearch",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Hosts that should be defined in container environment."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 74
},
"name": "extraHosts",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"remarks": "Uses the same format as the docker cli. View details in the Docker documentation.",
"stability": "stable",
"summary": "GPU devices for Docker container."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 79
},
"name": "gpus",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "(Advanced) The default helper image used to clone repositories and upload artifacts."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 84
},
"name": "helperImage",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Sets the helper image flavor (alpine, alpine3.12, alpine3.13, alpine3.14 or ubuntu). Defaults to alpine. The alpine flavor uses the same version as alpine3.12."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 89
},
"name": "helperImageFlavor",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "Default is DOCKER_HOST environment or unix:///var/run/docker.sock.",
"stability": "stable",
"summary": "Custom Docker endpoint."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 94
},
"name": "host",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Custom hostname for the Docker container."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 99
},
"name": "hostname",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "The image to run jobs with."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 104
},
"name": "image",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Containers that should be linked with container that runs the job."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 109
},
"name": "links",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"remarks": "A string.",
"stability": "stable",
"summary": "The memory limit."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 114
},
"name": "memory",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "A string.",
"stability": "stable",
"summary": "The memory soft limit."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 124
},
"name": "memoryReservation",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "A string.",
"stability": "stable",
"summary": "The total memory limit."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 119
},
"name": "memorySwap",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Add container to a custom network."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 129
},
"name": "networkMode",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "If an out-of-memory (OOM) error occurs, do not kill processes in a container."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 134
},
"name": "oomKillDisable",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"remarks": "Positive means kill earlier.",
"stability": "stable",
"summary": "OOM score adjustment."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 139
},
"name": "oomScoreAdjust",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "true",
"remarks": "Insecure.",
"stability": "stable",
"summary": "Make the container run in privileged mode."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 145
},
"name": "privileged",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"remarks": "View details in the pull policies documentation. You can also add multiple pull policies.",
"stability": "stable",
"summary": "The image pull policy: never, if-not-present or always (default)."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 150
},
"name": "pullPolicy",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "The runtime for the Docker container."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 155
},
"name": "runtime",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "Takes a list of : separated key/values.",
"stability": "stable",
"summary": "Security options (–security-opt in docker run)."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 160
},
"name": "securityOpt",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "0",
"stability": "stable",
"summary": "Shared memory size for images (in bytes)."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 166
},
"name": "shmSize",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "The sysctl options."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 171
},
"name": "sysctls",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "A directory where ca.pem, cert.pem or key.pem are stored and used to make a secure TLS connection to Docker. Useful in boot2docker."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 176
},
"name": "tlsCertPath",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "false",
"remarks": "Disabled by default.",
"stability": "stable",
"summary": "Enable or disable TLS verification of connections to Docker daemon."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 182
},
"name": "tlsVerify",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"remarks": "Available in Docker 1.10 or later.",
"stability": "stable",
"summary": "The user namespace mode for the container and Docker services when user namespace remapping option is enabled."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 187
},
"name": "usernsMode",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "The volume driver to use for the container."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 202
},
"name": "volumeDriver",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "Same syntax as the Docker -v flag.",
"stability": "stable",
"summary": "Additional volumes that should be mounted."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 192
},
"name": "volumes",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"remarks": "Access level defaults to read-write, but can be manually set to ro (read-only) or rw (read-write).",
"stability": "stable",
"summary": "A list of volumes to inherit from another container in the form [:]."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 197
},
"name": "volumesFrom",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"default": "300",
"remarks": "Set to 0 to disable. Default is 30.",
"stability": "stable",
"summary": "How long to wait for Docker services."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/docker-configuration.ts",
"line": 208
},
"name": "waitForServicesTimeout",
"optional": true,
"type": {
"primitive": "number"
}
}
],
"symbolId": "src/runner-configuration/docker-configuration:DockerConfiguration"
},
"@pepperize/cdk-autoscaling-gitlab-runner.DockerMachineVersion": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"docs": {
"see": "https://gitlab.com/gitlab-org/ci-cd/docker-machine",
"stability": "stable",
"summary": "Docker+machine version."
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.DockerMachineVersion",
"kind": "class",
"locationInModule": {
"filename": "src/runner/docker-machine-version.ts",
"line": 6
},
"methods": [
{
"docs": {
"stability": "stable",
"summary": "Custom docker+machine version."
},
"locationInModule": {
"filename": "src/runner/docker-machine-version.ts",
"line": 16
},
"name": "of",
"parameters": [
{
"docs": {
"summary": "docker+machine version number."
},
"name": "version",
"type": {
"primitive": "string"
}
}
],
"returns": {
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.DockerMachineVersion"
}
},
"static": true
}
],
"name": "DockerMachineVersion",
"properties": [
{
"const": true,
"docs": {
"stability": "stable",
"summary": "Docker+machine version 0.16.2-gitlab.15."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/docker-machine-version.ts",
"line": 10
},
"name": "V0_16_2_GITLAB_15",
"static": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.DockerMachineVersion"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/docker-machine-version.ts",
"line": 19
},
"name": "version",
"type": {
"primitive": "string"
}
}
],
"symbolId": "src/runner/docker-machine-version:DockerMachineVersion"
},
"@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscaling": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"base": "constructs.Construct",
"docs": {
"example": "Provisioning a basic Runner\nconst app = new cdk.App();\nconst stack = new cdk.Stack(app, \"RunnerStack\", {\nenv: {\naccount: \"000000000000\",\nregion: \"us-east-1\",\n}\n});\n\nconst token = new StringParameter(stack, \"imported-token\", {\nparameterName: \"/gitlab-runner/token1\",\nstringValue: gitlabToken,\ntype: ParameterType.SECURE_STRING,\ntier: ParameterTier.STANDARD,\n});\n\nnew GitlabRunnerAutoscaling(stack, \"GitlabRunner\", {\nrunners: [{\ntoken: \"xxxxxxxxxxxxxxxxxxxx\"\n}],\n});",
"stability": "stable",
"summary": "The Gitlab Runner autoscaling on EC2 by Docker Machine."
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscaling",
"initializer": {
"docs": {
"stability": "stable"
},
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 106
},
"parameters": [
{
"name": "scope",
"type": {
"fqn": "aws-cdk-lib.Stack"
}
},
{
"name": "id",
"type": {
"primitive": "string"
}
},
{
"name": "props",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingProps"
}
}
]
},
"kind": "class",
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 89
},
"name": "GitlabRunnerAutoscaling",
"properties": [
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 100
},
"name": "cacheBucket",
"type": {
"fqn": "aws-cdk-lib.aws_s3.IBucket"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 102
},
"name": "manager",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingManager"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 98
},
"name": "network",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.Network"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 104
},
"name": "runners",
"type": {
"collection": {
"elementtype": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingJobRunner"
},
"kind": "array"
}
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 92
},
"name": "checkInterval",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 90
},
"name": "concurrent",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 94
},
"name": "logFormat",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 96
},
"name": "logLevel",
"optional": true,
"type": {
"primitive": "string"
}
}
],
"symbolId": "src/runner/runner:GitlabRunnerAutoscaling"
},
"@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingCacheProps": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"remarks": "Either pass an existing bucket or override default options.",
"see": "https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnerscaches3-section",
"stability": "stable",
"summary": "The distributed GitLab runner S3 cache."
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingCacheProps",
"kind": "interface",
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 52
},
"name": "GitlabRunnerAutoscalingCacheProps",
"properties": [
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "An existing S3 bucket used as runner's cache."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 56
},
"name": "bucket",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.aws_s3.IBucket"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "If no existing S3 bucket is provided, a S3 bucket will be created."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 61
},
"name": "options",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.CacheProps"
}
}
],
"symbolId": "src/runner/runner:GitlabRunnerAutoscalingCacheProps"
},
"@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingJobRunner": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"base": "constructs.Construct",
"docs": {
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingJobRunner",
"initializer": {
"docs": {
"stability": "stable"
},
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 73
},
"parameters": [
{
"name": "scope",
"type": {
"fqn": "constructs.Construct"
}
},
{
"name": "id",
"type": {
"primitive": "string"
}
},
{
"name": "props",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingJobRunnerProps"
}
}
]
},
"kind": "class",
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 62
},
"name": "GitlabRunnerAutoscalingJobRunner",
"properties": [
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 66
},
"name": "configuration",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.RunnerConfiguration"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 70
},
"name": "instanceProfile",
"type": {
"fqn": "aws-cdk-lib.aws_iam.CfnInstanceProfile"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 67
},
"name": "instanceType",
"type": {
"fqn": "aws-cdk-lib.aws_ec2.InstanceType"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 68
},
"name": "machineImage",
"type": {
"fqn": "aws-cdk-lib.aws_ec2.IMachineImage"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 69
},
"name": "role",
"type": {
"fqn": "aws-cdk-lib.aws_iam.IRole"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 71
},
"name": "keyPair",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.aws_secretsmanager.ISecret"
}
}
],
"symbolId": "src/runner/job-runner:GitlabRunnerAutoscalingJobRunner"
},
"@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingJobRunnerProps": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"remarks": "If not set, the defaults will be used.",
"stability": "stable",
"summary": "The runner EC2 instances configuration."
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingJobRunnerProps",
"kind": "interface",
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 21
},
"name": "GitlabRunnerAutoscalingJobRunnerProps",
"properties": [
{
"abstract": true,
"docs": {
"custom": {
"link": "RunnerConfiguration"
},
"remarks": "If not set, the defaults will be used.",
"stability": "stable",
"summary": "The runner EC2 instances configuration."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 32
},
"name": "configuration",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.RunnerConfiguration"
}
},
{
"abstract": true,
"docs": {
"remarks": "Not the same as the registration token.",
"see": "https://docs.gitlab.com/ee/api/runners.html#register-a-new-runner",
"stability": "stable",
"summary": "The runner’s authentication token, which is obtained during runner registration."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 26
},
"name": "token",
"type": {
"fqn": "aws-cdk-lib.aws_ssm.IStringParameter"
}
},
{
"abstract": true,
"docs": {
"default": "InstanceType.of(InstanceClass.T3, InstanceSize.MICRO)",
"remarks": "It's a combination of a class and size.",
"stability": "stable",
"summary": "Instance type for runner EC2 instances."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 37
},
"name": "instanceType",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.aws_ec2.InstanceType"
}
},
{
"abstract": true,
"docs": {
"remarks": "\n - Example: aws secretsmanager create-secret --name AnyKeyPairSecret --secret-string \"{\\\"theKeyPairName\\\":\\\"\\\",\\\"theKeyPairName.pub\\\":\\\"\\\"}\"
\n - Additionally configure an unique key pair configuration.machine.machineOptions.keypairName
\n
",
"stability": "stable",
"summary": "Optionally pass a custom EC2 KeyPair, that will be used by the manager to connect to the job runner instances."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 59
},
"name": "keyPair",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.aws_secretsmanager.ISecret"
}
},
{
"abstract": true,
"docs": {
"remarks": "If empty the latest Ubuntu 20.04 focal will be looked up.\n\nAny operating system supported by Docker Machine's provisioner.",
"see": "https://gitlab.com/gitlab-org/ci-cd/docker-machine/-/tree/main/libmachine/provision",
"stability": "stable",
"summary": "An Amazon Machine Image ID for the Runners EC2 instances."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 46
},
"name": "machineImage",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.aws_ec2.IMachineImage"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Optionally pass an IAM role, that get's assigned to the EC2 runner instances via Instance Profile."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/job-runner.ts",
"line": 50
},
"name": "role",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.aws_iam.IRole"
}
}
],
"symbolId": "src/runner/job-runner:GitlabRunnerAutoscalingJobRunnerProps"
},
"@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingManager": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"base": "constructs.Construct",
"docs": {
"remarks": "Manager coordinates the placement of runner (job executor) instances",
"stability": "stable",
"summary": "Settings for the manager (coordinator)."
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingManager",
"initializer": {
"docs": {
"stability": "stable"
},
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 85
},
"parameters": [
{
"name": "scope",
"type": {
"fqn": "constructs.Construct"
}
},
{
"name": "id",
"type": {
"primitive": "string"
}
},
{
"name": "props",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingManagerProps"
}
}
]
},
"kind": "class",
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 72
},
"name": "GitlabRunnerAutoscalingManager",
"properties": [
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 82
},
"name": "cacheBucket",
"type": {
"fqn": "aws-cdk-lib.aws_s3.IBucket"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 83
},
"name": "globalConfiguration",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GlobalConfiguration"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 80
},
"name": "initConfig",
"type": {
"fqn": "aws-cdk-lib.aws_ec2.CloudFormationInit"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 74
},
"name": "instanceType",
"type": {
"fqn": "aws-cdk-lib.aws_ec2.InstanceType"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 73
},
"name": "machineImage",
"type": {
"fqn": "aws-cdk-lib.aws_ec2.IMachineImage"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 77
},
"name": "network",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.Network"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 79
},
"name": "role",
"type": {
"fqn": "aws-cdk-lib.aws_iam.IRole"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 76
},
"name": "runners",
"type": {
"collection": {
"elementtype": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingJobRunner"
},
"kind": "array"
}
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 78
},
"name": "runnersSecurityGroupName",
"type": {
"primitive": "string"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 81
},
"name": "userData",
"type": {
"fqn": "aws-cdk-lib.aws_ec2.UserData"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 75
},
"name": "keyPairName",
"optional": true,
"type": {
"primitive": "string"
}
}
],
"symbolId": "src/runner/manager:GitlabRunnerAutoscalingManager"
},
"@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingManagerBaseProps": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingManagerBaseProps",
"kind": "interface",
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 31
},
"name": "GitlabRunnerAutoscalingManagerBaseProps",
"properties": [
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 53
},
"name": "dockerMachineVersion",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.DockerMachineVersion"
}
},
{
"abstract": true,
"docs": {
"default": "InstanceType.of(InstanceClass.T3, InstanceSize.NANO)",
"remarks": "It's a combination of a class and size.",
"stability": "stable",
"summary": "Instance type for manager EC2 instance."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 46
},
"name": "instanceType",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.aws_ec2.InstanceType"
}
},
{
"abstract": true,
"docs": {
"remarks": "You won't be able to ssh into an instance without the Key Pair.",
"stability": "stable",
"summary": "A set of security credentials that you use to prove your identity when connecting to an Amazon EC2 instance."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 51
},
"name": "keyPairName",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "If empty the latest Amazon 2 Image will be looked up.\n\nShould be RHEL flavor like Amazon Linux 2 with yum available for instance initialization.",
"see": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-init.html",
"stability": "stable",
"summary": "An Amazon Machine Image ID for the Manager EC2 instance."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 40
},
"name": "machineImage",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.aws_ec2.IMachineImage"
}
}
],
"symbolId": "src/runner/manager:GitlabRunnerAutoscalingManagerBaseProps"
},
"@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingManagerProps": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingManagerProps",
"interfaces": [
"@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingManagerBaseProps"
],
"kind": "interface",
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 56
},
"name": "GitlabRunnerAutoscalingManagerProps",
"properties": [
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 60
},
"name": "cacheBucket",
"type": {
"fqn": "aws-cdk-lib.aws_s3.IBucket"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 59
},
"name": "network",
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.Network"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 58
},
"name": "runners",
"type": {
"collection": {
"elementtype": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingJobRunner"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 62
},
"name": "runnersSecurityGroup",
"type": {
"fqn": "@pepperize/cdk-security-group.SecurityGroup"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 57
},
"name": "globalConfiguration",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GlobalConfiguration"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/manager.ts",
"line": 61
},
"name": "role",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.aws_iam.IRole"
}
}
],
"symbolId": "src/runner/manager:GitlabRunnerAutoscalingManagerProps"
},
"@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingProps": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"remarks": "You have to provide at least the GitLab's Runner's authentication token.",
"stability": "stable",
"summary": "Properties of the Gitlab Runner."
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingProps",
"interfaces": [
"@pepperize/cdk-autoscaling-gitlab-runner.GlobalConfiguration"
],
"kind": "interface",
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 26
},
"name": "GitlabRunnerAutoscalingProps",
"properties": [
{
"abstract": true,
"docs": {
"custom": {
"link": "GitlabRunnerAutoscalingJobRunnerProps"
},
"remarks": "At least one runner should be set up.",
"stability": "stable",
"summary": "The runner EC2 instances settings."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 45
},
"name": "runners",
"type": {
"collection": {
"elementtype": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingJobRunnerProps"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 27
},
"name": "cache",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingCacheProps"
}
},
{
"abstract": true,
"docs": {
"custom": {
"link": "GitlabRunnerAutoscalingManagerBaseProps"
},
"remarks": "If not set, the defaults will be used.",
"stability": "stable",
"summary": "The manager EC2 instance configuration."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 39
},
"name": "manager",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GitlabRunnerAutoscalingManagerBaseProps"
}
},
{
"abstract": true,
"docs": {
"custom": {
"link": "NetworkProps"
},
"remarks": "If not set, the defaults will be used.",
"stability": "stable",
"summary": "The network configuration for the Runner."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/runner.ts",
"line": 33
},
"name": "network",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.NetworkProps"
}
}
],
"symbolId": "src/runner/runner:GitlabRunnerAutoscalingProps"
},
"@pepperize/cdk-autoscaling-gitlab-runner.GlobalConfiguration": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"remarks": "This imitates the structure of Gitlab Runner advanced configuration that originally is set with config.toml file.",
"see": "https://docs.gitlab.com/runner/configuration/advanced-configuration.html",
"stability": "stable",
"summary": "You can change the behavior of GitLab Runner and of individual registered runners."
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.GlobalConfiguration",
"kind": "interface",
"locationInModule": {
"filename": "src/runner-configuration/global-configuration.ts",
"line": 6
},
"name": "GlobalConfiguration",
"properties": [
{
"abstract": true,
"docs": {
"default": "0",
"stability": "stable",
"summary": "The check_interval option defines how often the runner should check GitLab for new jobs| in seconds."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/global-configuration.ts",
"line": 17
},
"name": "checkInterval",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"default": "10",
"stability": "stable",
"summary": "The limit of the jobs that can be run concurrently across all runners (concurrent)."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/global-configuration.ts",
"line": 11
},
"name": "concurrent",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"default": "\"runner\"",
"stability": "stable",
"summary": "The log format."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/global-configuration.ts",
"line": 23
},
"name": "logFormat",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "\"info\"",
"stability": "stable",
"summary": "The log_level."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/global-configuration.ts",
"line": 29
},
"name": "logLevel",
"optional": true,
"type": {
"primitive": "string"
}
}
],
"symbolId": "src/runner-configuration/global-configuration:GlobalConfiguration"
},
"@pepperize/cdk-autoscaling-gitlab-runner.MachineConfiguration": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.MachineConfiguration",
"kind": "interface",
"locationInModule": {
"filename": "src/runner-configuration/machine-configuration.ts",
"line": 10
},
"name": "MachineConfiguration",
"properties": [
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-configuration.ts",
"line": 44
},
"name": "autoscaling",
"optional": true,
"type": {
"collection": {
"elementtype": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.AutoscalingConfiguration"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"default": "0",
"stability": "stable",
"summary": "Number of machines that need to be created and waiting in Idle state."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-configuration.ts",
"line": 16
},
"name": "idleCount",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"default": "300",
"stability": "stable",
"summary": "Time (in seconds) for machine to be in Idle state before it is removed."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-configuration.ts",
"line": 22
},
"name": "idleTime",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"default": "\"amazonec2\"",
"stability": "stable",
"summary": "Docker Machine driver."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-configuration.ts",
"line": 34
},
"name": "machineDriver",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "\"gitlab-runner\"",
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-configuration.ts",
"line": 38
},
"name": "machineName",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Docker Machine options passed to the Docker Machine driver."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-configuration.ts",
"line": 42
},
"name": "machineOptions",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.MachineOptions"
}
},
{
"abstract": true,
"docs": {
"default": "20",
"stability": "stable",
"summary": "Maximum job (build) count before machine is removed."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-configuration.ts",
"line": 28
},
"name": "maxBuilds",
"optional": true,
"type": {
"primitive": "number"
}
}
],
"symbolId": "src/runner-configuration/machine-configuration:MachineConfiguration"
},
"@pepperize/cdk-autoscaling-gitlab-runner.MachineOptions": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"see": "https://gitlab.com/gitlab-org/ci-cd/docker-machine/-/blob/main/drivers/amazonec2/amazonec2.go",
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.MachineOptions",
"interfaces": [
"@pepperize/cdk-autoscaling-gitlab-runner.SharedCreateOptions"
],
"kind": "interface",
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 17
},
"name": "MachineOptions",
"properties": [
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 19
},
"name": "ami",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "AWS spot instance duration in minutes (60, 120, 180, 240, 300, or 360).",
"see": "https://docs.gitlab.com/runner/configuration/runner_autoscale_aws/#cutting-down-costs-with-amazon-ec2-spot-instances",
"stability": "stable",
"summary": "The amazonec2-block-duration-minutes parameter."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 65
},
"name": "blockDurationMinutes",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 46
},
"name": "iamInstanceProfile",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 18
},
"name": "instanceType",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "A set of security credentials that you use to prove your identity when connecting to an Amazon EC2 instance.\n\nusing --amazonec2-keypair-name also requires --amazonec2-ssh-keypath",
"see": "https://gitlab.com/gitlab-org/ci-cd/docker-machine/-/blob/main/drivers/amazonec2/amazonec2.go#L398",
"stability": "stable",
"summary": "The amazonec2-keypair-name parameter."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 85
},
"name": "keypairName",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "required",
"see": "https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html",
"stability": "stable",
"summary": "Whether the metadata token is required or optional."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 100
},
"name": "metadataToken",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "2",
"stability": "stable",
"summary": "The number of network hops that the metadata token can travel."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 105
},
"name": "metadataTokenResponseHopLimit",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"remarks": "If true, your EC2 instance won’t get assigned a public IP. This is ok if your VPC is configured correctly with an Internet Gateway (IGW), NatGateway (NGW) and routing is fine, but it’s something to consider if you’ve got a more complex configuration.",
"see": "https://docs.gitlab.com/runner/configuration/runner_autoscale_aws/#the-runnersmachine-section",
"stability": "stable",
"summary": "The amazonec2-private-address-only parameter."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 39
},
"name": "privateAddressOnly",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 20
},
"name": "region",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "true",
"remarks": "Whether or not to request spot instances.",
"see": "https://aws.amazon.com/ec2/spot/",
"stability": "stable",
"summary": "The amazonec2-request-spot-instance parameter."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 53
},
"name": "requestSpotInstance",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"default": "16",
"see": "https://gitlab.com/gitlab-org/ci-cd/docker-machine/-/blob/main/docs/drivers/aws.md#options",
"stability": "stable",
"summary": "The root disk size of the instance (in GB)."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 71
},
"name": "rootSize",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "The SecurityGroup's GroupName, not the GroupId."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 32
},
"name": "securityGroup",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "0.03",
"remarks": "The bidding price for spot instances.",
"see": "https://aws.amazon.com/ec2/spot/pricing/",
"stability": "stable",
"summary": "The amazonec2-spot-price parameter."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 60
},
"name": "spotPrice",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"default": "/etc/gitlab-runner/ssh",
"stability": "stable",
"summary": "The amazonec2-ssh-keypath parameter."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 77
},
"name": "sshKeypath",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 28
},
"name": "subnetId",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Create an EBS Optimized Instance, instance type must support it."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 94
},
"name": "useEbsOptimizedInstance",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"remarks": "Useful to keep the traffic internal and avoid extra costs.",
"see": "https://docs.gitlab.com/runner/configuration/runner_autoscale_aws/#the-runnersmachine-section",
"stability": "stable",
"summary": "Use the private IP address of Docker Machines, but still create a public IP address."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 45
},
"name": "usePrivateAddress",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"default": "/etc/gitlab-runner/user_data_runners",
"see": "https://gitlab.com/gitlab-org/ci-cd/docker-machine/-/blob/main/drivers/amazonec2/amazonec2.go",
"stability": "stable",
"summary": "The path of the runner machine's userdata file on the manager instance used by the amazonec2 driver to create a new instance."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 114
},
"name": "userdata",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "gp2",
"stability": "stable",
"summary": "The Amazon EBS volume type to be attached to the instance."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 90
},
"name": "volumeType",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 21
},
"name": "vpcId",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"see": "https://docs.gitlab.com/runners/configuration/runners_autoscale_aws/#the-runnerssmachine-section",
"stability": "stable",
"summary": "Extract the availabilityZone last character for the needs of gitlab configuration."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 27
},
"name": "zone",
"optional": true,
"type": {
"primitive": "string"
}
}
],
"symbolId": "src/runner-configuration/machine-options:MachineOptions"
},
"@pepperize/cdk-autoscaling-gitlab-runner.Network": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"base": "constructs.Construct",
"docs": {
"remarks": "All EC2 instances should belong to the same subnet, availability zone and vpc.",
"stability": "stable",
"summary": "Network settings for the manager and runners."
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.Network",
"initializer": {
"docs": {
"stability": "stable"
},
"locationInModule": {
"filename": "src/runner/network.ts",
"line": 34
},
"parameters": [
{
"name": "scope",
"type": {
"fqn": "constructs.Construct"
}
},
{
"name": "id",
"type": {
"primitive": "string"
}
},
{
"name": "props",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.NetworkProps"
}
}
]
},
"kind": "class",
"locationInModule": {
"filename": "src/runner/network.ts",
"line": 29
},
"methods": [
{
"docs": {
"stability": "stable"
},
"locationInModule": {
"filename": "src/runner/network.ts",
"line": 52
},
"name": "hasPrivateSubnets",
"returns": {
"type": {
"primitive": "boolean"
}
}
}
],
"name": "Network",
"properties": [
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/network.ts",
"line": 31
},
"name": "availabilityZone",
"type": {
"primitive": "string"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/network.ts",
"line": 32
},
"name": "subnet",
"type": {
"fqn": "aws-cdk-lib.aws_ec2.ISubnet"
}
},
{
"docs": {
"stability": "stable"
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/network.ts",
"line": 30
},
"name": "vpc",
"type": {
"fqn": "aws-cdk-lib.aws_ec2.IVpc"
}
}
],
"symbolId": "src/runner/network:Network"
},
"@pepperize/cdk-autoscaling-gitlab-runner.NetworkProps": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.NetworkProps",
"kind": "interface",
"locationInModule": {
"filename": "src/runner/network.ts",
"line": 6
},
"name": "NetworkProps",
"properties": [
{
"abstract": true,
"docs": {
"remarks": "It should be either public or private. If more then subnet is selected, then the first found (private) subnet will be used.",
"see": "https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-ec2.SubnetSelection.html\n\nA network is considered private, if\n- tagged by 'aws-cdk:subnet-type'\n- doesn't route to an Internet Gateway (not public)\n- has an Nat Gateway",
"stability": "stable",
"summary": "The GitLab Runner's subnets."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/network.ts",
"line": 21
},
"name": "subnetSelection",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.aws_ec2.SubnetSelection"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "If no existing VPC is provided, a default Vpc will be created."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner/network.ts",
"line": 10
},
"name": "vpc",
"optional": true,
"type": {
"fqn": "aws-cdk-lib.aws_ec2.IVpc"
}
}
],
"symbolId": "src/runner/network:NetworkProps"
},
"@pepperize/cdk-autoscaling-gitlab-runner.RunnerConfiguration": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.RunnerConfiguration",
"kind": "interface",
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 5
},
"name": "RunnerConfiguration",
"properties": [
{
"abstract": true,
"docs": {
"remarks": "For example, locally, Docker, or SSH.",
"stability": "stable",
"summary": "Absolute path to a directory where builds are stored in the context of the selected executor."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 62
},
"name": "buildsDir",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"see": "https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnerscaches3-section",
"stability": "stable",
"summary": "The runner's AWS S3 cache configuration."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 135
},
"name": "cache",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.CacheConfiguration"
}
},
{
"abstract": true,
"docs": {
"remarks": "For example, locally, Docker, or SSH. If the docker executor is used, this directory needs to be included in its volumes parameter.",
"stability": "stable",
"summary": "Absolute path to a directory where build caches are stored in context of selected executor."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 67
},
"name": "cacheDir",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "Used only if the runner can’t connect to the GitLab URL.",
"stability": "stable",
"summary": "Overwrite the URL for the GitLab instance."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 104
},
"name": "cloneUrl",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "When set to true, then debug log (trace) remains disabled, even if CI_DEBUG_TRACE is set to true by the user.",
"stability": "stable",
"summary": "Disables the CI_DEBUG_TRACE feature."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 109
},
"name": "debugTraceDisabled",
"optional": true,
"type": {
"primitive": "boolean"
}
},
{
"abstract": true,
"docs": {
"see": "https://docs.gitlab.com/runner/configuration/advanced-configuration.html#the-runnersdocker-section",
"stability": "stable",
"summary": "The runner's docker configuration."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 121
},
"name": "docker",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.DockerConfiguration"
}
},
{
"abstract": true,
"docs": {
"default": "[\"DOCKER_DRIVER=overlay2\", \"DOCKER_TLS_CERTDIR=/certs\"]",
"stability": "stable",
"summary": "Append or overwrite environment variables."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 73
},
"name": "environment",
"optional": true,
"type": {
"collection": {
"elementtype": {
"primitive": "string"
},
"kind": "array"
}
}
},
{
"abstract": true,
"docs": {
"default": "\"docker+machine\"",
"stability": "stable",
"summary": "Select how a project should be built."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 52
},
"name": "executor",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "10",
"remarks": "0 (default) means do not limit.",
"stability": "stable",
"summary": "Limit how many jobs can be handled concurrently by this registered runner."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 46
},
"name": "limit",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"see": "https://docs.gitlab.com/runner/configuration/runner_autoscale_aws/#the-runnersmachine-section",
"stability": "stable",
"summary": "The runner's Docker Machine configuration."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 128
},
"name": "machine",
"optional": true,
"type": {
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.MachineConfiguration"
}
},
{
"abstract": true,
"docs": {
"default": "\"gitlab-runner\"",
"remarks": "Informational only.",
"stability": "stable",
"summary": "The runner’s description."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 10
},
"name": "name",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "52428800 (50GB)",
"remarks": "Default is 4096 (4MB).",
"stability": "stable",
"summary": "Maximum build log size in kilobytes."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 84
},
"name": "outputLimit",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"remarks": "To insert multiple commands, use a (triple-quoted) multi-line string or \\n character.",
"stability": "stable",
"summary": "Commands to be executed on the runner just after executing the build, but before executing after_script."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 99
},
"name": "postBuildScript",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "To insert multiple commands, use a (triple-quoted) multi-line string or \\n character.",
"stability": "stable",
"summary": "Commands to be executed on the runner after cloning the Git repository, but before executing the build."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 94
},
"name": "preBuildScript",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "Use it to adjust the Git client configuration first, for example. To insert multiple commands, use a (triple-quoted) multi-line string or \\n character.",
"stability": "stable",
"summary": "Commands to be executed on the runner before cloning the Git repository."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 89
},
"name": "preCloneScript",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "Extra job monitoring workers that pass their results as job artifacts to GitLab."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 114
},
"name": "referees",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "Default is 1.",
"stability": "stable",
"summary": "Limit number of concurrent requests for new jobs from GitLab."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 78
},
"name": "requestConcurrency",
"optional": true,
"type": {
"primitive": "number"
}
},
{
"abstract": true,
"docs": {
"remarks": "Default value is platform dependent.",
"stability": "stable",
"summary": "Name of shell to generate the script."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 57
},
"name": "shell",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "See Self-signed certificates or custom Certification Authorities documentation.",
"stability": "stable",
"summary": "When using HTTPS, file that contains the certificates to verify the peer."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 30
},
"name": "tlsCaFile",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "When using HTTPS, file that contains the certificate to authenticate with the peer."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 35
},
"name": "tlsCertFile",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"stability": "stable",
"summary": "When using HTTPS, file that contains the private key to authenticate with the peer."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 40
},
"name": "tlsKeyFile",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"remarks": "Will be replaced by the runner's props token SSM Parameter",
"see": "https://docs.gitlab.com/ee/api/runners.html#register-a-new-runner",
"stability": "stable",
"summary": "The runner’s authentication token, which is obtained during runner registration. Not the same as the registration token."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 25
},
"name": "token",
"optional": true,
"type": {
"primitive": "string"
}
},
{
"abstract": true,
"docs": {
"default": "\"https://gitlab.com\"",
"stability": "stable",
"summary": "GitLab instance URL."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/runner-configuration.ts",
"line": 16
},
"name": "url",
"optional": true,
"type": {
"primitive": "string"
}
}
],
"symbolId": "src/runner-configuration/runner-configuration:RunnerConfiguration"
},
"@pepperize/cdk-autoscaling-gitlab-runner.SharedCreateOptions": {
"assembly": "@pepperize/cdk-autoscaling-gitlab-runner",
"datatype": true,
"docs": {
"see": "https://gitlab.com/gitlab-org/ci-cd/docker-machine/-/blob/main/commands/create.go",
"stability": "stable"
},
"fqn": "@pepperize/cdk-autoscaling-gitlab-runner.SharedCreateOptions",
"kind": "interface",
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 4
},
"name": "SharedCreateOptions",
"properties": [
{
"abstract": true,
"docs": {
"default": "https://releases.rancher.com/install-docker/20.10.21.sh",
"stability": "stable",
"summary": "Custom URL to use for engine installation."
},
"immutable": true,
"locationInModule": {
"filename": "src/runner-configuration/machine-options.ts",
"line": 10
},
"name": "engineInstallUrl",
"optional": true,
"type": {
"primitive": "string"
}
}
],
"symbolId": "src/runner-configuration/machine-options:SharedCreateOptions"
}
},
"version": "0.2.717",
"fingerprint": "f3xd9Ue0kNyhJUHTMkyooYdY3ki9f7bYugSlFS2SYe4="
}