Awesome
Tekton Pipelines CLI (tkn
)
<p align="center">
<img width="250" height="175" src="https://github.com/cdfoundation/artwork/blob/main/tekton/additional-artwork/tekton-cli/color/tektoncli_color.svg" alt="Tekton logo"></img>
</p>
The Tekton Pipelines CLI project provides a command-line interface (CLI) for interacting with Tekton, an open-source framework for Continuous Integration and Delivery (CI/CD) systems.
Installing tkn
Download the latest binary executable for your operating system.
Mac OS X
- Use Homebrew
brew install tektoncd-cli
-
Use released tarball
# Get the tar.xz curl -LO https://github.com/tektoncd/cli/releases/download/v0.39.0/tkn_0.39.0_Darwin_all.tar.gz # Extract tkn to your PATH (e.g. /usr/local/bin) sudo tar xvzf tkn_0.39.0_Darwin_all.tar.gz -C /usr/local/bin tkn
Windows
- Use Chocolatey
choco install tektoncd-cli --confirm
- Use Scoop
scoop install tektoncd-cli
#Create directory
New-Item -Path "$HOME/tektoncd/cli" -Type Directory
# Download file
Start-BitsTransfer -Source https://github.com/tektoncd/cli/releases/download/v0.39.0/tkn_0.39.0_Windows_x86_64.zip -Destination "$HOME/tektoncd/cli/."
# Uncompress zip file
Expand-Archive $HOME/tektoncd/cli/*.zip -DestinationPath C:\Users\Developer\tektoncd\cli\.
#Add to Windows `Environment Variables`
[Environment]::SetEnvironmentVariable("Path",$($env:Path + ";$Home\tektoncd\cli"),'User')
Linux tarballs
-
# Get the tar.xz curl -LO https://github.com/tektoncd/cli/releases/download/v0.39.0/tkn_0.39.0_Linux_x86_64.tar.gz # Extract tkn to your PATH (e.g. /usr/local/bin) sudo tar xvzf tkn_0.39.0_Linux_x86_64.tar.gz -C /usr/local/bin/ tkn
-
# Get the tar.xz curl -LO https://github.com/tektoncd/cli/releases/download/v0.39.0/tkn_0.39.0_Linux_aarch64.tar.gz # Extract tkn to your PATH (e.g. /usr/local/bin) sudo tar xvzf tkn_0.39.0_Linux_aarch64.tar.gz -C /usr/local/bin/ tkn
-
# Get the tar.gz curl -LO https://github.com/tektoncd/cli/releases/download/v0.39.0/tkn_0.39.0_Linux_s390x.tar.gz # Extract tkn to your PATH (e.g. /usr/local/bin) sudo tar xvzf tkn_0.39.0_Linux_s390x.tar.gz -C /usr/local/bin/ tkn
-
# Get the tar.gz curl -LO https://github.com/tektoncd/cli/releases/download/v0.39.0/tkn_0.39.0_Linux_ppc64le.tar.gz # Extract tkn to your PATH (e.g. /usr/local/bin) sudo tar xvzf tkn_0.39.0_Linux_ppc64le.tar.gz -C /usr/local/bin/ tkn
Linux RPMs
If you are running on any of the following rpm based distros:
- Latest Fedora and the two versions behind.
- Centos Stream
- EPEL
- Latest RHEL
you would be able to use @chmouel's unofficial copr package repository by running the following commands:
dnf copr enable chmouel/tektoncd-cli
dnf install tektoncd-cli
On any other RPM based distros, you can install the rpm directly:
rpm -Uvh https://github.com/tektoncd/cli/releases/download/v0.39.0/tektoncd-cli-0.39.0_Linux-64bit.rpm
Linux Debs
If you are running on the latest rolling Ubuntu or Debian, you can use the TektonCD CLI PPA:
sudo apt update;sudo apt install -y gnupg
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3EFE0E0A2F2F60AA
echo "deb http://ppa.launchpad.net/tektoncd/cli/ubuntu oracular main"|sudo tee /etc/apt/sources.list.d/tektoncd-ubuntu-cli.list
sudo apt update && sudo apt install -y tektoncd-cli
The PPA may work with older releases, but that hasn't been tested.
On any other Debian or Ubuntu based distro, you can simply install the binary package directly with dpkg
:
curl -LO https://github.com/tektoncd/cli/releases/download/v0.39.0/tektoncd-cli-0.39.0_Linux-64bit.deb
dpkg -i tektoncd-cli-0.39.0_Linux-64bit.deb
NixOS/Nix
You can install tektoncd-cli
from nixpkgs on any system that supports the nix
package manager.
nix-env --install tektoncd-cli
Arch / Manjaro
You can install tekton-cli
from the official arch package repository :
pacman -S tekton-cli
Homebrew on Linux
You can install the latest tektoncd-cli if you are using Homebrew on Linux as for the osx version you need to simply do :
brew install tektoncd-cli
Source install
If you have go installed and you want to compile the CLI from source, you can checkout the Git repository and run the following commands:
make bin/tkn
This will output the tkn
binary in bin/tkn
tkn
as a kubectl
plugin
kubectl
will find any binary named kubectl-*
on your PATH and consider it as a plugin.
After installing tkn, create a link as kubectl-tkn
ln -s /usr/local/bin/tkn /usr/local/bin/kubectl-tkn
For Mac OS X with Homebrew
ln -s $(brew --prefix)/opt/tektoncd-cli/bin/tkn /usr/local/bin/kubectl-tkn
Run the following to confirm tkn is available as a plugin:
kubectl plugin list
You should see the following after running kubectl plugin list if tkn is available as a plugin:
/usr/local/bin/kubectl-tkn
If the output above is shown, run kubectl-tkn to see the list of available tkn commands to run.
Useful Commands
The following commands help you understand and effectively use the Tekton CLI:
tkn help:
Displays a list of the commands with helpful information.tkn bundle:
Manage Tekton bundlestkn clustertask:
Parent command of the ClusterTask command group.tkn clustertriggerbinding:
Parent command of the ClusterTriggerBinding command group.tkn completion:
Outputs a BASH, ZSH, Fish or PowerShell completion script fortkn
to allow command completion with Tab.tkn customrun:
Parent command of the Customrun command group.tkn eventlistener:
Parent command of the Eventlistener command group.tkn hub:
Search and install Tekton Resources from Hubtkn pipeline:
Parent command of the Pipeline command group.tkn pipelinerun:
Parent command of the Pipelinerun command group.tkn task:
Parent command of the Task command group.tkn taskrun:
Parent command of the Taskrun command group.tkn triggerbinding:
Parent command of the Triggerbinding command group.tkn triggertemplate:
Parent command of the Triggertemplate command group.tkn version:
Outputs the cli version.
For every tkn
command, you can use -h
or --help
flags to display specific help for that command.
Disable Color and Emojis in Output
For many tkn
commands, color and emojis by default will appear in command
output.
It will only shows if you are in interactive shell with a standard input attached. If you pipe the tkn command or run it in a non interactive way (ie: from tekton itself in a Task) the coloring and emojis will always be disabled.
tkn
offers two approaches for disabling color and emojis from command output.
To remove the color and emojis from all tkn
command output, set the environment variable NO_COLOR
, such as shown below:
export NO_COLOR=""
More information on NO_COLOR
can be found in the NO_COLOR
documentation.
To remove color and emojis from the output of a single command execution, the --no-color
option can be used with any command,
such as in the example below:
tkn taskrun describe --no-color
Want to contribute
We are so excited to have you!
- See CONTRIBUTING.md for an overview of our processes
- See DEVELOPMENT.md for how to get started
- See ROADMAP.md for the current roadmap
- See [releases.md][releases.md] for our release cadence and processes
- Look at our good first issues and our help wanted issues