Luther Systems infrastructure management tool.
brew install luthersystems/repo/mars
If running ansible locally, you will also need ssh agent access through mars.
This is currently accomplished using the pinata-ssh-forward
tool from
uber-common/docker-ssh-forward.
Follow the installation instructions there to install the tool and make sure
pinata-ssh-forward
is in your path.
In addition, make sure ssh-agent has your ssh key loaded:
ssh-add -l
If ssh-add doesn't print anything, it doesn't have you key. Run ssh-add
without arguments or point it to the appropriate key file in special cases.
If you need to run a raw terraform command using the terraform
binary
installed in the container you may run mars terraform
but without care python
will intercept options/flags intended for terraform. Often you will have to
use the special argument --
to tell python not to try and parse the flags
meant for terraform.
mars dev terraform -- providers --help
Place a .mars-version file at the root of the mars managed infrastructure repository to pin the version of mars for the repository. For example, to set the mars version to v0.81.1, run the following from the target repo.
echo v0.82.1 > $(git rev-parse --show-toplevel)/.mars-version
Ensure all terraform projects have a .terraform-version
file specifying which
terraform version to use. See tfenv for
more details.
echo 1.7.3 > .terraform-version
To build the container, run:
make