Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ This walkthrough has the following pre-requisites:

This guide uses code from the [Gruntwork Infrastructure as Code Library](https://gruntwork.io/infrastructure-as-code-library/), as it
implements most of the production-grade design for you out of the box. Make sure to read
[How to use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library).
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork).

</div>

Expand All @@ -31,7 +31,7 @@ You must be a <span className="js-subscribe-cta">Gruntwork subscriber</span> to
This guide uses [Terraform](https://www.terraform.io/) to define and manage all the infrastructure as code. If you’re
not familiar with Terraform, check out [A
Comprehensive Guide to Terraform](https://blog.gruntwork.io/a-comprehensive-guide-to-terraform-b3d32832baca), [A Crash Course on Terraform](https://training.gruntwork.io/p/terraform), and
[How to use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library).
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork).

#### Terragrunt

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@

This guide uses [Terragrunt](https://github.com/gruntwork-io/terragrunt) and its associated file and folder
structure to deploy Terraform modules. Please note that **Terragrunt is NOT required for using Terraform modules from
the Gruntwork Infrastructure as Code Library.** Check out [How to use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library)
the Gruntwork Infrastructure as Code Library.** Check out our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork)
for instructions on alternative options, such as
[deploying with plain Terraform](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#deploy_using_plain_terraform).
[deploying with plain Terraform](/docs/intro/first-deployment/deploy#deploy-using-plain-terraform).

:::

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This walkthrough has the following pre-requisites:

This guide uses code from the [Gruntwork Infrastructure as Code Library](https://gruntwork.io/infrastructure-as-code-library/), as it
implements most of the production-grade design for you out of the box. Make sure to read
[How to use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library).
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork).

</div>

Expand All @@ -25,7 +25,7 @@ You must be a <span className="js-subscribe-cta">Gruntwork subscriber</span> to
This guide uses [Terraform](https://www.terraform.io/) to define and manage all the infrastructure as code. If you’re
not familiar with Terraform, check out [A
Comprehensive Guide to Terraform](https://blog.gruntwork.io/a-comprehensive-guide-to-terraform-b3d32832baca), [A Crash Course on Terraform](https://training.gruntwork.io/p/terraform), and
[How to Use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library)
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork)

#### CircleCI

Expand All @@ -44,12 +44,14 @@ for instructions.

#### Repository structure

This guide assumes your infrastructure code is organized in a manner similar to that covered in the
[Using
Terraform Modules section of the How to Use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library/#using_terraform_modules) guide. This means that you
should have two repositories for your infrastructure code, `infrastructure-modules` and `infrastructure-live`. Make
sure that the `infrastructure-live` repository is locked down as recommended in [Lock down VCS systems](../2-production-grade-design/7-lock-down-vcs-systems.md). This guide
will assume that `master` is the protected branch where infrastructure is deployed from.
This guide assumes your infrastructure code is organized in a manner similar to
that covered in the [Prepare Your Module](/docs/intro/first-deployment/using-terraform-modules) introduction section. This means
that you should have two repositories for your infrastructure code,
`infrastructure-modules` and `infrastructure-live`. Make sure that the
`infrastructure-live` repository is locked down as recommended in [Lock down VCS
systems](../2-production-grade-design/7-lock-down-vcs-systems.md). This guide
will assume that `master` is the protected branch where infrastructure is
deployed from.

</div>

Expand All @@ -58,8 +60,8 @@ will assume that `master` is the protected branch where infrastructure is deploy
This guide will use [Terragrunt](https://github.com/gruntwork-io/terragrunt) and its associated file and folder
structure to deploy Terraform modules. Please note that **Terragrunt is NOT required for using Terraform modules from
the Gruntwork Infrastructure as Code Library.** Check out
[How to Use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library/) for instructions
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork) for instructions
on alternative options, such as how to
[Deploy using plain Terraform](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library/#deploy_using_plain_terraform).
[Deploy using plain Terraform](/docs/intro/first-deployment/deploy#deploy-using-plain-terraform).

:::
Original file line number Diff line number Diff line change
Expand Up @@ -125,9 +125,9 @@ output "url" {
```

At this point, you’ll want to test your code. See
[Manual tests for Terraform code](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#manual_tests_terraform)
[Manual tests for Terraform code](/docs/intro/first-deployment/testing#manual-tests-for-terraform-code)
and
[Automated tests for Terraform code](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#automated_tests_terraform)
[Automated tests for Terraform code](/docs/intro/first-deployment/testing#automated-tests-for-terraform-code)
for instructions.

Once your `ecr-repo` module is working the way you want, submit a pull request, get your changes merged into the
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ This walkthrough has the following pre-requisites:

This guide uses code from the [Gruntwork Infrastructure as Code Library](https://gruntwork.io/infrastructure-as-code-library/), as it
implements most of the production-grade design for you out of the box. Make sure to read
[How to use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library).
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork).

</div>

Expand All @@ -29,7 +29,7 @@ You must be a <span className="js-subscribe-cta">Gruntwork subscriber</span> to
This guide uses [Terraform](https://www.terraform.io/) to define and manage all the infrastructure as code. If you’re
not familiar with Terraform, check out [A
Comprehensive Guide to Terraform](https://blog.gruntwork.io/a-comprehensive-guide-to-terraform-b3d32832baca), [A Crash Course on Terraform](https://training.gruntwork.io/p/terraform), and
[How to Use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library)
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork)

#### AWS accounts

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -103,8 +103,8 @@ file for reference.

## Test your wrapper module

At this point, you’ll want to test your code. See [Manual tests for Terraform code](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#manual_tests_terraform)
and [Automated tests for Terraform code](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#automated_tests_terraform)
At this point, you’ll want to test your code. See [Manual tests for Terraform code](/docs/intro/first-deployment/testing#manual-tests-for-terraform-code)
and [Automated tests for Terraform code](/docs/intro/first-deployment/testing#automated-tests-for-terraform-code)
for instructions.

## Merge and release your wrapper module
Expand Down Expand Up @@ -149,9 +149,9 @@ route table entries, more bastion hosts, and more credentials.

This guide will use [Terragrunt](https://github.com/gruntwork-io/terragrunt) and its associated file and folder
structure to deploy Terraform modules. Please note that **Terragrunt is NOT required for using Terraform modules from
the Gruntwork Infrastructure as Code Library.** Check out [How to Use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library)
the Gruntwork Infrastructure as Code Library.** Check out our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork)
for instructions on alternative options, such as how to
[deploy using plain terraform](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#deploy_using_plain_terraform).
[deploy using plain terraform](/docs/intro/first-deployment/deploy#deploy-using-plain-terraform).

:::

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -171,8 +171,8 @@ file for reference.

## Test your wrapper module

At this point, you’ll want to test your code. See [Manual tests for Terraform code](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#manual_tests_terraform)
and [Automated tests for Terraform code](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#automated_tests_terraform)
At this point, you’ll want to test your code. See [Manual tests for Terraform code](/docs/intro/first-deployment/testing#manual-tests-for-terraform-code)
and [Automated tests for Terraform code](/docs/intro/first-deployment/testing#automated-tests-for-terraform-code)
for instructions.

## Merge and release your wrapper module
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ This walkthrough has the following pre-requisites:

This guide uses code from the [Gruntwork Infrastructure as Code Library](https://gruntwork.io/infrastructure-as-code-library/), as it
implements most of the production-grade design for you out of the box. Make sure to read
[How to use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library).
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork).

</div>

Expand All @@ -31,7 +31,7 @@ You must be a <span className="js-subscribe-cta">Gruntwork subscriber</span> to
This guide uses [Terraform](https://www.terraform.io/) to define and manage all the infrastructure as code. If you’re
not familiar with Terraform, check out [A
Comprehensive Guide to Terraform](https://blog.gruntwork.io/a-comprehensive-guide-to-terraform-b3d32832baca), [A Crash Course on Terraform](https://training.gruntwork.io/p/terraform), and
[How to Use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library).
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork).

#### Python and Kubergrunt

Expand All @@ -44,7 +44,7 @@ Python and `kubergrunt` installed on any computer where you will be running Terr
This guide assumes you are deploying a Kubernetes cluster for use with [Docker](https://www.docker.com). The guide also
uses [Packer](https://www.packer.io) to build VM images. If you’re not familiar with Docker or Packer, check out
[A Crash Course on Docker and Packer](https://training.gruntwork.io/p/a-crash-course-on-docker-packer) and
[How to Use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library).
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork).

#### AWS accounts

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,9 +107,9 @@ module "dns_mgmt_to_app" {
```

At this point, you’ll want to test your code. See
[Manual tests for Terraform code](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#manual_tests_terraform)
[Manual tests for Terraform code](/docs/intro/first-deployment/testing#manual-tests-for-terraform-code)
and
[Automated tests for Terraform code](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#automated_tests_terraform)
[Automated tests for Terraform code](/docs/intro/first-deployment/testing#automated-tests-for-terraform-code)
for instructions.

Once your updated `vpc-app` wrapper module is working the way you want, submit a pull request, get your changes merged
Expand All @@ -126,9 +126,9 @@ git push --follow-tags
This guide will use [Terragrunt](https://github.com/gruntwork-io/terragrunt) and its associated file and folder
structure to deploy Terraform modules. Please note that **Terragrunt is NOT required for using Terraform modules from
the Gruntwork Infrastructure as Code Library.** Check out
[How to Use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library) for instructions
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork) for instructions
on alternative options, such as how to
[Deploy using plain Terraform](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#deploy_using_plain_terraform).
[Deploy using plain Terraform](/docs/intro/first-deployment/deploy#deploy-using-plain-terraform).

:::

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ pagination_label: Production-grade Design

In [core concepts](../1-core-concepts/0-intro.md) we discussed the basics of the AWS Foundations Benchmark. Although it's possible to achieve
compliance with the Benchmark by manually configuring each setting in the web console or entering the CLI commands, we
strongly discourage this approach. It precludes [the myriad benefits of using code to manage infrastructure](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library/#infrastructure-as-code).
strongly discourage this approach. It precludes [the myriad benefits of using code to manage infrastructure](/docs/intro/core-concepts/infrastructure-as-code).

Instead, we advise using [Terraform](https://www.terraform.io) (or similar tools, such as
[CloudFormation](https://aws.amazon.com/cloudformation/) or [Pulumi](https://www.pulumi.com/) to configure cloud
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ This walkthrough has the following pre-requisites:

This guide uses code from the [Gruntwork Infrastructure as Code Library](https://gruntwork.io/infrastructure-as-code-library/), as it
implements most of the production-grade design for you out of the box. Make sure to read
[How to use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library).
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork).

## Gruntwork Compliance for CIS AWS Foundations Benchmark

Expand All @@ -37,8 +37,7 @@ This guide uses [Terraform](https://www.terraform.io/) to define and manage all
you’re not familiar with Terraform, check out
[A Comprehensive Guide to Terraform](https://blog.gruntwork.io/a-comprehensive-guide-to-terraform-b3d32832baca),
[A Crash Course on Terraform](https://training.gruntwork.io/p/terraform), and
[How to Use the Gruntwork
Infrastructure as Code Library](https://gruntwork.ioguides/foundations/how-to-use-gruntwork-infrastructure-as-code-library).
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork).

## Terragrunt

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,5 +55,4 @@ You can use this approach on each AWS account. In many cases, you’ll only need
same methodology can be applied to pre-production accounts as well.

If you need to brush up on how the IaC Library works, read the
[How to use
the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library/) guide.
our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork) section.
Original file line number Diff line number Diff line change
Expand Up @@ -58,9 +58,9 @@ We’ll be using the `landingzone/account-baseline-root` module from [terraform-
:::info

This guide will use [Terragrunt](https://github.com/gruntwork-io/terragrunt) and its associated file and folder
structure to deploy Terraform modules. Please note that **Terragrunt is NOT required for using Terraform modules from the Gruntwork Infrastructure as Code Library.** Check out [How to use the Gruntwork Infrastructure as Code Library](https://gruntwork.ioguides/foundations/how-to-use-gruntwork-infrastructure-as-code-library)
structure to deploy Terraform modules. Please note that **Terragrunt is NOT required for using Terraform modules from the Gruntwork Infrastructure as Code Library.** Check out our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork) section
for instructions on alternative options, such as how to
[deploying how to use plain terraform](https://gruntwork.ioguides/foundations/how-to-use-gruntwork-infrastructure-as-code-library#deploy_using_plain_terraform).
[deploying how to use plain terraform](/docs/intro/first-deployment/deploy#deploy-using-plain-terraform).

:::

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ All of the infrastructure in this repo is managed as **code** using [Terragrunt]
[Gruntwork Service Catalog](https://github.com/gruntwork-io/terraform-aws-service-catalog/).

For more info on Infrastructure as Code and Terraform, check out [A Comprehensive Guide to
Terraform](https://blog.gruntwork.io/a-comprehensive-guide-to-terraform-b3d32832baca) and our guide on [How to use the Gruntwork Infrastructure as Code Library](https://gruntwork.io/guides/foundations/how-to-use-gruntwork-infrastructure-as-code-library/).
Terraform](https://blog.gruntwork.io/a-comprehensive-guide-to-terraform-b3d32832baca) and our our [Introduction to Gruntwork](/docs/intro/overview/intro-to-gruntwork) section.

## AWS accounts

Expand Down
Loading