Skip to content

Original source: https://input.scs.community/scs-operator-hackathon-dev-briefing#; written by Friedrich Zahn.

Yaook SCS Operator hackathon briefing for developers

Tools to bring

We recommend to bring a Linux machine. There will be limited number of VM workstations that have all tools available and access to pre-installed Yaook setups.

Required tools - please have them installed: * SSH, rsync * kubectl, helm * Python (ideally 3.11) and being able to use virtual environments with pip * cue

Please check out the Yaook operator repository, switch to the branch operator-template and run the following commands in a virtual env:

1export MYPYPATH="$(pwd)/.local/mypy-stubs"
2
3pip install -r requirements-build.txt
4pip install -e .
5
6stubgen -p kubernetes_asyncio -o "$MYPYPATH"

Helpful tools: * k9s * yaookctl, easy if you can work with nix

Basics

If you have never worked with Yaook before, have a look at the user guide "Understanding Yaook", skim it to get at least an idea how Yaook works and what specific terms are referring to.

Please check out the Yaook operator repository and familiarize yourself with its structure: - operator code at yaook/op/<component> - helm charts at yaook/helm_builder/Charts/<component> - documentation at docs, it's rendered to https://docs.yaook.cloud

Have a look at the "devpod" guide to get a rough idea of the development workflow we'll use.

We've prepared operator and devpod templates. Those are supposed to give you something to start off from, but many features are intentionally left out.

Extended edition

There are dedicated guides to operator development.

"Evaluating requirements" will give you a high-level idea from what building blocks operators can be created.

"Build the operator" gives detailled step-by-step instructions on the various files and artifacts that are involved.

If you want to run Yaook on your own k8s cluster, the Quickstart guide and corresponding development setup guide will show you how to do that.