From 95f5b1ab3844e0a3842ff25ccc25c6864f487ae7 Mon Sep 17 00:00:00 2001 From: Danny Schofield Date: Mon, 6 May 2024 12:39:53 -0400 Subject: [PATCH] mintlifydocs: include Cloudformation when talking about stack types --- mintlifydocs/config/organization.mdx | 15 +++++++------- .../Assign-IaC-Blueprints-To-Accounts.mdx | 20 ++++++++++++++----- mintlifydocs/features/localstack.mdx | 2 +- mintlifydocs/features/scps.mdx | 2 +- mintlifydocs/introduction.mdx | 2 +- 5 files changed, 26 insertions(+), 15 deletions(-) diff --git a/mintlifydocs/config/organization.mdx b/mintlifydocs/config/organization.mdx index a17744a..8dca7e0 100644 --- a/mintlifydocs/config/organization.mdx +++ b/mintlifydocs/config/organization.mdx @@ -3,7 +3,7 @@ title: 'organization.yml' description: 'Configure your `organization.yml`' --- -This file, `organization.yml` represents your AWS Organization. Any changes to `Accounts` or `OrganizationUnits` will be reflected in your AWS Organization. You can create new accounts or organization units, move accounts to different organization units, and assign `cdk` or `terraform` stacks at **any** level in the hierarchy. +This file, `organization.yml` represents your AWS Organization. Any changes to `Accounts` or `OrganizationUnits` will be reflected in your AWS Organization. You can create new accounts or organization units, move accounts to different organization units, and assign `Terraform`, `Cloudformation`, `CDK`stacks at **any** level in the hierarchy. # Structure Telophase allows you to structure accounts in any way the cloud provider allows. You can nest `Organization Units` within each other. @@ -13,7 +13,7 @@ Organization: Name: root ## AWS Organization Root OrganizationUnits: ## Organization Units - Name: ProductionTenants - Stacks: ## CDK or Terraform stacks to apply to all accounts in this Organization Unit + Stacks: ## Terraform, Cloudformation and CDK stacks to apply to all accounts in this Organization Unit - Path: go/src/cdk Type: CDK Name: telophase-owner @@ -46,7 +46,7 @@ Accounts: - Email: # (Required) Email used to create the account. This will be the root user for this account. AccountName: # (Required) Name of the account. Tags: # (Optional) Telophase label for this account. Tags translate to AWS tags with a `=` as the key value delimiter. For example, `telophase:env=prod` - Stacks: # (Optional) CDK or Terraform stacks to apply to all accounts in this Organization Unit. + Stacks: # (Optional) Terraform, Cloudformation and CDK stacks to apply to all accounts in this Organization Unit. State: # (Optional) Can be set to `deleted` to delete an account. Experimental. ``` @@ -70,7 +70,7 @@ This will create two Accounts: OrganizationUnits: - Name: # (Required) Name of the Organization Unit. Accounts: # (Optional) Child accounts of this Organization Unit. - Stacks: # (Optional) CDK or Terraform stacks to apply to all accounts in this Organization Unit. + Stacks: # (Optional) Terraform, Cloudformation, and CDK stacks to apply to all accounts in this Organization Unit. OrganizationUnits: # (Optional) Child Organization Units of this Organization Unit. ``` @@ -96,16 +96,17 @@ This will create two OUs: 2. `Dev Accounts` with child accounts `developer1` and `developer2` # Stacks -CDK and Terraform stacks can be assigned to `Account`s and `OrganizationUnits`s. Stacks assigned to `OrganizationUnits` will be applied to all child `Account`s. +Terraform, Cloudformation and CDK stacks can be assigned to `Account`s and `OrganizationUnits`s. Stacks assigned to `OrganizationUnits` will be applied to all child `Account`s. ```yaml Stacks: - Path: # (Required) Path to CDK or Terraform project. This must be a directory. - Type: # (Required) "CDK" or "Terraform". + Type: # (Required) "Terraform", "CDK", "Cloudformation . Name: # (Optional) Name of the Stack to filter on with --stacks. - AssumeRoleName: # (Optional) Force CDK and Terraform to us a specific role when applying a stack. The default role is the account's `AssumeRoleName` which is typically the `OrganizationAccountAccessRole`. + AssumeRoleName: # (Optional) Force the stack to use a specific role when applying a stack. The default role is the account's `AssumeRoleName` which is typically the `OrganizationAccountAccessRole`. Region: # (Optional) What region the stack's resources will be provisioned in. Region can be a comma separated list of regions or "all" to apply to all regions in an account. Workspace: # (Optional) Specify a Terraform workspace to use. + CloudformationParameters: # (Optional) A list of parameters to pass into the cloudformation stack. ``` ### Example diff --git a/mintlifydocs/features/Assign-IaC-Blueprints-To-Accounts.mdx b/mintlifydocs/features/Assign-IaC-Blueprints-To-Accounts.mdx index 43787c7..1e47309 100644 --- a/mintlifydocs/features/Assign-IaC-Blueprints-To-Accounts.mdx +++ b/mintlifydocs/features/Assign-IaC-Blueprints-To-Accounts.mdx @@ -3,7 +3,7 @@ title: 'Assign IaC Blueprints to Accounts' icon: 'hand-pointer' --- -Terraform and CDK (AWS Only) can be assigned at any level in the hierarchy. All child accounts inherit the stack. +Terraform, Cloudformation and CDK (AWS Only) can be assigned at any level in the hierarchy. All child accounts inherit the stack. ## Example ```yml @@ -24,6 +24,13 @@ Organization: Type: Terraform # You can set the region for where you want the resources to be created. Region: "us-west-2" + # Cloudformation Path has to go directly to a cloudformation file. + - Path: cloudformation/table.yml + Type: CloudformationParameters + # Set Cloudformation Parameters as Key=Value and can be passed in as a list. + CloudformationParameters: + - "HashKeyElementName=Painter" + - "TableName=test" - Email: safety+ingestion@example.app AccountName: Safety Ingestion Team - Name: Development @@ -38,14 +45,17 @@ Organization: ``` # Stacks -CDK and Terraform stacks can be assigned to `Account`s and `OrganizationUnits`s. Stacks assigned to `OrganizationUnits` will be applied to all child `Account`s. +Stacks can be assigned to `Account`s and `OrganizationUnits`s. Stacks assigned +to `OrganizationUnits` will be applied to all child `Account`s. A Stack is a +collection of resources that you can manage as one block in YAML. ```yaml Stacks: - Path: # (Required) Path to CDK or Terraform project. This must be a directory. - Type: # (Required) "CDK" or "Terraform". + Type: # (Required) "CDK", "Terraform", or "Cloudformation". Name: # (Optional) Name of the Stack to filter on with --stacks. - AssumeRoleName: # (Optional) Force CDK and Terraform to us a specific role when applying a stack. The default role is the account's `AssumeRoleName` which is typically the `OrganizationAccountAccessRole`. + AssumeRoleName: # (Optional) Force the stack to use a specific role when applying a stack. The default role is the account's `AssumeRoleName` which is typically the `OrganizationAccountAccessRole`. Region: # (Optional) What region the stack's resources will be provisioned in. Region can be a comma separated list of regions or "all" to apply to all regions in an account. Workspace: # (Optional) Specify a Terraform workspace to use. -``` \ No newline at end of file + CloudformationParameters: # (Optional) A list of parameters to pass into the cloudformation stack. +``` diff --git a/mintlifydocs/features/localstack.mdx b/mintlifydocs/features/localstack.mdx index 0f90b6d..5099b11 100644 --- a/mintlifydocs/features/localstack.mdx +++ b/mintlifydocs/features/localstack.mdx @@ -4,7 +4,7 @@ icon: 'vial' --- # Example: Localstack -This example will walk you through using localstack with Telophase to create AWS Accounts and OUs (see: [`organization.yml`](https://github.com/Santiago-Labs/telophasecli/blob/main/examples/localstack/organization.yml)), and deploy CDK and Terraform to them. +This example will walk you through using localstack with Telophase to create AWS Accounts and OUs (see: [`organization.yml`](https://github.com/Santiago-Labs/telophasecli/blob/main/examples/localstack/organization.yml)), and Stacks to them. # Getting Started with Localstack + Telophase 1. Install Dependencies diff --git a/mintlifydocs/features/scps.mdx b/mintlifydocs/features/scps.mdx index ffd2318..97cbd7f 100644 --- a/mintlifydocs/features/scps.mdx +++ b/mintlifydocs/features/scps.mdx @@ -3,7 +3,7 @@ title: 'Service Control Policies' icon: 'police-box' --- -Service Control Policies defined in Terraform or CDK can be applied to Organization Units and Accounts in `organization.yml`. +Service Control Policies defined in Terraform can be applied to Organization Units and Accounts in `organization.yml`. ## Example ```yml diff --git a/mintlifydocs/introduction.mdx b/mintlifydocs/introduction.mdx index 8aa65bd..15222f9 100644 --- a/mintlifydocs/introduction.mdx +++ b/mintlifydocs/introduction.mdx @@ -39,7 +39,7 @@ brew install telophasecli icon="hand-pointer" href="/features/Assign-IaC-Stacks-To-Accounts" > - Assign CDK or Terraform `Stacks` to Organization Units or Organizations to provision infrastructure in across your Organizations. + Assign Terraform, Cloudformation or CDK `Stacks` to Organization Units or Organizations to provision infrastructure in across your Organizations.