Hello and welcome to our tutorial on Klio!
In this tutorial, we assume that:
- You are comfortable coding in the Python programming language.
- You have access to a Unix-based environment
- You are comfortable working in a terminal application with a Unix-based shell, e.g. bash, zsh, etc.
We will be running commands in a shell environment inside a Docker container and editing code.
In order for the tutorial to run smoothly, we will need you to follow the steps below on the computer that you are planning to run the tutorial in. System Requirements
- Docker (instructions here to install)
- git (instructions here to install)
- A code editor (we suggest Sublime Text)
Why Docker? In order to ensure that all attendees of the tutorial are working with the same environment, we've created a Docker image with klio pre-installed in it. If you're not familiar with Docker, a tool for running identical, isolated environments across many computers, you can learn more about it here.
Either clone it from this repository:
git clone https://github.com/fallonchen/ismir-klio.git
Or
Download the zip file from this repository by clicking on the green Code button and select "Download ZIP".
After cloning/downloading the code, inside the code example you should see the following:
launch-klio-tutorial.sh
changed_files/
pitch_tracker/
pitch-tracker-job-output/
The pitch_tracker/
directory contains example code that you will use during the tutorial.
The changed_files/
will provide a reference for working code, if you need it.
The pitch-tracker-job-output/
directory is currently empty, and will be used to hold the output of your job.
In a terminal, navigate to the directory with the example code and run:
$ ./launch-klio-playground.sh
This script downloads the prepared Docker image, and launches the container in interactive mode with Klio installed for you inside of it. Once finished, your terminal should show something like this:
root@1ee87cb4f3cc#
And you should be able to run the klio command and see its help text:
root@1ee87cb4f3cc# klio
Usage: klio [OPTIONS] COMMAND [ARGS]...
Options:
--version Show the version and exit.
--help Show this message and exit.
Commands:
image Manage a job's Docker image.
job Create and manage Klio jobs.
message Manage a job's message queue via Pub/Sub.
If you are having trouble with this step, please ping us on Slack!
If you have access to the ISMIR 2020 slack, you can find us in the #tutorial-1-klio-tutorial room.
If you don't yet have access to the ISMIR 2020 slack, you can sign up for the Spotify FOSS Slack and ping us in the #klio channel.
And that's it! You're ready to go. 🙌
Klio is released under the Apache 2.0 license. Documentation is on Read the Docs and how to setup on your local machine can be found here.