Workspace CLI is a bash script that provides functionality for installing and configuring workspace for a software engineer/DevOps working with containers and orchestration on a Linux environment.
Functionality includes installation and configuration of the following applications:
- Git and Github CLI.
- Visual Studio Code.
- Rootless docker.
- Single node kubernetes: k3s or minikube.
- Kubernetes CLI tools like: kubectl, helm, helmfile, vals.
Workspace CLI is designed to be used on a Linux environment, and it is tested on Ubuntu 22.04 LTS.
To install workspace CLI you simply must do the following steps:
-
Download workspace script the destination directory, for instance
$HOME/bin
:mkdir -p $HOME/bin wget https://raw.githubusercontent.com/kostiantyn-matsebora/workspace-cli/master/release/workspace -O $HOME/bin/workspace chmod +x $HOME/bin/workspace
-
Add an alias to your
.bashrc
or.bash_profile
file:echo "alias workspace='$HOME/bin/workspace'" >> $HOME/.bashrc
-
Reload your shell:
source $HOME/.bashrc
After installation, you can use workspace CLI by running workspace
command in your terminal. It will show you a help message with available commands.
$ workspace
workspace - CLI that provides functionality for installing and configuring workspace for a software engineer/DevOps.
Usage:
workspace COMMAND
workspace [COMMAND] --help | -h
workspace --version | -v
Commands:
completions Generate bash completions
register-autocomplete Register autocompletion for workspace CLI in .bashrc file
upgrade Upgrade workspace CLI to latest version
install Install applications and tools required for workspace. Does not require interactive input, so this command cannot be used in CI/CD environments and automation scripts.
setup Setup (install and configure) workspace. Require interactive input, so this command cannot be used in CI/CD environments and automation scripts.
config Configure workspace. Applications needs to be already installed. Some of steps require interactive input, so this command cannot be used in CI/CD environments and automation scripts.
git Install and configure git toolkit
docker Install rootless docker
howdy Install and configure pluggable authentication module (PAM) howdy for facial recognition
kube Kubernetes installation and configuration
kube-tools Kubernetes CLI tools installation and configuration
vscode Visual Studio Code installation and configuration
vals Install and configure vals
system System maintenance utilities
To get help for specific commands you can run: workspace COMMAND --help
, for instance:
$ workspace setup --help
workspace setup
Setup (install and configure) workspace. Some of the steps require interactive
input, so this command cannot be used in CI/CD environments and automation
scripts.
Alias: s
As an example to install and configure git
and GitHub CLI
you can run the following command:
workspace setup git
To install and configure all applications you can run:
workspace setup all
CLI is generated using bashly, a bash framework for writing CLI applications.
Bashly configuration and sources are located in bashly
directory.
If you have already installed bashly you can regenerate CLI by running the following command from the destination directory:
bashly generate
or if you already have docker installed you can add the following alias to your .bashrc
or .bash_profile
file:
alias bashly='docker run -it --rm -v $HOME/bin/workspace -w /work dannyben/bashly'
and then use bashly command as usual:
bashly generate
For more information how to install bashly you can visit bashly website.
If you experience any issues, have a question or a suggestion, or if you wish to contribute, feel free to open an issue or start a discussion.