uncloud-mravi/uncloud_django_based/uncloud/doc
2020-04-12 22:55:22 +02:00
..
README-how-to-configure-remote-uncloud-clients.org ++notes 2020-04-09 12:09:38 +02:00
README-object-relations.md [doc] move readme to subdir 2020-04-06 22:08:29 +02:00
README-postgresql.org Add readme for postgresql support 2020-04-08 12:03:18 +02:00
README-products.md [vpn] update to show reservations, create wireguard config 2020-04-12 22:55:22 +02:00
README-vpn.org [vpn] make a vpn creat-able! 2020-04-12 15:40:39 +02:00
README.md [doc] move readme to subdir 2020-04-06 22:08:29 +02:00

Install

OS package requirements

Alpine:

apk add openldap-dev postgresql-dev

Debian/Devuan:

apt install postgresql-server-dev-all

Python requirements

If you prefer using a venv, use:

python -m venv venv
. ./venv/bin/activate

Then install the requirements

pip install -r requirements.txt

Database requirements

Due to the use of the JSONField, postgresql is required.

First create a role to be used:

postgres=# create role nico login;

Then create the database owner by the new role:

postgres=# create database uncloud owner nico;

Installing the postgresql service is os dependent, but some hints:

  • Alpine: apk add postgresql-server && rc-update add postgresql && rc-service postgresql start
  • Debian/Devuan: apt install postgresql

After postresql is started, apply the migrations:

python manage.py migrate

Secrets

cp uncloud/secrets_sample.py to uncloud/secrets.py and replace the sample values with real values.

Flows / Orders

Creating a VMHost

Creating a VM

  • Create a VMHost
  • Create a VM on a VMHost

Creating a VM Snapshot

Working Beta APIs

These APIs can be used for internal testing.

URL Overview

http -a nicoschottelius:$(pass ungleich.ch/nico.schottelius@ungleich.ch) http://localhost:8000

Snapshotting

http -a nicoschottelius:$(pass ungleich.ch/nico.schottelius@ungleich.ch) http://localhost:8000/vm/snapshot/  vm_uuid=$(uuidgen)