Skip to content
Hart Simha edited this page Sep 4, 2020 · 49 revisions

Welcome to the wiki!

catapult manages the deployment lifecycle of CAP in various Kubernetes backends.

Description

Catapult is a CI implementation for KubeCF, SCF & Stratos, designed from the ground-up to work locally. This allows iterating and using it for manual tests and development of the product, in addition to running it in your favourite CI scheduler (Concourse, Gitlab…).

Catapult supports several k8s backends: can create CaaSP4, GKE, EKS clusters on its own, and you can bring your own cluster with the "imported" backend.

It is implemented as a little lifecycle manager (a finite state machine), written with Makefiles and Bash scripts.

The deployments achieved with Catapult are not production ready; don't expect them to be in the future either. They are for developing and testing.

Given that it has defined states and is non-interactive, it's well suited in a CI.

Cookbook

Advanced topics!

Deployment setups

Backends

The default backend is kind. For all backends, one can do:

$> BACKEND=<backend name> make k8s # creates from scratch
$> BACKEND=<backend name> make kubeconfig # imports kubeconfig
$> BACKEND=<backend name> make all # creates cluster and deploys scf
$> BACKEND=<backend name> make clean

For specifics, see:

Clone this wiki locally