#atmos (2022-02)

2022-02-01

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)
08:54:07 PM

@Erik Osterman (Cloud Posse) has joined the channel

Lucky avatar
Lucky
08:54:31 PM

@Lucky has joined the channel

Leo Przybylski avatar
Leo Przybylski
08:54:31 PM

@Leo Przybylski has joined the channel

Ben Smith (Cloud Posse) avatar
Ben Smith (Cloud Posse)
08:54:31 PM

@Ben Smith (Cloud Posse) has joined the channel

Max Lobur (Cloud Posse) avatar
Max Lobur (Cloud Posse)
08:54:32 PM

@Max Lobur (Cloud Posse) has joined the channel

Steven Hopkins avatar
Steven Hopkins
08:54:32 PM

@Steven Hopkins has joined the channel

Hugo Samayoa avatar
Hugo Samayoa
08:54:32 PM

@Hugo Samayoa has joined the channel

Dan Meyers avatar
Dan Meyers
08:54:32 PM

@Dan Meyers has joined the channel

RB avatar
RB
08:54:32 PM

@RB has joined the channel

Yonatan Koren avatar
Yonatan Koren
08:54:32 PM

@Yonatan Koren has joined the channel

Andy Miguel avatar
Andy Miguel
08:54:32 PM

@Andy Miguel has joined the channel

Maxim Mironenko (Cloud Posse) avatar
Maxim Mironenko (Cloud Posse)
08:54:32 PM

@Maxim Mironenko (Cloud Posse) has joined the channel

johncblandii avatar
johncblandii
08:54:32 PM

@johncblandii has joined the channel

Jeremy G (Cloud Posse) avatar
Jeremy G (Cloud Posse)
08:54:33 PM

@Jeremy G (Cloud Posse) has joined the channel

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)
08:54:33 PM

@Andriy Knysh (Cloud Posse) has joined the channel

Matt Gowie avatar
Matt Gowie
08:54:33 PM

@Matt Gowie has joined the channel

Matt Gowie avatar
Matt Gowie

Good channel to have!

2
Matt Gowie avatar
Matt Gowie

And congrats on Slack Pro!

2
Imran Hussain avatar
Imran Hussain
08:57:14 PM

@Imran Hussain has joined the channel

omry avatar
omry
09:11:09 PM

@omry has joined the channel

Stewart Henderson avatar
Stewart Henderson
09:33:52 PM

@Stewart Henderson has joined the channel

Hugo Samayoa avatar
Hugo Samayoa

Slack Pro FTW!

1
Matthew avatar
Matthew
09:43:44 PM

@Matthew has joined the channel

Mike Crowe avatar
Mike Crowe
02:08:48 AM

@Mike Crowe has joined the channel

jose.amengual avatar
jose.amengual

what is atmos?

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)
1
Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)
Atmosphere Processing Plant | Xenopedia | Fandom

That’s the Atmosphere Processor?”“Yep, that’s it. Remarkable piece of machinery, completely automated. You know, we manufacture those, by the way.Ripley and Burke, regarding the APP on LV-426…

jose.amengual avatar
jose.amengual

lol

jose.amengual avatar
jose.amengual

can I run polumi with it ?

2
Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

Not yet

1

2022-02-02

Markus Muehlberger avatar
Markus Muehlberger

I’m looking for some guidance for the local usage of Atmos with cloudposse/stack-config/yaml (latest version) and terraform-provider-utils.

Since using the newer version, I’m running into issues where Atmos is not able to find its config easily and requiring me to symlink (or copy) the YAML file to atmos.yaml to ~/.atmos and additionally set ATMOS_BASE_PATH to the current directory otherwise the module won’t be able to find the stack config, because Terraform is executing within the component’s folder.

I’m not sure about configurability, but it would make sense to me to set that with Atmos before command execution. Unfortunately, my Go skills are more of the read-only variety, so I can’t really open a PR for that.

RB avatar

We were using a softlink for the atmos yaml file until the recent addition of the ATMOS_BASE_PATH env var which we now set to $(pwd) of the repo root

export ATMOS_BASE_PATH=$(pwd)

i havent noticed any issues since.

RB avatar

are you using the latest 1.3.26 of atmos?

Markus Muehlberger avatar
Markus Muehlberger

That’s kind of what I ended up doing. I’ll do more tests to see if both are necessary, but setting ATMOS_BASE_PATH is definitely required now.

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

the ENV var is required

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

