We have had a difficult time with how beautysh parses some shellscripts. I went
in pursuit of an alternative and I believe shfmt to be a good alternative.
Co-authored-by: Shane Frasier <jeremy.frasier@trio.dhs.gov>
As of [Go 1.16](https://tip.golang.org/doc/go1.16#go-command) the `GO111MODULE` environment variable defaults to `on` and `go get` has been deprecated for module installation.
Co-authored-by: Nick M. <50747025+mcdonnnj@users.noreply.github.com>
Some variables defined in the go installation are used in the cache
task, so the go installation must happen first.
Co-authored-by: Nick M. <50747025+mcdonnnj@users.noreply.github.com>
Note that this change is dependent on the merging of
cisagov/setup-env-github-action#31.
Co-authored-by: Nick M. <50747025+mcdonnnj@users.noreply.github.com>
The Terraform installation does not destroy the existing system
Terraform installation, and neither should the Packer installation.
Co-authored-by: Nick M. <50747025+mcdonnnj@users.noreply.github.com>
There is no reason to create /usr/bin/terraform. This is a vestige of
an earlier age.
Co-authored-by: Nick M. <50747025+mcdonnnj@users.noreply.github.com>
We should be doing this because the Packer and Terraform pre-commit
hooks leverage the corresponding executables; therefore, it makes
sense to go ahead and install the particular versions of those
executables that we support. Also add support for optionally
debugging via tmate.
See also cisagov/skeleton-generic#74.
This converts the existing `.mdl_config.json` file to an equivalent
`.mdl_config.yaml` file. The reference in the markdownlint pre-commit hook
configuration is updated to match.
Co-authored-by: Shane Frasier <jeremy.frasier@trio.dhs.gov>
With the release of pyenv v2.0.0 there is a breaking change around startup
logic that necessitates an update for our pyenv setup instructions. Also
add a statement about how to get configuration instructions from pyenv
itself.
Hooks updated with the `pre-commit autoupdate` command.
Note:
The `ansible-lint` hook is intentionally being held back on 4.3.7 because of
ongoing issues with the 5.x version and how we use Ansible (standalone Galaxy
roles).
Enabled 'check-case-conflict' because of our mixed Linux and macOS development.
Although APFS supports case-sensitive containers, it is not the default as far
as I am aware. Linux filesystems are typically case-sensitive however.
With the merge of https://github.com/cisagov/development-guide/pull/42 we now
have a TOML file in a repository, so it does not hurt to add this hook in case
more are added in the future.