All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, adheres to Semantic Versioning, and is generated by Changie.
- Resolve snapcraft schema issue for rerelease. No code changes from prior, just rereleasing.
- Added
--body
option to dsv secret create i.e.dsv secret create --body '{"data":{"key":"value"},"atrributes":{"attribute1":"value1"},"descr":"add description here"}}'
Note: options --data --attributes and --desc will take precedence over the --body option
- Maintenance release due to updated dependencies.
- Update dependent libraries and go version. No user facing changes, just continued maintenance for improved security & stability.
- Windows cli version update check was looking for a binary with
windows
in the name, while the actual artifact iswin
.
dsv pool list
: new--limit
,-l
,--cursor
flags. Seedsv pool list --help
for more details.
- fixes AB#495586
- related AB#495586
- https://github.com/andrii-zakurenyi
- Fix the format of links to pre-built binaries.
- Allow defining command handlers which could return an error instead of exit code.
- Move store package to internal/store. Do not use custom ApiError in the store package.
- Reduce number of API calls in E2E tests by using CLI configuration profile instead of requesting a new token on each CLI run.
- Remove "v" prefix from https://dsv.secretsvaultcloud.com/cli-version.json which causes error messages in log.
- CLI can be invoked through a container now. See Docker Hub for available versions. Examples are listed on README.md on how to use in shell as well as an example convenience wrapper.
- DSV init will now error when the filestore path is not a directory.
- fixes AB#464525
- fixes AB#473745
- related AB#484003
dsv byok update
: new command which allows to change master encryption key. Seedsv byok update --help
for more details.dsv engine list
: new--query, -q
,--pool-name
,--sort
,--sorted-by
flags. Seedsv engine list --help
for more details.dsv pool list
: new--query, -q
,--sort
,--sorted-by
flags. Seedsv pool list --help
for more details.dsv role search
: new--sort
,--sorted-by
flags. Seedsv role search --help
for more details.dsv client search
: new--sort
flag allows to sort client credentials by created time.dsv user groups
: new--query, -q
,--limit
,--cursor
,--sort
flags. Seedsv user groups --help
for more details.dsv groups search
: new--sort
,--sorted-by
flags Seedsv groups search --help
for more details.dsv user search
: new--sort
,--sorted-by
flags. Seedsv user search --help
for more details.dsv policy search
: new--sort
,--sorted-by
flags. Seedsv policy search --help
for more details.
- Fix reading file with cached latest available cli version. Store only one download link for a corresponding os/arch.
- Use endpoint prompting only when selected transport protocol is either HTTP or HTTPS for
dsv siem create
. - Delete engine without useless force flag.
- Use new Delinea DSV Azure DevOps Task instead of deprecated ThycoticDSV.
- Devcontainer attempts to mount existing dsv cli configuration from filestore if this is available.
This will ease local devcontainer usage setup and allow testing and
$HOME/.envrc
configurations to be autoloaded.
- fixes AB#481685
- fixes AB#481686
- fixes AB#481687
- fixes AB#481688
- fixes AB#481928
- fixes AB#481929
- fixes AB#481930
- fixes AB#482144
- fixes AB#482527
- fixes AB#482447
- fixes AB#482320
- fixes AB#482838
- fixes AB#468104
- related AB#481683
- related AB#470745
- related AB#482427
- related AB#481124
- related AB#468923
No user facing impact. This release is iterating on Snap installation method for Linux (which is in progress), and does not impact functionality of the dsv-cli.
- Remove plugs for the dsv-cli snap installation, allowing all configuration to sit inside the isolated snap environment.
- fixes AB#480396
- related AB#464526
No user facing impact. This release is iterating on Snap installation method for Linux (which is in progress), and does not impact functionality of the dsv-cli.
- Adjust snap installation mapping by removing aliases in goreleaser config.
No user facing impact. This release is iterating on Snap installation method for Linux (which is in progress), and does not impact functionality of the dsv-cli.
- Adjust snap installation mapping in goreleaser to try and ensure publishing is successful.
- Add new installation method for Linux users, leveraging Snapcraft. Include Snap install support for goreleaser, with login tasks and release tasks for Mage and Azure Pipelines included now. and login tasks for snapcraft.
- fixes AB#480396
- related AB#464526
- Release Scoop Installation support. This will allow Windows users to install via Scoop, which is a similar experience to Homebrew on MacOS and Linux.
- fixes AB#477843
- related AB#464528
- Reverted Scoop installation method as this is failing despite builds for windows at this time. Will revisit in the future as might be a Goreleaser issue or problem identifying the assets built in this more complex configuration.
- related AB#464528
- Add Scoop installation method for Windows.
- fixes AB#477843
- related AB#464528
- Adjust the artifact path for goreleaser generated checksum back to standard asset-platform-etc.
- Resolve version of binary and asset matching for update service with cli-version.json and brew installs.
- fixes AB#478048
- Ensure embedded version information is correctly included in binary. This was missing from prior release returning "undefined".
- related AB#464524
- Improve Homebrew installation support for multiple architectures on macOS.
- related AB#464524
- 🎉 Brew install is now available for macOS and Linux.
- Add
--name
flag instead of--path
flag for read/update/delete SIEM. While we'll continue to support--path
flag, you should use--name
flag primarly.
- Remove
--name
flag check while using--data
flag on create siem. - Trim space in name on create siem.
- fixes AB#471546
- fixes AB#477843
- fixes AB#475389
- fixes AB#471545
- related AB#464524
- related AB#477345
- related AB#477323
For users, the primary difference in this release is improved documentation in the project repo and a few new release artifacts.
For developers, this contains a lot of changes related to CI, development workflow improvements, and more. Yes, the wait is over! 🎉
- Release process primarily handled by the great GoReleaser.
- Release local and remote both invoked easily via:
mage release:all
task. This includes cross-platform builds, signing, publishing to s3, github release creation, SBOM creation, and more.- This lays the groundwork for additional installation methods, such as
brew
, that will be coming soon.
- This lays the groundwork for additional installation methods, such as
- Release artifacts now include software bill of materials, signature files from cosign for asset verification.
- Aqua-proj now points to this new repo location.
README.md
now contains quick install snippets to get installation up and running more quickly. We love♥️ our users.
- Included documentation overview on basics of setup of signing for contributors needing it.
- Release process documented.
- 🎉 Charm's VHS project used for generation of landing images via script, aka a codified gif generation.
- 🎉 Update
master
branch default for the repository tomain
to align with better industry inclusive naming practices. - 🤖 Mage task automation contains additional helpers for cert installs for Apple, S3 Upload of artifacts.
- Trunk automation fully integrated now. Just run
trunk check --ci
to locally reproduce the exact checks the PR linting checks will do.
- CI Matrix build no longer used, single agent building and releasing.
- CI pipelines refactored and using nearly identical tools via
aqua
tool, so local development and CI development is nearly equal now. - CI testing pipelines for end to end and integration tests were split into their own independent pipelines.
- CI process is now fully containerized in ephemeral hosted agents, no longer expecting any environment setup.
- Apply basic steps on goreleaser templates for creating reproducible builds.
- The project go module has been renamed from
thy
to GitHub canonical name formatgithub.com/DelineaXPM/dsv-cli
. This will also allow better support for installing the latest version of cli viago install github.com/DelineaXPM/dsv-cli@latest
as an option for those so so inclined.
mage test:integration
task added that checks all the required environment variables and flags to invoke much more easily locally and in CI.- Unit tests run via gotestsum.
- Codecov integration for pull requests provide feedback on PR coverage changes on each new request.
- Testing is now able to be run on unit tests immediately.
Integration tests now check for required environment variable
GO_INTEGRATION_TEST
to opt-in to tests, rather than requiring filtering out. - Remove
fmt
blocking test. This is now covered bygolangci-lint
tooling run by trunk if required. Current tests flag vendor directory incorrectly.
- Various upgrades and improvements via renovate.
- Allowing binary to run if prompted by OS (only required when running a new version the first time).
When possible this will be further improved, but until then just accept the prompt after installation and it should function as normal.
- Smart Screen on windows may still prompt at this time for allowing binary to run the first time.
- Gatekeeper on MacOS might alert as well, despite being signed, due to other requirements with Apple.
- fixes AB#469252 AB#448642
- related AB#452090
- No longer read/require configuration file for:
- commands with --help provided , e.g.
dsv user create --help
. - version command, i.e.
dsv --version
. - top level command, i.e.
dsv
. - dummy commands that simply print its help message, e.g.
dsv breakglass
ordsv pki
.
- commands with --help provided , e.g.