otherwise there is no way to set the correct base path since it can be executed from ant=y folder (root of the repo, or any component folder). And the path needs to be absolute

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

the latest version of geodesic sets ATMOS_BASE_PATH automatically

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

or you can do export ATMOS_BASE_PATH=$(pwd) in your Dockefile

Markus Muehlberger avatar
Markus Muehlberger

Thanks Andriy! I haven’t had a look at geodesic for a while because it wasn’t trivial to port to M1 and had some compatibility issues. Have just seen Erik’s comment on that issue so will give it another go.

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

geodesic should work now on M1

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

or just add export ATMOS_BASE_PATH=$(pwd) to your Dockefile

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

Hey everyone, a quick question, in Atmos, I’m working on deploying a new organization with the account component utilizing atmos. Can anyone point in the atmos example repo, where the tenant variable is defined?

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

while we are still working on good atmos docs :slightly_smiling_face: , the example shows a complete solution using tenant https://github.com/cloudposse/atmos/tree/master/examples/complete

atmos/examples/complete at master · cloudposse/atmosattachment image

Universal Tool for DevOps and Cloud Automation (works with terraform, helm, helmfile, etc) - atmos/examples/complete at master · cloudposse/atmos

1
Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

it also shows all new features like stack and components folders, component multiple inheritance , etc.

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)
atmos/atmos.yaml at master · cloudposse/atmosattachment image

Universal Tool for DevOps and Cloud Automation (works with terraform, helm, helmfile, etc) - atmos/atmos.yaml at master · cloudposse/atmos

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

the stacks show folder structure with multiple stages (accounts) and multiple tenants https://github.com/cloudposse/atmos/tree/master/examples/complete/stacks

atmos/examples/complete/stacks at master · cloudposse/atmosattachment image

Universal Tool for DevOps and Cloud Automation (works with terraform, helm, helmfile, etc) - atmos/examples/complete/stacks at master · cloudposse/atmos

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

then use commands like

atmos terraform plan test/test-component-override-3 -s tenant1-ue2-dev
Mike Crowe avatar
Mike Crowe

@Andriy Knysh (Cloud Posse) – not sure a confluence link is helpful here?

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

deleted, I thought it was public

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

here is a list of atmos commands that work with the example

atmos version
atmos describe config
atmos describe component test/test-component-override -s tenant1-ue2-dev
atmos describe component infra/infra-server -s tenant1-ue2-dev
atmos terraform plan test/test-component-override -s tenant1-ue2-dev
atmos terraform deploy top-level-component1 -s tenant1-ue2-dev
atmos terraform deploy top-level-component1 -s tenant1-ue2-dev --deploy-run-init=true
atmos terraform destroy top-level-component1 -s tenant1-ue2-dev
atmos terraform validate test/test-component-override -s tenant1-ue2-dev
atmos terraform output test/test-component-override -s tenant1-ue2-dev
atmos terraform graph test/test-component-override -s tenant1-ue2-dev
atmos terraform show test/test-component-override -s tenant1-ue2-dev
atmos terraform workspace test/test-component-override --stack=tenant1-ue2-dev
atmos terraform varfile test/test-component-override -s tenant1-ue2-dev
atmos terraform varfile test/test-component-override -s tenant1-ue2-dev -f ./varfile.json
atmos terraform generate backend test/test-component-override -s tenant1-ue2-dev
atmos terraform clean test/test-component-override -s=tenant1-ue2-dev
atmos terraform workspace test/test-component-override --stack=tenant1-ue2-dev
atmos terraform shell test/test-component-override -s=tenant1-ue2-dev
atmos helmfile diff infra/infra-server -s tenant1-ue2-dev

2022-02-03

Zachary Loeber avatar
Zachary Loeber

There a good cookiecutter repo for starting a new atmos-driven project by chance?

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

It’s on our short term roadmap

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

We might take a slightly different approach though. I want the functionality built into atmos

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

Maybe we can do cookie cutter for the exposure

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

Cc @Andriy Knysh (Cloud Posse)

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

Since atmos is in go, cookie cutter in python, thinking to use one of the open source go projects

1
Zachary Loeber avatar
Zachary Loeber

Go has a cookiecutter equiv? I’ve always just used cookiecutter to scaffold out example or template things like tf modules or starter projects for other languages like Go

Zachary Loeber avatar
Zachary Loeber

I suppose gomplate with some clever flags/pipes could do much of the same

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

