uncloud/uncloud
2020-03-09 12:25:12 +01:00
..
opennebula [opennebula] Fix fields/serializers 2020-03-05 23:18:07 +01:00
uncloud Move STRIPE_PUBLIC_KEY to secrets (i.e. local configuration) 2020-03-09 12:25:11 +01:00
uncloud_auth recreate all migrations 2020-03-03 17:50:52 +01:00
uncloud_net recreate all migrations 2020-03-03 17:50:52 +01:00
uncloud_pay Fix various billing issues discovered by testing 2020-03-09 12:25:12 +01:00
uncloud_storage [storage] move choices to uncloud_storage 2020-03-05 14:21:10 +01:00
uncloud_vm Initial yearly billing implementation 2020-03-09 12:25:11 +01:00
ungleich_service Add missing migration and dependency to run tests 2020-03-09 12:25:11 +01:00
.gitignore Introduced local settings in meow-pay/uncloud django app 2020-02-25 13:09:54 +05:00
manage.py move uncloud a layer up 2020-02-23 14:07:37 +01:00
README-object-relations.md Document relations for Orders and Managed Services 2020-03-03 13:14:51 +01:00
README.md ++cleanup 2020-03-02 07:17:04 +01:00
requirements.txt Add minimal CI running django tests 2020-03-09 12:25:12 +01: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)