Install Kosli

Installing the Kosli CLI #

Kosli CLI can be installed from package managers, by Curling pre-built binaries, or by running inside a Docker container.
We recommend using a Docker container for the tutorials.

If you have Homebrew (available on MacOS, Linux or Windows Subsystem for Linux), you can install the Kosli CLI by running:

brew install kosli-dev/tap/kosli

On Ubuntu or Debian Linux, you can use APT to install the Kosli CLI by running:

sudo sh -c 'echo "deb [trusted=yes] /"  > /etc/apt/sources.list.d/fury.list'
# On a clean debian container/machine, you need ca-certificates
sudo apt install ca-certificates
sudo apt update
sudo apt install kosli

On RedHat Linux, you can use YUM to install the Kosli CLI by running:

cat <<EOT >> /etc/yum.repos.d/kosli.repo
name=Kosli public Repo

If you get mirrorlist errors (likely if you are on a clean centos container):

cd /etc/yum.repos.d/
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=|baseurl=|g' /etc/yum.repos.d/CentOS-*
yum update -y
yum install kosli

You can download the Kosli CLI from GitHub .
Make sure to choose the correct tar file for your system.
For example, on Mac with AMD:

curl -L | tar zx
sudo mv kosli /usr/local/bin/kosli

You can run the Kosli CLI in this docker container:

docker run -it --rm bash

Verifying the installation worked #

Run this command:

kosli version

The expected output should be similar to this:

version.BuildInfo{Version:"v0.1.10", GitCommit:"9c623f1e6c293235ddc8de1e347bf99a1b356e48", GitTreeState:"clean", GoVersion:"go1.17.11"}

Getting your Kosli API token #

  • Go to
  • Log in or sign up using your github account
  • Open your Profile page (click on your avatar in the top right corner of the page).

Using environment variables #

The --api-token and --owner flags are used in every kosli CLI command.
Rather than retyping these every time you run kosli, you can set them as environment variables.

The owner is the name of the organization you intend to use - it is either your private organization, which has exactly the same name as your GitHub username, or a shared orgnazation (if you created or have been invited to one).

By setting the environment variables:

export KOSLI_API_TOKEN=abcdefg
export KOSLI_OWNER=cyber-dojo

you can use

kosli pipeline ls 

instead of

kosli pipeline ls --api-token abcdefg --owner cyber-dojo 

You can represent ANY flag as an environment variable. To do that you need to capitalize the words in the flag, replacing dashes with underscores, and add the KOSLI_ prefix. For example, --api-token becomes KOSLI_API_TOKEN.