There is an abandoned project called boilr we may use for inspiration

Zachary Loeber avatar
Zachary Loeber

No code ever dies

Zachary Loeber avatar
Zachary Loeber

well, except the bad code hopefully I guess….

Zachary Loeber avatar
Zachary Loeber

So you were thinking maybe just an atmos init command instead?

Zachary Loeber avatar
Zachary Loeber

it is an opinionated tool after all so that would make sense

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

atmos generate <a lot of things>

1
1

2022-02-04

Mike Crowe avatar
Mike Crowe

Where’s the right (or best?) place to put workspace_key_prefix? I see examples with it in global.yaml, others with it in the components

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

we don’t put any config for a component in globals.yaml anymore (since it triggers all Spacelift stacks). All default config for a component goes into catalog/<component>.yaml

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

also, the latest atmos does not require setting workspace_key_prefix see https://github.com/cloudposse/atmos/pull/77

Detect ENV vars in YAML stack config and set them for command execution. Make `workspace_key_prefix` config DRY by aknysh · Pull Request #77 · cloudposse/atmosattachment image

what Detect ENV vars in YAML stack config and set them for command execution Make workspace_key_prefix config DRY Don&#39;t delete the generated terraform varfiles after each command Update tests …

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

you can override it if needed, but it’s set automatically now

Mike Crowe avatar
Mike Crowe

I should be able to do this after the state is merged into s3, right?

atmos terraform plan tfstate-backend -s root
Mike Crowe avatar
Mike Crowe

For some reason, plan is thinking it needs to recreate the same s3 bucket/dynamo db tables I’ve already done. Maybe I can’t do

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

so in cold-start, you first create it using local state

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

then add the backend config for s3 to the component

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

run the command, TF should ask you to move the state

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

and it will move it automatically

Mike Crowe avatar
Mike Crowe

@Andriy Knysh (Cloud Posse) – is there a way to tell what backend will be used when you use atmos terraform plan? After apply, I’m seeing the state in components/terraform/root-route53/terraform.tfstate.d/ue1-root/terraform.tfstate but I don’t know how to show that I’m not setup correctly

Mike Crowe avatar
Mike Crowe

(my assumption is that file should be blank like it is in tfstate-backend )

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

you have to add the backend file to each component

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

in backend.tf.json

{
  "terraform": {
    "backend": {
      "s3": {
        "acl": "bucket-owner-full-control",
        "bucket": "xxx-uw2-root-tfstate",
        "dynamodb_table": "xxx-uw2-root-tfstate-lock",
        "encrypt": true,
        "key": "terraform.tfstate",
        "region": "us-west-2",
        "role_arn": "arn:aws:iam::xxxx:role/xxx-gbl-root-terraform",
        "workspace_key_prefix": "xxxxx"
      }
    }
  }
}
Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

or even better:

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)
atmos/atmos.yaml at master · cloudposse/atmosattachment image

Universal Tool for DevOps and Cloud Automation (works with terraform, helm, helmfile, etc) - atmos/atmos.yaml at master · cloudposse/atmos

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

set it to true, and atmos will generate the backend automatically (from the component/stack config)

2022-02-08

Marton Klecska avatar
Marton Klecska

hi there!

I’m just starting to learn Atmos but I already love the concept.

Is there any visual material I could look into? My brain doesn’t cope well with fresh code, but i’ve been trough the Infrastructure as Code book so have solid grounds.

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

also look at this working example https://github.com/cloudposse/atmos/tree/master/examples/complete - it shows how to organize/separate components (terraform code/logic) and stacks (configuration)

atmos/examples/complete at master · cloudposse/atmosattachment image

Universal Tool for DevOps and Cloud Automation (works with terraform, helm, helmfile, etc) - atmos/examples/complete at master · cloudposse/atmos

Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

you can just clone the repo and run these commands from the root of the repo

