#atmos - August 2023

12 messages

👽️

August 2023
John
Johnover 3 years ago
Does anyone has atmos running in gitlab cicd? I m trying to set-up gitlab CiCd using atmos in order to apply my stacks and wondering if someone has it working with some basic example. Thank you
Matt Gowie
Matt Gowieover 3 years ago
Is there JSON Schema files somehow for Atmos stacks/component.yaml/atmos.yaml?
rss
rssabout 3 years ago(edited)
v1.43.0
what
Add the --skip-lock-file flag to the atmos terraform clean command
why
For users who want to keep a stable lock file but otherwise want to clean the component directory
rss
rssabout 3 years ago
v1.43.0
what
Add the --skip-lock-file flag to the atmos terraform clean command
why
For users who want to keep a stable lock file but otherwise want to clean the component directory
johncblandii
johncblandiiabout 3 years ago
@Andriy Knysh (Cloud Posse) is there a way to use a glob and control the order?

  - path: mixins/services/**/*-[default][dev]*
    context:
      stage: dev
      environment: ue1

basically, we need default imported before dev.

we're trying to accomplish importing separate files to enable stage-specific imports to override defaults.

ex:
• dev imports default then dev
• staging importing default then staging
A straight import with -dev in the filename will error if there are no matches for that particular import.
johncblandii
johncblandiiabout 3 years ago
atmos validate stacks has a problem where context is included in part of the import.

example:

import:
  - path: "mixins/services/**/*{{ .stage }}.yaml"
    context:
      stage: "{{ .stage }}"
      environment: "{{ .environment }}"

no matches found for the import 'mixins/services/*/{{ .stage }}.yaml' in the file 'mixins/services/all.yaml'

Error: failed to find a match for the import '/localhost/work/infrastructure/stacks/mixins/services/*/{{ .stage }}.yaml' ('/localhost/work/infrastructure/stacks/mixins/services' + '*/{{ .stage }}.yaml')
sytten
syttenabout 3 years ago
Might be a dumb question, but can you reference an output of a top level component to the variable of another component
sytten
syttenabout 3 years ago
Basically can I do
components:
  terraform:
    waf-whitelist:
      metadata:
        component: aws-waf-ipset
      vars:
        enabled: true
        addresses: ["17.0.0.0/8"]

    waf-acl:
      metadata:
        component: aws-waf-acl
      vars:
        some_var: { reference waf-whitelist here }
Christopher Pieper
Christopher Pieperabout 3 years ago
So I see atmos is no longer doing a full stack / component output when running terraform commands.. How would I go about configuring atmos so that it does
Zain Zahran
Zain Zahranabout 3 years ago
Hey all. I had 2 questions
1. What is the best way to handle global or shared variables across different Atmos components? How do you combat warnings from Terraform about excess variables when some components only require a subset? In my stack I’m doing something like the following:
vars:
  environment: env_name
  foo: example1
  bar: example2
components:
  terraform:
    component1:
      vars: {}
    component2:
      vars: {}

2. When using the terraform s3 backend property, how come things are stored as component/stack and not stack/component in the aws bucket? Is there ways to change that or is it an important design choice?
rss
rssabout 3 years ago(edited)
v1.44.0
what
Update Spacelift deps
Update atmos validate stacks command
Update docs
Update tests
why

Update Spacelift deps - use the new settings.depends_on schema (introduced for the atmos describe dependents command) to specify stack dependencies instead of the deprecated settings.spacelift.depends_on schema (note that the old settings.spacelift.depends_on schema is still supported for backwards compatibility)...
rss
rssabout 3 years ago
v1.44.0
what
Update Spacelift deps
Update atmos validate stacks command
Update docs
Update tests
why

Update Spacelift deps - use the new settings.depends_on schema (introduced for the atmos describe dependents command) to specify stack dependencies instead of the deprecated settings.spacelift.depends_on schema (note that the old settings.spacelift.depends_on schema is still supported for backwards compatibility)...