All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
[vNEXT] - yyyy-mm-dd]
[v3.5.0] - 2018-12-03]
slow_start
now exposed as a variable (thanks, @jwhitcraft 🥝)terraform-docs
doc generation process (and docs) updated as for the latest version.- tests repaired
[v3.4.0] - 2018-05-17]
- resources supporting the not logging scenario added. Outputs now accommodate.
- reorganized the resource explosion to separate files.
- tests reorganized to confine cruft.
terraform-docs
now supported and generating documentation. (Kiitos, @antonbabenko 🍒)
[v3.3.1] - 2018-05-06]
- sliced outputs were appended with a
- 1
in debugging. This introduced a bug which was fixed and verified through test.
[v3.3.0] - 2018-05-04]
target_group_arn_suffixes
added to support monitoring through CloudWatch (props, @jeff-everett 🤗)- Contributor Covenant gives guidelines on contributions.
- Issues and PR templates.
create_before_destroy
lifecycle policy added to the target groups. This allows target groups to be modified, though means they're recreated anytime they're changed. A change MUST include a change to thename
value or will fail on duplicates. (nice work, @egarbi 🦄)
- extra certs can now be applied to HTTPS listeners via the
extra_ssl_certs
list variable and correspondingextra_ssl_certs_count
.
load_balancer_security_groups
moved to simplersecurity_groups
.name_prefix
changed back toname
as the inflexibility of a 6 character prefix is overly restricting. Name conflicts must be dealt with by the developer. (cheers, @michaelmoussa 🎉)- upgraded terraform and kitchen terraform. terraform 0.11.4 and above errors out on warnings but has been mitigated with
TF_WARN_OUTPUT_ERRORS=1
per this issue.
- default values added for most target group and listener attributes.
- new application load balancer attributes added as variables with defaults.
- tests now cover listeners.
- listeners and target groups now defined by lists of maps allowing many-to-many relationships of those resources.
- listeners and target groups creation is now data driven through variables giving greater flexibility.
name_prefix
used where possible to avoid naming conflicts in resource testing.- logging to S3 now made manditory and done outside the module as this is better practice. (thanks, @alexjurkiewicz 🥂)
- terraform 0.11.3 now used in CI. 0.11.4 seems to have warnings on plan that become errors in CI.
target_type
variable for targeting IPs rather than instances (nice, @angusfz 👌)- Added variables for controlling front door ALB listening ports (thanks, @egarbi ✨)
- output for
target_group_name
for external consumption (boom! @ndench 🐱🐉)
- Clarified variable description and bucket policy (right on, @angstwad 👏)
- Docs and var description updates (everything helps, @tehmaspc 🦑)
alb_arn_suffix
output added for external consumption. (props, @mbolek 🐱🏍)- variables to control listener ports (wunderbar, @egarbi 🙌)
- Remove
region
input. If you'd like to customise the AWS provider configuration, this is supported using the newproviders
input which is a core Terraform feature. Read more. - update CI to use terraform 0.11.2 and KT 3.1.0.
- Several formatting changes to adhere to convention.
- ARN outputs of listeners for reuse outside the module. (thanks, @proj4spes! 👌)
- variable
health_check_matcher
determines a set or range of successful HTTP status codes for target group health checks (🧀 @mbolek). - adapted test kitchen configuration to KT 3.0.x.
- outputs added for listeners - these can be useful for ECR integration (🍰 @mbolek).
- Moved default
alb_protocols
to HTTP to lower barier of entry in getting started.
- added
create_log_bucket
andenable_logging
to help control logging more granularly.
- existing log-related variables made more descriptive (this is the breaking change)
- S3 policy related test made more explicit (⭐ @antonbabenko)
- TravisCI configuration added and now passing.
- badge added to docs.
- permissions section now in the example readme.
- placeholder shell script added for CI deployment. Eventually this should conditionally release to the registry when those APIs become available.
- altered tf variable
aws_region
toregion
. - replaced hardcoding the region to instead use a random region as retrieved by an awscli docker container within CI.
- example cert is now a regionally-specific resource enabling tests to run in various regions at once and not collide.
- ruby version bump means
Rhcl
becomesrhcl
.
- moved data sources to dedicated
data.tf
file. aws_caller_identity
now used to gather account_id rather than using a variable.- tests added for
target_group
and expanded foralb
. - input variables added for health checks, bucket policy, force_destroy_log_bucket - increasing flexibility.
- altered structure of module to conform to the new Terraform registry standards
principle_account_id
(sp) moved to a data source rather than variable map. Spelling corrected.- removed redundant
/test/alb
directory which had module contents copied. Test kitchen now uses the module itself. - pinned examples to provider and terraform versions to harden versioning.
- self signed cert added to the test fixtures, eliminating the need for manual upload and terraform.tfvars configuration.
- modules referenced in the test fixture are now sourced from the terraform registry.
- removed bucket_policy.json in favor of creating the policy via the
aws_iam_policy_document
resource or optionally a variable. - stringed list variables moved to native lists
- tag maps can now be provided (thanks @kwach)
- optional S3 logging (thanks @marocchino)
- Tests and fixtures for ALB components using awspec and test kitchen
- S3 log bucket and policy rendering for logging now in place
- root_principle_id added and referenced through a map for s3 bucket policy
- string lists moved to native list types
- default region removed
- Restructured project templates to alb dir to add testing. This is a breaking change so upping major version.
- Redundant examples dir removed
- Updated documentation
- Initial release.