go run github.com/cloudposse/atmos version
go run github.com/cloudposse/atmos describe config
go run github.com/cloudposse/atmos terraform plan test/test-component-override -s tenant1-ue2-dev
go run github.com/cloudposse/atmos terraform apply test/test-component-override -s tenant1-ue2-dev
go run github.com/cloudposse/atmos terraform deploy test/test-component-override -s tenant1-ue2-dev
go run github.com/cloudposse/atmos terraform validate test/test-component-override -s tenant1-ue2-dev
go run github.com/cloudposse/atmos terraform output test/test-component-override -s tenant1-ue2-dev
go run github.com/cloudposse/atmos terraform graph test/test-component-override -s tenant1-ue2-dev
go run github.com/cloudposse/atmos terraform show test/test-component-override -s tenant1-ue2-dev
go run github.com/cloudposse/atmos terraform workspace test/test-component-override -s tenant1-ue2-dev
go run github.com/cloudposse/atmos describe component test/test-component-override -s tenant1-ue2-dev
go run github.com/cloudposse/atmos describe component test/test-component-override-3 -s tenant1-ue2-dev
go run github.com/cloudposse/atmos describe component infra/infra-server -s tenant1-ue2-dev
go run github.com/cloudposse/atmos terraform generate backend test/test-component-override -s tenant1-ue2-dev
go run github.com/cloudposse/atmos terraform clean test/test-component-override -s tenant1-ue2-dev
go run github.com/cloudposse/atmos terraform shell test/test-component-override -s tenant1-ue2-dev
Marton Klecska avatar
Marton Klecska

thank you, I’ve been down the rabbit hole but now I can start looking at these.

Thank you again!

2022-02-12

Release notes from atmos avatar
Release notes from atmos
06:54:17 PM

