Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue sweeping - Terraform 0.12.2, Windows, Docker & PLY #65

Merged
merged 4 commits into from
Jun 25, 2019
Merged

Issue sweeping - Terraform 0.12.2, Windows, Docker & PLY #65

merged 4 commits into from
Jun 25, 2019

Conversation

syntaqx
Copy link
Contributor

@syntaqx syntaqx commented Jun 24, 2019

Before I dump all this on you:

  1. Sorry for not opening an issue and making sure this was cool to drop
  2. REALLY sorry about the size of the changeset. It kind of snowballed
    into a bunch of things before I got everything working again.

Changeset

  • Moved to using a /data for consistency with the majority of containers
    This is also exposed as a VOLUME ["/data"] for overwriting with
    custom images. Not all use cases will need the overlayfs
  • In addition to blast-radius:latest a second tag is pushed to the registry:
    docker push blast-radius:$TF_VERSION - Version locking is extremely
    essential with TF Cloud given remove state files can't always be rewound
  • Fixed the majority (maybe all?) Markdownlint and Shellcheck lints
  • Functional Windows 10 (at least with Git Bash)
  • Rewrite of the CircleCI configuration in attempts to improve it and
    return it to a functional state
  • Introduce .dockerignore for minor performance
  • Force docker to install the latest version of PLY before pip install
  • Bubble Terraform errors to the Foreground for debuggability
  • Remove need for downloading Terraform through multi-stage Docker
  • Docker: Disregard number of arguments (previously 1-3 were organized
    seemingly at random) in favor of asserting the existance of a prefix.
  • Allow configuration of both get and init through overridable usage
    of TF_CLI_ARGS_* -- This is also used for Terraform 0.12 credentials
    and workspaces (an example is in the docker-compose.yml)
  • Move package dependencies to requirements.txt, allowing Docker to
    benefit from layer caching when no packages are changed.
  • Minor tweaks to setup.py as well as removal of legacy keys. I didn't
    replace them all, but I got sleepy and wanted to open this up.

Should affect positive change for #24 #28 #33 #36 #43 #54 -- Not
necessarily 100% fixes but at least normalizes the Docker runtime.

Anyways... 🎉

@syntaqx
Copy link
Contributor Author

syntaqx commented Jun 24, 2019

If possible -- please enable the CircleCI setting for testing PRs so I can get a read on if the changes there worked. master is the only branch that will perform a release but the other step should be fully functional. You'll want to turn this button from off (the state my picture is in) to on:

image

If not, that's fine too. Just trying to help.

@28mm
Copy link
Owner

28mm commented Jun 24, 2019

thanks @syntaqx will take at this changes, tonight!

@28mm 28mm merged commit a7b86e6 into 28mm:master Jun 25, 2019
@28mm
Copy link
Owner

28mm commented Jun 25, 2019

I ran into an issue where environment variables used in the definition of the executor environment aren't expanded.... So I went through and replaced expanded IMAGE_NAME where it appeared. I image there's a better way, but it works for now.

executors:
  buildpack:
    environment:
IMAGE_NAME: $CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME

I've enabled "builds for pull requests from forks" and taken the *docker-login alias out of the build job, so I'd expect that part to run for PRs, now.

Big thanks for the contribution. Hoping to spend some more time with this soon 👍

@syntaqx
Copy link
Contributor Author

syntaqx commented Jun 30, 2019

I'm not surprised that you found an issue, I was sort of just winging all of the changes on almost no sleep - Glad that you got things merged in and I'll keep an eye on anything else I might be able to help on.

Let me know if I broke anything else 😆

@syntaqx syntaqx deleted the terraform-0.12.2 branch June 30, 2019 15:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants