actions-pipeline-resources

axetrading/actions-pipeline-resources/github

Terraform Module HCL GITHUB

Terraform module for a GitHub Actions pipeline with access to AWS, without having to manage any credentials

Install
module "actions-pipeline-resources" {
source = "axetrading/actions-pipeline-resources/github"
version = "7.0.0"
}
plain text: /constructs/tfmod-axetrading-actions-pipeline-resources-github/install.txt
⭐ Source on GitHub 📦 Registry page
README

GitHub Actions Pipeline Resources Terraform Module Resources to support a repo and pipeline in GitHub. This module creates a GitHub repo with an AWS IAM Role that an actions pipeline within the repo can assume. This is achieved without having to manage any credentials. Auth for assuming the role is achieved with GitHub's OIDC provider and identity federation - see: https://github.com/aws-actions/configure-aws-credentials Note that you have to configure the GitHub organisation via the owner GitHub provider config in the caller. To run the tests (don't currently test any behaviour, just provisioning and destroying) you need to have a GITHUB\_TOKEN exported that's a PAT (Personal Access Token) with the repo and read:org oauth scopes. Due to a bug (https://github.com/integrations/terraform-pro

Inputs (9)
NameTypeDescriptionDefault
maintainer_teamstringName of one team who maintains the pipeline. required
namestringName of the repo, used to name resources to make it easy to find the source required
tf_depsobject({ tfstate_bucket_naTerraform depdendencies - `tfstate_bucket_name` and `tflocks_table_name` required
environmentsmap(object({ role_arn = st{}
assume_role_arnslist(string)IAM Roles ARNs to allow the build role to assume[]
build_policy_arnslist(string)IAM Policy ARNs to attach to the build role[]
allow_provisioning_serviceslist(string)AWS service to add to the policy for provisioning (e.g. "s3")[]
auto_initbool(Optional) Set to true to produce an initial commit in the repository.false
archive_on_deletebooltrue
Outputs (3)
repo_url — URL of the repo
repo_name — Name of the repo
build_role_arn — ARN for the role to assume for the builds
Resources (8)
aws_iam_policyaws_iam_roleaws_iam_role_policy_attachmentgithub_actions_environment_secretgithub_actions_secretgithub_repositorygithub_team_repositorynull_resource
Details
FrameworkTerraform Module
LanguageHCL
Version7.0.0
Cloud GITHUB
Total downloads1.4k
Inputs9
Outputs3
Resources8
Namespaceaxetrading
Updated