v1.3.27 Enhancements Fix component path prefix if base component provided @aknysh (<a class=”issue-link js-issue-link” data-error-text=”Failed to load title” data-id=”1134415228” data-permission-text=”Title is private” data-url=”https://github.com/cloudposse/atmos/issues/120“…

Release v1.3.27 · cloudposse/atmos

Enhancements Fix component path prefix if base component provided @aknysh (#120) what Fix component path prefix if base component is provided Update Go version why If a component config is…

aknysh - Overview

aknysh has 210 repositories available. Follow their code on GitHub.

Fix component path prefix if base component provided by aknysh · Pull Request #120 · cloudposse/atmosattachment image

what Fix component path prefix if base component is provided Update Go version why If a component config is a derived component and a base component is specified (which points to the terraform …

2022-02-15

Andres avatar

Hello! Can this component be used (dns-primary) when I’m setting up a sub-domain (eg. subdomain.xyz.com) and the primary domain (eg. xyz.com) already exists and is being managed outside this stack?

RB avatar

i think you want dns-primary for xyz.com and dns-delegated for any subdomain

1
1

2022-02-16

Matt Gowie avatar
Matt Gowie

Mineiros folks came out with their own Terraform Framework (similar to Atmos): https://github.com/mineiros-io/terramate

Interesting to check out.

mineiros-io/terramate

Terramate is a tool for managing multiple terraform stacks

Matt Gowie avatar
Matt Gowie

Everyone loves the term “stack” it seems. People can’t get enough of it.

mineiros-io/terramate

Terramate is a tool for managing multiple terraform stacks

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

HCL Code Generation

Terramate supports the generation of arbitrary HCL code using
both <globals.md|globals> and <metadata.md|metadata>.
The generated code can then be composed/referenced by any Terraform code
inside a stack (or some other tool that uses HCL).

HCL code generation starts with the definition of a generate_hcl
block in a Terramate configuration file defining the code you
want to generate inside the block. The code may include:

• Blocks, sub blocks, etc • Attributes initialized by literals • Terramate Global references • Terramate Metadata references • Expressions using interpolation, functions, etc

Most of what you can do in Terraform can be done in a generate_hcl
block. References to Terramate globals and metadata are evaluated, but any
other reference is just transported to the generated code (partial evaluation).

Each generate_hcl block requires a single label.
This label is the filename of the generated code.

Inside the generate_hcl block a content block is required.
All code inside content is going to be used to generate the final code.

Now lets jump to some examples. Lets generate backend and provider configurations
for all stacks inside a project.

Given these globals defined on the root of the project:

globals {
  backend_data = "backend_data"
  provider_data = "provider_data"
  provider_version = "0.6.6"
  terraform_version = "1.1.3"
}

We can define the generation of a backend configuration for all
stacks by defining a generate_hcl block in the root
of the project:

generate_hcl "[backend.tf](http://backend.tf)" {
  content {
    backend "local" {
      param = global.backend_data
    }
  }
}

Which will generate code for all stacks using the filename [backend.tf](http://backend.tf):

backend "local" {
  param = "backend_data"
}

To generate provider/terraform configuration for all stacks we can add
in the root configuration:

generate_hcl "[provider.tf](http://provider.tf)" {

  content {
    provider "name" {
      param = global.provider_data
    }

    terraform {
      required_providers {
        name = {
          source  = "integrations/name"
          version = global.provider_version
        }
      }
    }

    terraform {
      required_version = global.terraform_version
    }

  }

}

Which will generate code for all stacks using the filename [provider.tf](http://provider.tf):

provider "name" {
  param = "provider_data"
}

terraform {
  required_providers {
    name = {
      source  = "integrations/name"
      version = "0.6.6"
    }
  }
}

terraform {
  required_version = "1.1.3"
}

Hierarchical Code Generation

HCL code generation can be defined anywhere inside a project, from a specific
stack, which defines code generation only for the specific stack, to parent dirs
or even the project root, which then has the potential to affect code generation
to multiple or all stacks (as seen in the previous example).

There is no overriding or merging behavior for generate_hcl blocks.
Blocks defined at different levels with the same label aren’t allowed, resulting
in failure for the overall code generation process.

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

seems like they’ve taken a terragrunt approach

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

adopted HCL

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)
terramate run --changed terraform apply
Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

interesting

Matt Gowie avatar
Matt Gowie

Yeah definitely terragruntesque. I’m not actually sure how they differ honestly.

Matt Gowie avatar
Matt Gowie

I may write up a post on the differences between the various Terra frameworks. I feel like folks would be interested in that.

this2
Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

That would be medium worthy!

Zachary Loeber avatar
Zachary Loeber
04:56:41 PM

I’d buy that for a dollar

1

2022-02-18

2022-02-21

Release notes from atmos avatar
Release notes from atmos
03:34:20 PM

v1.3.28 Enhancements Fix Terraform workspace for remote state for derived components in subfolders @aknysh (<a class=”issue-link js-issue-link” data-error-text=”Failed to load title” data-id=”1145193302” data-permission-text=”Title is private”…

Release v1.3.28 · cloudposse/atmosattachment image

Enhancements Fix Terraform workspace for remote state for derived components in subfolders @aknysh (#121) what Fix Terraform workspace for remote state for derived components in subfolders Ge…

aknysh - Overview

aknysh has 210 repositories available. Follow their code on GitHub.

Release notes from atmos avatar
Release notes from atmos
03:34:20 PM

1.3.28: Fix Terraform workspace for remote state for derived components in su… …bfolders (#121)

Updates

Updates

Updates

Updates

Updates

Updates

Updates

Updates

Updates

Updates

Updates

Updates

Updates…

Release 1.3.28: Fix Terraform workspace for remote state for derived components in su… · cloudposse/atmosattachment image

…bfolders (#121) Updates Updates Updates Updates Updates Updates Updates Updates Updates Updates Updates Updates Updates Updates Updates Updates Updates Updates …

Fix Terraform workspace for remote state for derived components in subfolders by aknysh · Pull Request #121 · cloudposse/atmosattachment image

what Fix Terraform workspace for remote state for derived components in subfolders General code improvements why Terraform workspace for remote state for derived components in subfolders was cal…

Release notes from atmos avatar
Release notes from atmos
03:54:19 PM

1.3.28 Fix Terraform workspace for remote state for derived components in su…

…bfolders (#121)

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Updates

  • Auto Format

  • Updates

  • Auto Format

Co-authored-by:…

Matt Gowie avatar
Matt Gowie

@Andriy Knysh (Cloud Posse) Friendly suggestion to check out using git rebase --interactive to cut down on the commit log. It can be a great way to clean up a long running set of changes like this with a succinct message.

1
Andriy Knysh (Cloud Posse) avatar
Andriy Knysh (Cloud Posse)

something went wrong with the GH action for the release. We use “Squash and Merge” so usually we don’t see all those commits

Matt Gowie avatar
Matt Gowie

Ah yeah that makes sense as Squash from GH UI should’ve solved this too.

Release notes from atmos avatar
Release notes from atmos
08:54:21 PM
Release v1.3.28 · cloudposse/atmosattachment image

Enhancements Fix Terraform workspace for remote state for derived components in subfolders @aknysh (#121) what Fix Terraform workspace for remote state for derived components in subfolders Ge…

Release 1.3.28 · cloudposse/atmosattachment image

Universal Tool for DevOps and Cloud Automation (works with terraform, helm, helmfile, etc) - Release 1.3.28 · cloudposse/atmos

    keyboard_arrow_up