Checks for updates of external terraform modules referenced in given Terraform source. Outputs Markdown tables by default, as well as JSONL (-o jsonl
, one JSON object per line), JSON (-o json
), and JUnit XML (-o junit
).
Supported module sources:
- Git with SemVer tags
git::...
github.com/...
[email protected]:...
- Terraform Registry
- public
<NAMESPACE>/<NAME>/<PROVIDER>
- private
<HOSTNAME>/<NAMESPACE>/<NAME>/<PROVIDER>
- public
$ ${APP} check examples
${EXAMPLE_PRETTY}
$ cat examples/main.tf
${EXAMPLES_MAIN_TF}
# list modules with their current versions and version constraints (if specified)
$ ${APP} list examples
${EXAMPLE_LIST_PRETTY}
with -o json
:
${EXAMPLE_LIST}
# check: check for module updates from (usually) remote sources
$ ${APP} check examples
${EXAMPLE_UPDATES_PRETTY}
with -o json
:
${EXAMPLE_UPDATES}
# check -all: check for updates, include up-to-date-modules in output
$ ${APP} check -all examples
${EXAMPLE_UPDATES_ALL_PRETTY}
$ export GITHUB_TOKEN="<your Github PAT>"
$ ${APP} check examples
# check -module: check for updates of specific modules
$ ${APP} check -all -module=consul_github_https -module=consul_github_ssh examples
${EXAMPLE_UPDATES_SINGLE_ALL_PRETTY}
# check -module: check for updates of specific modules
$ ${APP} check -module=consul_github_https -module=consul_github_ssh examples
${EXAMPLE_UPDATES_SINGLE_PRETTY}
with -o json
:
${EXAMPLE_UPDATES_SINGLE}
Using go get:
go get -u github.com/keilerkonzept/${APP}
Or download the binary for your platform from the releases page.
$USAGE
${USAGE_LIST}
${USAGE_CHECK}