tappr makes it easy to create Kubernetes clusters on your local machine and some cloud providers as well as install/manage Tanzu Application Platform installs on it. The CLI can be used by developers to do local development as well as in the CI to run end-2-end tests on a Kubernetes cluster with TAP installed.
- Create/Delete k8s clusters suitable for TAP deployment using
tappr cluster create/tappr cluster deletecommands.kind,minikube, andGKEare supported as of now. Other providers will be added in the future.- GKE cluster creation requires
gcloudCLI installed and configured usinggcloud authorservice-accounts.
- Install TAP on any K8s cluster using a single
tappr tap installcommand. - Upgrade TAP using
tappr tap upgradecommand. - Setup Developer namespace for workloads creation on any TAP cluster using
tappr tap setupcommand. This command will help setup your registry credentials, tekton test pipelines and scan policies for testing scanning supply chain. - Edit TAP installations on the fly using
tappr tap edit - Easily connect your TAP GUI with other clusters in a multi-cluster environment using
tappr gui track/untrackcommands. - Check your local for useful utilities that are used by
tappr. You can install missing ones usingtappr utils local setup. - Store your credentials once, which are then seamlessly used throughout
tapprcommands.
- Install the latest Python 3.x.x from python.org
Recommended way to install tappr is by using pipx.
You can brew install pipx as follows:
brew install pipx
pipx ensurepathTo Install latest:
pipx install git+https://github.com/atmandhol/tappr.git
If you already have tappr installed from latest, and want to pull in the new changes:
pipx reinstall tappr
To Install a specific version of tappr:
pipx install git+https://github.com/atmandhol/tappr.git@version
- Run
tappron your command line to confirm if its installed
- Start by running
tappr utils local checkcommand to see if all the required tools to usetapprare installed or not.
- Run
tappr utils local setupcommand and install the missing tools. All prompts defaults toNoyou can keep hitting enter till you get to the tool that is missing. - Run
tappr initto set up credentials once.
Check the Full CLI Usage documentation for everything that is possible.
- Run
tappr cluster create/deletecommands to create K8s clusters on different providers. - Run
tappr tap install {profile} {version}command to install TAP on it along with Cluster Essentials. You can skip the Cluster essential install using the--skip-cluster-essentialsflag. You can also install only Cluster Essentials usingtappr tap install-cluster-essentialscommand. - Run
tappr tap edit --showto update your TAP install with your custom settings. - Run
tappr tap upgrade {version}command to install TAP on it.
Use the --help global flag to see the options and possible values you can provide.
# Create a minikube cluster. You can use --help on this command to see more flags to customize the minikube cluster
tappr cluster create minikube tap-local
# Start a tunnel in a separate terminal using (requires sudo)
minikube tunnel --profile tap-local
# Install TAP. Only install full profile if your machine can handle it :D.
tappr tap install full 1.4.0
# After the install is complete, you can access TAP GUI on
# http://tap-gui.127.0.0.1.nip.io
# You can also set a different ingress-domain if you like
# using the --ingress-domain flag as long as it routes to a
# proper IP in your /etc/hosts file- Mini test-framework that can be used to write
bashbased integration tests. - Auto generate
changelogon a project using conventional commits standard usingtappr utils changelog. - Auto generate
releasenotes on any Git project usingtappr utils release - Check/Set up your local environment for useful tools in life of a k8s developer/operator using
tappr utils localcommands.
- Install
poetryon the system level using
pip3 install poetry
- Create a virtualenv
tapprusing virtualenvwrapper and run install
mkvirtualenv tappr -p python3
poetry install
Run the following poetry command
$ poetry buildThis will generate a dist folder with a whl file and a tar.gz file.
Run the following poetry command
$ poetry updateGenerate the usage docs automatically using the generate_paparwork script in the hack folder.
$ ./hack/generate_paperwork.sh

