Skip to content

recommerce/devops-terraform-codebuild

 
 

Repository files navigation

Terraform Modules Template

Requirements

Name Version
terraform >= 1.3
aws >= 4.24

Providers

Name Version
aws 4.24.0

Modules

Name Source Version
codebuild_service_role terraform-aws-modules/iam/aws//modules/iam-assumable-role ~> 5.2.0
codebuild_service_role_policy terraform-aws-modules/iam/aws//modules/iam-policy ~> 5.2.0

Resources

Name Type
aws_codebuild_project.this resource
aws_caller_identity.current data source
aws_iam_policy_document.codebuild data source
aws_iam_policy_document.codebuild_inline_policy data source
aws_region.current data source

Inputs

Name Description Type Default Required
additional_iam Additional IAM Policy Document for Codebuild list(any) [] no
additional_policy_arns Additional policies to be added to the IAM role. list(string) [] no
artifacts Artifacts configuration block.
object({
type = string # Valid values are CODEPIPELINE, NO_ARTIFACTS, S3
name = optional(string)
location = optional(string)
})
{
"type": "NO_ARTIFACTS"
}
no
artifacts_bucket_name Name of the artifacts bucket string "" no
build_compute_type Compute resources the build project will use. string "BUILD_GENERAL1_MEDIUM" no
build_image Docker image to use for this build project. string "aws/codebuild/standard:6.0" no
build_image_pull_credentials_type Type of credentials AWS CodeBuild uses to pull images in your build. string "CODEBUILD" no
build_timeout Number of minutes, from 5 to 480 (8 hours), for AWS CodeBuild to wait until timing out any related build that does not get marked as completed. number 60 no
build_type Type of build environment to use for related builds. string "LINUX_CONTAINER" no
buildspec The build spec declaration to use for this build project's related builds. string "" no
cache Cache configuration block.
object({
type = optional(string) # Valid values: NO_CACHE, LOCAL, S3. Defaults to NO_CACHE.
modes = optional(list(string)) # Required when cache type is LOCAL
location = optional(string) # Required when cache type is S3
})
{} no
create_service_role Create new IAM service role and policy if true. bool true no
description Short description of the project. string n/a yes
encryption_key_arn AWS Key Management Service (AWS KMS) customer master key (CMK) to be used for encrypting the build project's build output artifacts. string null no
environment_variables Environment Variables for CodeBuild Project.
list(object({
name = string
value = string
type = optional(string)
}))
n/a yes
name CodeBuild Project's name. string n/a yes
privileged_mode Whether to enable running the Docker daemon inside a Docker container. bool false no
report_build_status Whether to report the status of a build's start and finish to your source provider. This option is only valid when the source_type is BITBUCKET or GITHUB. bool false no
service_role_arn Existing CodeBuild service role arn. string null no
service_role_name Service Role Name. string "" no
source_location Location of the source code from git or s3. string "" no
source_type Type of repository that contains the source code to be built. string "CODEPIPELINE" no

Outputs

Name Description
arn CodeBuild ARN.
id CodeBuild Id.
name CodeBuild name.
service_role_arn CodeBuild service role ARN.

About

Terraform module for CodeBuild

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HCL 100.0%