#geodesic (2020-02)

geodesic https://github.com/cloudposse/geodesic

Discussions related to https://github.com/cloudposse/geodesic Archive: https://archive.sweetops.com/geodesic/

2020-02-29

2020-02-28

chrism avatar
chrism
* Found SSH agent config
 ⧉  [prod.domain.uk](http://prod\.domain\.uk) 
 √ : (prod-admin) ~ ⨠ cd frankfurt.staging/
direnv: loading ~/frankfurt.staging/.envrc
direnv: using terraform 0.11
environment:655: use_terraform: command not found
 ⧉  [prod.domain.uk](http://prod\.domain\.uk)
 √ : (prod-admin) frankfurt.staging ⨠ cd ekstest/
direnv: loading ~/frankfurt.staging/ekstest/.envrc
direnv: using envrc
environment:655: use_envrc: command not found
direnv: using terraform 0.11
environment:655: use_terraform: command not found
direnv: using atlantis
environment:655: use_atlantis: command not found
direnv: using tfenv
environment:655: use_tfenv: command not found

lol did something change

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

Hrmmm that should all work

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

When did it break?

chrism avatar
chrism

I changed from FROM cloudposse/geodesic:0.123.1 to geodesic:0.126.2

chrism avatar
chrism

I think aws-vault swapping the order of entering token than password may break my muscle memory

Jeremy (Cloud Posse) avatar
Jeremy (Cloud Posse)

Worse than that, I think the token might expire by the time I get to entering the password. Anyway, @Erik Osterman (Cloud Posse), nothing we can do about it except file an issue with aws-vault. @chrism I encourage you to do so, or upvote if there already is one.

Jeremy (Cloud Posse) avatar
Jeremy (Cloud Posse)
MFA vs Password Prompt order · Issue #515 · 99designs/aws-vault

Is it just me or… Asking for the MFA before the keyring password is confusing. (changed behavior) Because of old habits, I'm now entering the password in clear in the MFA prompt too often…….

chrism avatar
chrism

boooo

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

@Jeremy (Cloud Posse)

chrism avatar
chrism

I was struggling to get tf11 to build

chrism avatar
chrism

ironically as i try to migrate off it

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

It seems like the rc flies for direnv are not loading

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

Those are the files in etc direnv

chrism avatar
chrism

I usually dip into the ref architecture to see whats changed its a mixed bag.

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

I can maybe help debug in 30m

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

Will you be around?

chrism avatar
chrism

I think im out of sync with the state of the world as we still have init-terraform everywhere and Makefiles you seem to be on tasks now

chrism avatar
chrism

This looks right

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

Ohh ya but I think it should still work

chrism avatar
chrism

but

Terraform v0.11.14
+ provider.aws v2.51.0
+ provider.local v1.4.0
+ provider.null v2.1.2
+ provider.template v2.1.2
chrism avatar
chrism

lol

chrism avatar
chrism

ive basically buggered the state file because the versions switched, which is fine i get that

chrism avatar
chrism

been a while since i was told off for swearing

1
chrism avatar
chrism

switched back my docker version temporarily

chrism avatar
chrism

so i’ve now got the 123.1 all the env var stuff seems to load; purged the state file from s3

chrism avatar
chrism

the envrc from <https://github.com/cloudposse/reference-architectures/tree/master/templates/conf/iam> seems ok in 123 (as in no errors related to that specifically)

chrism avatar
chrism

yeah all works on 123; mildly perplexed as the original issue that I moved from 123 up was that the folder kept auto selecting TF12 and it was driving me mental

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

I’m free now if you want to do a quick zoom @chrism

chrism avatar
chrism

never used zoom; one mo

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

fwiw, turns out the problem is related to this issue: https://github.com/direnv/direnv/issues/595

stdlib uses XDG_CONFIG_DIR instead of XDG_CONFIG_HOME · Issue #595 · direnv/direnv

Describe the bug The stdlib of direnv uses the environment variable XDG_CONFIG_DIR instead of XDG_CONFIG_HOME to determine the location of the user defined configuration directory. To Reproduce % d…

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

it will be fixed in > 2.21.2

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

hotfix is to set XDG_CONFIG_DIR=/etc

:--1:1
chrism avatar
chrism

Thanks again

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

@chrism cloudposse/geodesic:0.126.3 released with the fix

:--1:1
Joe Niland avatar
Joe Niland

Thanks @Erik Osterman (Cloud Posse) I hit this too

Jonathan Bus avatar
Jonathan Bus

I’ve run into the

The target directory . is not empty, so it cannot be initialized with the
-from-module=... option.

issue trying to use terraform 12 on a geodesic container. Anyone know of a work around? For the meantime I’m going to create a temp dir and init into there and move the files the the dir I want to use.

Joe Niland avatar
Joe Niland

@Jonathan Bus in terraform.envrc add export TF_MODULE_CACHE=.module

And I had to update Makefile.tasks like this:

$(shell mkdir -p ${TF_MODULE_CACHE})

\## Ignore warnings if this doesn't exist
-include ${TF_MODULE_CACHE}/Makefile


\## Fetch the remote terraform module
deps:
	terraform init


\## Reset this project
reset:
	rm -rf Makefile *.tf .terraform ${TF_MODULE_CACHE}
:--1:2
Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

Ya, it’s unfortunate, but this is the only fix today with terraform > 0.12

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

We’re looking for more elegant alternatives, but haven’t found one yet.

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

We have an alternative approach we’re using which does not involve terraform init -from-module and embraces terraform workspaces and varfiles for each environment instead.

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

I think the most elegant fix would be to get a flag upstreamed in the terraform cli that permits non-empty working directories

Joe Niland avatar
Joe Niland

Agreed. Do you have an example using workspaces?

Joe Niland avatar
Joe Niland

I am keen to try that because its unfortunate not to be able to use terraform output, graph, etc

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

exactly

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

basically, terraform seems to not embrace this approach as a first class citizen

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

@Joe Niland book some time with me next week and I’m happy to show you; nothing open source yet.

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)
Erik Osterman attachment image

Welcome to my scheduling page. Please follow the instructions to add an event to my calendar.

Joe Niland avatar
Joe Niland

@Erik Osterman (Cloud Posse) thanks so much. Will do

:--1:1
Jonathan Bus avatar
Jonathan Bus

thanks @Erik Osterman (Cloud Posse)!

Jonathan Bus avatar
Jonathan Bus

@Joe Niland Did you have to make any adjustments to make Atlantis work? The changes you mentioned worked great locally on the geodesic container but Atlantis can’t seem to find the .module directory

Error: Target directory does not exist

Cannot initialize non-existent directory .module.
Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

oh, somewhere you just need an mkdir -p .module

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

We add this to the Makefile target

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

(this is the other annoying thing: terraform won’t initialize a non-empty directory, and it won’t initialize a non-existing directory; so you need to make the directory and then tell it to initialize it)

Jonathan Bus avatar
Jonathan Bus

that is in the Makefile.tasks in the conf dir. Does it need to be in the Makefile in the module directory too?

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

so in the geodesic shell we have a MAKEFILE_INCLUDES

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

you can add something like MAKEFILE_INCLUDES += /conf/Makefile.tasks if you want it to be automatically included

Jonathan Bus avatar
Jonathan Bus

I see that but still a little confused. Ok if I jump on office hours to ask about it? Have a meeting so won’t be on until half way through.

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

sure thing!

:--1:1
Jonathan Bus avatar
Jonathan Bus

Found the issue. When I was running it locally I would run “make reset” and then “make deps” so the initial part with the shell command that creates the .module directory and include command would run before each one. Atlantis was running “make reset deps” so the initial part was only running before reset and reset was removing the .module directory. I moved the command to make the .module directory to deps and it works fine now.

Jonathan Bus avatar
Jonathan Bus

Thanks @Joe Niland and @Erik Osterman (Cloud Posse)!

:--1:1
caretak3r avatar
caretak3r

@Erik Osterman (Cloud Posse) thanks for pointing me here. just ran into this issue, too. thanks for the info!

2020-02-24

Cloud Posse avatar
Cloud Posse
05:00:03 PM

:zoom: Join us for “Office Hours” every Wednesday 11:30AM (PST, GMT-7) via Zoom.

This is an opportunity to ask us questions about geodesic, get live demos and learn from others using it. Next one is Mar 04, 2020 11:30AM.
Register for Webinar
slack #office-hours (our channel)

SweetOps #geodesic avatar
SweetOps #geodesic
05:00:09 PM

There are no events this week

2020-02-21

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

@scorebot help keep tabs!

scorebot avatar
scorebot
05:45:03 PM

@scorebot has joined the channel

scorebot avatar
scorebot
05:45:04 PM

Thanks for adding me emojis used in this channel are now worth points.

scorebot avatar
scorebot
05:45:06 PM

Wondering what I can do? try @scorebot help

2020-02-17

SweetOps #geodesic avatar
SweetOps #geodesic
05:00:01 PM

There are no events this week

Cloud Posse avatar
Cloud Posse
05:00:57 PM

:zoom: Join us for “Office Hours” every Wednesday 11:30AM (PST, GMT-7) via Zoom.

This is an opportunity to ask us questions about geodesic, get live demos and learn from others using it. Next one is Feb 26, 2020 11:30AM.
Register for Webinar
slack #office-hours (our channel)

2020-02-10

SweetOps #geodesic avatar
SweetOps #geodesic
05:00:06 PM

There are no events this week

Cloud Posse avatar
Cloud Posse
05:00:26 PM

:zoom: Join us for “Office Hours” every Wednesday 11:30AM (PST, GMT-7) via Zoom.

This is an opportunity to ask us questions about geodesic, get live demos and learn from others using it. Next one is Feb 19, 2020 11:30AM.
Register for Webinar
slack #office-hours (our channel)

2020-02-03

SweetOps #geodesic avatar
SweetOps #geodesic
05:00:08 PM

There are no events this week

Cloud Posse avatar
Cloud Posse
05:00:26 PM

:zoom: Join us for “Office Hours” every Wednesday 11:30AM (PST, GMT-7) via Zoom.

This is an opportunity to ask us questions about geodesic, get live demos and learn from others using it. Next one is Feb 12, 2020 11:30AM.
Register for Webinar
slack #office-hours (our channel)

    keyboard_arrow_up