The resources you need provisioned in AWS to start managing resources with Pipelines are:
+ +For every account you want Pipelines to manage infrastructure in.
+ +The process that we'll follow to get these resources ready for Pipelines is:
+ +First, confirm that you have a `root.hcl` file in the root of your project that looks something like this:
+ +If you don't have a `root.hcl` file, you might need to customize the bootstrapping process, as the Terragrunt scale catalog expects a `root.hcl` file in the root of the project. Please contact [Gruntwork support](/support) for assistance if you need help.
+ +For each AWS account that needs bootstrapping, we'll use Boilerplate to scaffold the necessary content. Run this command from the root of your project for each account:
+ +If you're using a self-hosted GitLab instance, you'll want to make sure the issuer is set correctly when calling Boilerplate.
+ +Once you've scaffolded out the accounts you want to bootstrap, you can use Terragrunt to provision the resources in each of these accounts.
+ +Make sure that you authenticate to each AWS account you are bootstrapping using AWS credentials for that account before you attempt to provision resources in it.
+ +You can follow the documentation here to authenticate with the AWS provider. You are advised to choose an authentication method that doesn't require any hard-coded credentials, like assuming an IAM role.
+ +For each account you want to bootstrap, you'll need to run the following commands:
+ +First, make sure that everything is set up correctly by running a plan in the `bootstrap` directory in `name-of-account/_global` where `name-of-account` is the name of the AWS account you want to bootstrap.
+ +The resources you need provisioned in Azure to start managing resources with Pipelines are:
+ +For each Azure subscription that needs bootstrapping, we'll use Boilerplate to scaffold the necessary content. Run this command from the root of your project for each subscription:
+ +You can reply `y` to all the prompts to include dependencies, and accept defaults unless you want to customize something.
+ +Alternatively, you could run Boilerplate non-interactively by passing the `--non-interactive` flag. You'll need to supply the relevant values for required variables in that case.
+ +e.g.
+ +You can also choose to store these values in a YAML file and pass it to Boilerplate using the `--var-file` flag.
+ +Once you've scaffolded out the subscriptions you want to bootstrap, you can use Terragrunt to provision the resources in your Azure subscription.
+ +If you haven't already, you'll want to authenticate to Azure using the `az` CLI.
+ +Next, finalize the `.gruntwork/environment-(name-of-subscription).hcl` file in the root of your project to reference the IDs for the applications we just provisioned.
+ +You can find the values for the `plan_client_id` and `apply_client_id` by running `terragrunt stack output` in the `bootstrap` directory in `name-of-subscription/bootstrap`.
+ +The relevant bits that you want to extract from the stack output are the following:
+ +You can use those values to set the values for `plan_client_id` and `apply_client_id` in the `.gruntwork/environment-(name-of-subscription).hcl` file.
+ +Once you've provisioned the resources in your Azure subscription, you can pull the resources into state using the storage account we just provisioned.
+ +The resources you need provisioned in AWS to start managing resources with Pipelines are:
+ +For every account you want Pipelines to manage infrastructure in.
+ +The process that we'll follow to get these resources ready for Pipelines is:
+ +First, confirm that you have a `root.hcl` file in the root of your project that looks something like this:
+ +If you don't have a `root.hcl` file, you might need to customize the bootstrapping process, as the Terragrunt scale catalog expects a `root.hcl` file in the root of the project. Please contact [Gruntwork support](/support) for assistance if you need help.
+ +For each AWS account that needs bootstrapping, we'll use Boilerplate to scaffold the necessary content. Run this command from the root of your project for each account:
+ +If you're using a self-hosted GitLab instance, you'll want to make sure the issuer is set correctly when calling Boilerplate.
+ +Once you've scaffolded out the accounts you want to bootstrap, you can use Terragrunt to provision the resources in each of these accounts.
+ +Make sure that you authenticate to each AWS account you are bootstrapping using AWS credentials for that account before you attempt to provision resources in it.
+ +You can follow the documentation here to authenticate with the AWS provider. You are advised to choose an authentication method that doesn't require any hard-coded credentials, like assuming an IAM role.
+ +For each account you want to bootstrap, you'll need to run the following commands:
+ +First, make sure that everything is set up correctly by running a plan in the `bootstrap` directory in `name-of-account/_global` where `name-of-account` is the name of the AWS account you want to bootstrap.
+ +The resources you need provisioned in Azure to start managing resources with Pipelines are:
+ +For each Azure subscription that needs bootstrapping, we'll use Boilerplate to scaffold the necessary content. Run this command from the root of your project for each subscription:
+ +You can reply `y` to all the prompts to include dependencies, and accept defaults unless you want to customize something.
+ +Alternatively, you could run Boilerplate non-interactively by passing the `--non-interactive` flag. You'll need to supply the relevant values for required variables in that case.
+ +e.g.
+ +You can also choose to store these values in a YAML file and pass it to Boilerplate using the `--var-file` flag.
+ +Once you've scaffolded out the subscriptions you want to bootstrap, you can use Terragrunt to provision the resources in your Azure subscription.
+ +If you haven't already, you'll want to authenticate to Azure using the `az` CLI.
+ +Next, finalize the `.gruntwork/environment-(name-of-subscription).hcl` file in the root of your project to reference the IDs for the applications we just provisioned.
+ +You can find the values for the `plan_client_id` and `apply_client_id` by running `terragrunt stack output` in the `bootstrap` directory in `name-of-subscription/bootstrap`.
+ +The relevant bits that you want to extract from the stack output are the following:
+ +You can use those values to set the values for `plan_client_id` and `apply_client_id` in the `.gruntwork/environment-(name-of-subscription).hcl` file.
+ +Once you've provisioned the resources in your Azure subscription, you can pull the resources into state using the storage account we just provisioned.
+ +