Skip to content
A skeleton CodePipeline implementation in Terraform
HCL
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
deployer
.gitignore
LICENSE
README.md
diagram.png
interface.tf
main.tf

README.md

deployment-pipeline

This module creates a CodePipeline for deploying a service across multiple AWS accounts.

diagram

Usage

This module is meant to be used as a remote Terraform module within other services.

module "pipeline" {
  source = "github.com/jdhollis/deployment-pipeline"

  builder_build_timeout  = "" # Defaults to 15 minutes
  deployer_build_timeout = "" # Defaults to 15 minutes

  env_deployer_policy_json = {
    stage = module.stage.json
    prod  = module.prod.json
  }

  github_token = var.github_token
  github_user  = var.github_user

  region                     = var.region
  remote_state_bucket        = ""
  remote_state_locking_table = ""

  required_services = [
    ""
  ]

  service_name = ""
}

You need to create service-specific deployer policy JSON for each environment. See my pipeline-example, particularly service-example/pipeline/env-deployer-policy.

If the deployer needs access to remote state from other services, you can pass in their keys to required_services (e.g., "datomic", "elasticsearch", etc.).

You can’t perform that action at this time.