ironik

PyPI Python Version Read the documentation at https://ironik.readthedocs.io/ pre-commit Black

Warning

This tool is still in early development and only the core features are available.

Features

  • Utilize OpenStack and Rancher APIs to automatically deploy Kubernetes cluster

  • Customize the configuration using templates

  • Install new Kubernetes versions including deploying the external cloud controller manager for OpenStack

Installation

You can install ironik via pip from PyPI:

$ pip install ironik

Alternatively, ironik can also be used as a container to avoid installing it:

$ docker run --rm -ti -v $(pwd):/app docker.gitlab.gwdg.de/jonathan.decker1/ironik/cli:latest ironik --help

This can be abbreviated using an alias:

$ alias dironik='docker run --rm -ti -v $(pwd):/app docker.gitlab.gwdg.de/jonathan.decker1/ironik/cli:latest ironik'
$ dironik --help

Usage

Please see the Usage Instructions for details.

Kubernetes can also be deployed manually on OpenStack and Rancher. See the Manual Deployment Instructions for a full guide.

TODOs

  • Update Code documentation to use Google code doc style

  • Improve print messages during execution

  • Implement a template validator

  • Implement cluster validation

  • Set up test suite

  • Implement automatic config fetching

  • Add functionality for undoing deployments and other helpful commands

Contributing

Contributions are very welcome. To learn more, see the Contributor Guide.

Setup Development Environment

We tested the developing environment with Ubuntu 22.04.

  1. Fork project

  2. Clone forked project on your working machine

  3. Install dependencies (needed to build wheel of netifaces in Step 4.)

sudo apt-get install build-essential libssl-dev libffi-dev python3-dev
  1. Install python packages

poetry install

Credits

This package was created with cookietemple using Cookiecutter based on Hypermodern_Python_Cookiecutter.