munki-repo

grahamgilbert/munki-repo/aws

Terraform Module HCL AWS

A Terraform module to set up a Munki repo

Install
module "munki-repo" {
source = "grahamgilbert/munki-repo/aws"
version = "0.3.0"
}
⭐ Source on GitHub 📦 Registry page
README

Terraform Munki Repo terraform-munki-repo is a Terraform module that will set up a production-ready Munki repo for you. It is designed for use with Terraform 1.0.x More specifically, it will create: - An S3 bucket to store your Munki repo - An S3 bucket to store your logs - A CloudFront Distribution so your clients will pull from an AWS endpoint near them - A Lambda@Edge function that will set up basic authentication Why should I use this? A Munki repo is a basic web server. But you still need to worry about setting up one or more servers, patching those servers, and scaling them around the world if you have clients in more than one country. Amazon Web Services has crazy-high levels of uptime - more than we could ever manage ourselves. CloudFront powers some of the world's busiest websites

Inputs (17)
NameTypeDescriptionDefault
passwordstringPassword clients use. required
munki_s3_bucketstringThe name of your s3 Bucket required
usernamestringUsername clients use. required
default_cache_behavior_max_ttlnumberThe maximum amount of time (in seconds) that an object is in a CloudFront cache 31536000
icons_ordered_cache_behavior_min_ttlnumberThe minimum amount of time (in seconds) that you want icon objects to stay in Cl0
default_cache_behavior_default_ttlnumberThe default amount of time (in seconds) that an object is in a CloudFront cache 86400
manifests_ordered_cache_behavior_max_ttlnumberThe maximum amount of time (in seconds) that a manifest object is in a CloudFron60
prefixstringPrefix before lambda and IAM names to ensure uniqueness in your account."munki"
price_classstringThe price class your CloudFront Distribution should use."PriceClass_100"
catalogs_ordered_cache_behavior_min_ttlnumberThe minimum amount of time (in seconds) that you want catalog objects to stay in0
manifests_ordered_cache_behavior_default_ttlnumberThe default amount of time (in seconds) that a manifest object is in a CloudFron30
icons_ordered_cache_behavior_default_ttlnumberThe default amount of time (in seconds) that a icon object is in a CloudFront ca30
icons_ordered_cache_behavior_max_ttlnumberThe maximum amount of time (in seconds) that a icon object is in a CloudFront ca60
default_cache_behavior_min_ttlnumberThe minimum amount of time (in seconds) that you want objects to stay in CloudFr0
catalogs_ordered_cache_behavior_default_ttlnumberThe default amount of time (in seconds) that a catalog object is in a CloudFront30
catalogs_ordered_cache_behavior_max_ttlnumberThe maximum amount of time (in seconds) that a catalog object is in a CloudFront60
manifests_ordered_cache_behavior_min_ttlnumberThe minimum amount of time (in seconds) that you want manifest objects to stay i0
Outputs (4)
munki_bucket_id
log_bucket_id
cloudfront_id
cloudfront_url
Resources (12)
aws_cloudfront_distributionaws_cloudfront_origin_access_identityaws_iam_roleaws_lambda_functionaws_s3_bucketaws_s3_bucket_aclaws_s3_bucket_lifecycle_configurationaws_s3_bucket_loggingaws_s3_bucket_ownership_controlsaws_s3_bucket_policyaws_s3_bucket_public_access_blockaws_s3_bucket_server_side_encryption_configuration
Details
FrameworkTerraform Module
LanguageHCL
Version0.3.0
Cloud AWS
★ Stars65
Forks39
Total downloads8.7k
Inputs17
Outputs4
Resources12
LicenseNOASSERTION
Namespacegrahamgilbert
Updated