NOTE
If you encounter any bugs or issues you can report them tounibox@kpn.com. Please include the exact command, the erroneous output and an explanation of the expected output. You can also send requests for new features to this e-mail address.
This project provides a tool to call functions on the DSH resource management API from the
command line of your workstation or from a script.
Some of the capabilities of the dsh tool are:
- Calling all operations exposed in the DSH resource management API from either the command line or from a script.
- Many additional and easier to use functions are provided.
- Extensive help information on each level using the
--helpand-hflags, including listings of all available operations. - Configuring platform and tenant credentials interactively via the
dshtool. Sensitive passwords are stored in your computer's keyring, if available. - Retrieving information about the available platforms.
- Opening web applications (e.g. the console, the swagger ui or the vhost of your app or service) from the command line.
- Reversed lookup functions. For example find all services that use a given secret or volume, or contain an environment value with a given value in their configuration.
For macOS and Linux pre-built binaries are available via the projects GitHub
release page.
The installation for macOS and Linux is the same:
- Download the binary for your OS.
- Rename the downloaded binary to
dsh. - Make the
dshbinary executable (chmod u+x dsh). - Move the binary to a directory that is included in your
PATHvariable (/usr/local/binor/usr/binor similar).
Older versions of the dsh tool could be installed directly from crates.io, but since the
current version has a dependency on the rock_api crate which is on KPN artifactory, this is
currently not possible. However, if you have access to artifactory and you have the Rust
tool-chain installed, the dsh tool can be installed from GitHub, by executing the following
commands:
> git clone git@github.com:kpn-dsh/dsh-cli.git
> mv dsh-cli
> cargo install --path .This will install the dsh tool in the directory $HOME/.cargo/bin/dsh.