#geodesic (2020-02)
Discussions related to https://github.com/cloudposse/geodesic
Archive: https://archive.sweetops.com/geodesic/
2020-02-03

There are no events this week

: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
#office-hours (our channel)
2020-02-10

There are no events this week

: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
#office-hours (our channel)
2020-02-17

There are no events this week

: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
#office-hours (our channel)
2020-02-21

@scorebot help keep tabs!

@scorebot has joined the channel

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

Wondering what I can do? try @scorebot help
2020-02-24

: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
#office-hours (our channel)

There are no events this week
2020-02-28

* Found SSH agent config
⧉ 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
√ : (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

Hrmmm that should all work

When did it break?

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

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

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.

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…….

boooo

@Jeremy G (Cloud Posse)

I was struggling to get tf11 to build

ironically as i try to migrate off it

It seems like the rc flies for direnv are not loading

Those are the files in etc direnv

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

I can maybe help debug in 30m

Will you be around?

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

This looks right

Ohh ya but I think it should still work

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

lol

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


switched back my docker version temporarily

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

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)

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

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

never used zoom; one mo

fwiw, turns out the problem is related to this issue: https://github.com/direnv/direnv/issues/595
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…

it will be fixed in > 2.21.2


Thanks again

@chrism cloudposse/geodesic:0.126.3
released with the fix

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

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.

@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}

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

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

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.

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

Agreed. Do you have an example using workspaces?

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

exactly

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

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


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


thanks @Erik Osterman (Cloud Posse)!

@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.

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

We add this to the Makefile
target

(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)

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

so in the geodesic shell we have a MAKEFILE_INCLUDES

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

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.


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.


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