Turbot Guardrails Command Line Interface (CLI) Releases
The Turbot Guardrails Command Line Interface (CLI) is a unified tool to work with Guardrails workspaces, develop mods then publish them to the registry.
Downloads
The Turbot Guardrails CLI is distributed as a single binary. Install by unzipping and moving it to a directory included in your system's PATH.
v1.29.0 [2023-07-27]
What's new?
- Rebrand to Turbot Guardrails CLI. We recommend using the new guardrails registries
guardrails.turbot.com
,guardrails.turbot-stg.com
orguardrails.turbot-dev.com
to publish a guardrails mod. To maintain compatibility, none of the existing commands have changed, your existing configuration and commands will continue to work as before.
v1.28.6 [2022-11-29]
Bug fixes
- Add role as a valid level to generate temporary credentials for roles.
v1.28.5 [2022-06-30]
Bug fixes
- CLI failed to download latest mod versions automatically for mods with version < 5.0.0.
turbot completion
command was displayed twice on runningturbot help
.
v1.28.4 [2022-06-07]
Bug fixes
- CLI failed to install dependencies for a mod with more than 26 dependencies.
v1.28.3 [2021-04-15]
Bug fixes
- Invalid module reference fixed - this was causing
turbot template build
to fail.
v1.28.2 [2021-04-13]
Bug fixes
template build
was loading the lock-file from the base branch to determine the current template version. When using a work-in-progress (wip) branch, this could lead to identifying an incorrect current version, leading to rebasing errors. Fix by loading the lock file from the wip branch.
v1.28.1 [2021-03-04]
Bug fixes
- Fixed CLI packaging error required for proper v1.28.0 installation.
v1.28.0 [2021-03-03]
Bug fixes
turbot template build
now cleans up branches after a rebase failure.
v1.27.0 [2020-12-07]
What's new?
turbot template build --rebase
command now cleans up the work in progress branch if the template render fails.
Bug fixes
turbot template build --rebase
command was failing to re-apply manual changes.turbot template build --fleet-mode
would stop building all branches if a single one failed.
v1.26.0 [2020-11-12]
What's new?
turbot compose
(used by all CLI commands that compose mods) now omits thereleaseNotes
field fromturbot.head.json
. It is still included inturbot.dist.json
.turbot template
has a new--unchanged-issue <issue_id>
argument. When a template build operation commits changes to git, if no files have actually changed then the commit message will use this issue instead of the normal--issue <issue_id>
field. The commit message will also specify "no changes".
v1.25.0 [2020-11-02]
What's new?
turbot publish
has a new--timeout <secs>
argument to customize the publish timeout. The default has been increased to 2 minutes.- Use
turbot template build --issue 1234 --close-issue
will set the commit message to close the issue.
Bug fixes
turbot test
should not fail with the the errorTypeError: tmod.parse is not a function
.
v1.24.3 [2020-10-23]
Bug fixes
turbot template build --patch --push-instance-root
command failed to push changes to the wip branch.
v1.24.2 [2020-10-07]
Bug fixes
turbot pack
andturbot publish
were failing to run pre-pack script when--dir
arg is used.
v1.24.1 [2020-10-06]
Bug fixes
turbot inspect
should give a clear error message for invalid templates.
v1.24.0 [2020-10-05]
Bug fixes
turbot inspect --format changelog
should properly escape CSV fields with commas.
v1.23.0 [2020-09-18]
What's new?
turbot install
- checks if a compatible version of each dependency is already installed. If so, it is does not install from the registry unless there is a newer version available.turbot template build --rebase
rebuilds templates while using rebase to better merge and preserve custom changes to the rendered files since the last build.
v1.22.0 [2020-09=07]
What's new?
- Show a progress bar during long running operations.
v1.21.0 [2020-08-20]
What's new?
- Improved error messages for failed queries like authentication, network connectivity, etc.
- Update credentials precedence to prioritise specific credentials (key, secretKey and workspace) over profile.
Bug fixes
turbot configure
fails when no command line credentials arguments are given but they set in environmentturbot workspace list
should ignoreTURBOT_PROFILE
env var and only filter profiles if one is given in command line.turbot download
should fall back to use the production registry if the user is not logged in.
v1.20.1 [2020-07-31]
Bug fixes
- Exceptions from the pre-pack script in
turbot pack
were not caught and reported correctly.
v1.20.0 [2020-07-30]
What's new?
- Improved error messages for
turbot pack
,turbot up
andturbot publish
for faster troubleshooting.
Bug fixes
turbot graphql
queries forcontrol
,policy-value
, etc were not properly handling the--resource-id
and--resource-aka
arguments.
v1.19.3 [2020-07-30]
Bug fixes
turbot configure
was failing for some Windows users when used in interactive mode.
v1.19.2 [2020-07-20]
Bug fixes
turbot configure
was always failing validation when using interactive mode to enter credentials.
v1.19.1 [2020-07-20]
Bug fixes
turbot install [mod]
was not working. You can now install specific mods as expected.
v1.19.0 [2020-07-16]
What's new?
- Use
turbot install [mod[@version]]
to install a specific mod as a local dependency. - Credentials passed to
turbot workspace configure
are now validated before saving, so you can be confident they are good to go.
v1.18.1 [2020-07-10]
What's new?
- Use
turbot workspace list
to see a list of your currently configured workspaces. turbot workspace configure
added, with the same behavior asturbot configure
.
Bug fixes
turbot test
was failing for some GCP controls due to an update in the GCP auth library package. This has been fixed.
v1.18.0 [2020-07-10]
See v1.18.1
v1.17.3 [2020-05-21]
Bug fixes
turbot install
was attempting to install the latest version, which would fail if that version was not available or recommended. It will now install the latest recommended version, or if none are recommended, the latest available version.
v1.17.2 [2020-05-11]
Bug fixes
- The build of v1.17.1 was not properly published, leading to confusion and mixed installs. This release is identical, but properly distributed.
v1.17.1 [2020-05-07]
Bug fixes
- Remove the explicit default value for
force-recommended
as this causes issues when using the yargsconflicts
parameter.
v1.17.0 [2020-05-07]
What's new?
- Mod authors often want to set their new version as
RECOMMENDED
in the registry, telling users it's the best choice. Useturbot publish --force-recommended
andturbot modify --force-recommended
to mark this version asRECOMMENDED
and set all currently recommended versions toAVAILABLE
.
Bug fixes
turbot test
was showing incorrect test data validation errors, due to a graphql schema change that had not been handled by the CLI.
v1.16.0 [2020-04-30]
What's new?
turbot inspect
now enforces valid semantic versions in mod version numbers. We admire your creativity, but encourage you to express it elsewhere.
Bug fixes
- Fixed
turbot up --zip
, which broke during a dependency update.
v1.15.1 [2020-04-24]
Bug fixes
turbot login
was failing if the~/.config
folder did not exist.turbot template build
was always expecting awip-*
instance branch to exist. It's now correctly limited to runs where--use-instance-root-branch
is passed.
v1.15.0 [2020-04-22]
What's new?
- Proxy support via the
HTTPS_PROXY
environment variable. Login, install mods and publish to our registry all via your favorite proxy. (Provided it's ahttp://
proxy, we don't supporthttps://
yet.)
v1.14.0 [2020-04-17]
What's new?
- Manage published mods in the registry from the CLI, including their status and
description. For example
turbot registry modify --mod "@turbot/aws" --mod-version "5.0.0" --status RECOMMENDED --description "updated description"
. - Usually a newly published version should be the recommended one. So now you
can do that automatically during
turbot publish
using the--status RECOMMENDED
flag. turbot template build
now supports instance root branch names with a random suffix, following the naming convention:wip/<instance root name>/*
. We've found scheme much more effective at scale.- We now automatically include
RELEASE_NOTES.md
as well asCHANGELOG.md
when building a mod. Release notes are intended for users while a changelog is intended for developers or others obsessed over details. turbot test
validates input query, but only works for a single query (not for the more advanced array of queries syntax). Previously the test would always fail for an array of queries, so we're now skipping the test in these cases until it can be fully supported.
Bug fixes
turbot publish --dir <mod folder>
did not work if run outside the mod folder - the function zips were not correctly created.
v1.13.0 [2020-04-06]
What's new?
- Registry login using
turbot login
(and similar) now requires both--username
and--password
or neither. They just can't live without each other.
Bug fixes
turbot template build --patch
command was failing without running the git command.
v1.12.0 [2020-03-19]
What's new?
- In
turbot compose
the+schema
directive can now map from openApi format schema to valid JSON schema.
Bug fixes
turbot template build
fleet operations were failing due to an error displaying the summary. This has been fixed.
v1.11.0 [2020-03-12]
What's new?
- Use
turbot test
to check GraphQL mutations (e.g.updatePolicySetting
) are called as expected from controls. turbot compose
no longer errors when a glob matches no source files.
v1.10.0 [2020-03-04]
What's new?
turbot publish --wait
will wait for the mod to beAvailable
in the registry.
v1.9.0 [2020-02-26]
What's new?
- A new directive,
+schema
has been added forturbot compose
. This allows you to include a specific item from a schema file, including all definitions which are referenced. turbot template build
will now run even if there are changes on the local branch, if neither the--use-fleet-branch
or--use-instance-root-branch
arguments are set. This is useful when running building templates for the first time with local config updated but not committed.
v1.8.0 [2020-02-24]
What's new?
turbot inspect --format changelog
now includes the uri of each control, policy, resource and action item.
Bug fixes
turbot up
was broken in 1.7.0. This has been fixed.turbot pack
andturbot publish
had to be run out of the target mod directory. They can now be run out of any directory by passing the--dir
flag
v1.7.0 [2020-02-23]
What's new?
turbot aws credentials
now supports--aws-profile <aws_profile>
,--profile <turbot_profile>
and--access-key <turbot_access_key> --secret-key <turbot_secret_key>
combinations.
Bug fixes
turbot test
was doing type coercion of input data before validation. It now expects correct types to be passed, matching the behavior of the Turbot server.
v1.6.0 [2020-02-12]
What's new?
- Use
--no-color
to simplify the output of any command. Sometimes less is more. turbot template build --git --branch <branch-name>
allows you to specify the branch the build operations will be committed onto.turbot template build
no longer supports the--config
flag. Usetemplate.yml
files instead.
Bug fixes
turbot install
was not downloading files. Now it does.turbot template build
was creatingtemplate.yml
files for every template instance. This is noisy and defeats the value of template inheritence, so has been stopped.
v1.5.1 [2020-02-10]
Bug fixes
turbot template build --git
should checkout the original git branch at the end of the build. Broken in v1.5.0.
v1.5.0 [2020-02-10]
What's new?
turbot template build --git
now skips instances without a template-lock file, which cannot be resolved anyway.
Bug fixes
turbot up
andturbot publish
were stalling for large mods.
v1.4.1 [2020-02-07]
Bug fixes
turbot template build --git
should checkout the original git branch at the end of the build. Broken in v1.4.0.
v1.4.0 [2020-02-06]
What’s new?
- Clearer reporting of errors when running
turbot template build
. turbot template build --fleet-mode
now defaults toupdate
, which is almost always the right choice.- When running
turbot template build --git
it is no longer necessary to specify a base git branch, it sensibly assumes you want to use the current branch. - Use
turbot pack --zip-file awesome.zip
to output mods with any name you prefer.
v1.3.1 [2020-02-05]
Bug fixes
turbot template outdated
fixed to work with specific template definition directories.- Only save successful template operations to the branch when using
turbot template build --git
. Previously we were polluting that goodness with failures as well. - Limit
template-lock.yml
to data that is absolutely necessary, removing noise from change logs. - Disabled
turbot template update
. Please useturbot template build
instead, as you probably already were.
v1.3.0 [2020-02-04]
What's new?
turbot inspect --output-format
will now accept either a file path to the template or the template string directly.- Clearer output of the actions taken when running
turbot template build
. - Automatic code merging when doing updates with
turbot template build
will now merge successful changes onto a single branch and write failed patches to the filesystem for easier review.
v1.2.1 [2020-01-20]
Bug fixes
turbot template build
has a special case "provider" field in the render context. Long term it will be removed. Short term, it should not break for vendor level mods like @turbot/aws or @turbot/linux.
v1.2.0 [2020-01-16]
What's new?
- View and confirm
turbot template build
actions before they happen. (Add--yes
to keep the previous behavior.) - Easily review success and failure after running
turbot template build
across many instances.
Bug fixes
turbot download
will now give up gracefully on failed downloads, relieving it of an eternity of failed retries.
v1.1.1 [2020-01-13]
Bug fixes
- Fix
turbot template build
crash added by v1.1.0.
v1.1.0 [2020-01-13]
What’s new?
- Use
turbot aws credentials --account 123456789012 --profile my-account
to generate and save temporary AWS credentials into your local AWS profile. Easily work across many AWS accounts using your single Turbot profile. - Filter
turbot template build
to target all instances of a specific template, which is great when you are in the process of converting code to use the template (some code in template management, some still custom).
Bug fixes
turbot test
was broken in v1.0.4 due to a missing dependency. Life is better with friends.
v1.0.4 [2020-01-07]
Bug fixes
turbot template
should allow rendering of the filename as well as folder names, e.g.src/{{instance}}/resource/types/{{instance}}.yml
.
v1.0.3 [2019-12-19]
Bug fixes
test.options
are useful, but not required, soturbot test
should not crash if they are not set for a test.
v1.0.2 [2019-12-19]
Bug fixes
- Registry name validation should work for valid registries like turbot.com.
turbot test
has atest.awsProfile
field to set the AWS profile to use when running tests locally. This has been moved into the generic, customizabletest.options.awsProile
location since it's relevant to AWS mods specifically rather than a core feature of Turbot.
v1.0.1 [2019-12-18]
Bug fixes
- The default registry is now turbot.com. Other development registries have been cleaned up to reduce noise.
- Cleaned up available commands and their descriptions.
v1.0.0 [2019-12-18]
What's new?
- Easily manage Turbot credentials and profiles.
- Run graphql commands in scripts.
- Install and inspect mods.
- Build, compose & test Turbot mods.
- Upload mods to Turbot for internal testing or use.
- Publish mods to the Turbot registry for public sharing.
- Use templates to accelerate the development of mods.