Coder Social home page Coder Social logo

rhythmictech / terraform-aws-helmrepo Goto Github PK

View Code? Open in Web Editor NEW
2.0 4.0 2.0 27 KB

Create an S3 bucket intended to serve as a Helm repo. Configures basic encryption.

Home Page: https://registry.terraform.io/modules/rhythmictech/helmrepo/aws

License: MIT License

HCL 88.07% Shell 11.93%
terraform terraform-module aws helm helm-repository s3

terraform-aws-helmrepo's Introduction

terraform-aws-helmrepo

tflint tfsec yamllint misspell pre-commit-check

Create an S3 bucket intended to serve as a Helm repo. Features:

  • Configures basic encryption
  • Supports sharing the bucket across many accounts with var.allowed_account_ids, var.allowed_account_ids_writ
  • Supports cross-region bucket replication with var.dest_region

Usage

module {
    source = "rhythmictech/helmrepo/aws"
}

Requirements

Name Version
terraform >= 0.12.19
aws >= 4.0
random >= 3

Providers

Name Version
aws 4.56.0
aws.destination 4.56.0
random 3.4.3

Modules

No modules.

Resources

Name Type
aws_iam_policy.replication_policy resource
aws_iam_policy_attachment.replication resource
aws_iam_role.replication resource
aws_s3_bucket.destination resource
aws_s3_bucket.this resource
aws_s3_bucket_policy.destination resource
aws_s3_bucket_policy.this resource
aws_s3_bucket_public_access_block.dest_block_public_access resource
aws_s3_bucket_public_access_block.this resource
aws_s3_bucket_replication_configuration.this resource
random_id.replication resource
aws_caller_identity.current data source
aws_iam_policy_document.destination data source
aws_iam_policy_document.destination_combined data source
aws_iam_policy_document.replication_assume_role data source
aws_iam_policy_document.replication_policy_doc data source
aws_iam_policy_document.this data source
aws_region.region data source

Inputs

Name Description Type Default Required
allowed_account_ids List of AWS account IDs to grant read-only access to the repo. Due to how policies are constructed, there's effectively a limit of about 9 accounts. list(string) [] no
allowed_account_ids_write List of AWS account IDs to grant write access to the repo. Due to how policies are constructed, there's effectively a limit of about 9 accounts. list(string) [] no
dest_extra_bucket_policy Extra bucket policies to attach to the destination bucket. Pass in as aws_iam_policy_document json string "" no
dest_logging_bucket S3 bucket name to log bucket access requests to (optional) string null no
dest_logging_bucket_prefix S3 bucket prefix to log bucket access requests to (optional). If blank but a logging_bucket is specified, this will be set to the name of the bucket string null no
dest_region Region to replicate repo bucket to (omit to disable replication) string "" no
logging_bucket S3 bucket name to log bucket access requests to (optional) string null no
logging_bucket_prefix S3 bucket prefix to log bucket access requests to (optional). If blank but a logging_bucket is specified, this will be set to the name of the bucket string null no
name Bucket name for the helm repo. Specify to control the exact name of the bucket, otherwise use name_suffix string null no
name_suffix Bucket suffix for the repo (bucket will be named [ACCOUNT_ID]-[REGION]-[name_suffix], not used if name is specified) string "helmrepo" no
tags Tags to add to supported resources map(string) {} no

Outputs

Name Description
s3_bucket Bucket name of the repo

terraform-aws-helmrepo's People

Contributors

cdaniluk avatar kmackowick avatar rsanchez-s avatar sblack4 avatar smiller171 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

terraform-aws-helmrepo's Issues

[BUG] AWS provider v4 produces warnings for bucket versioning configured in the bucket resource

Describe the bug

│ 
│   with module.helm-repo.aws_s3_bucket.this,
│   on .terraform/modules/helm-repo/main.tf line 29, in resource "aws_s3_bucket" "this":
│   29: resource "aws_s3_bucket" "this" {
│ 
│ Use the aws_s3_bucket_versioning resource instead
│ 
│ (and 10 more similar warnings elsewhere)

To Reproduce
Steps to reproduce the behavior:
Terraform v1.3.9

      source  = "hashicorp/aws"
      version = ">= 4.1.0"
    }```
**Expected behavior**
No warnings
**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
 - OS: MacOS Venture


**Additional context**
Add any other context about the problem here.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.