No description
Find a file
2021-12-11 10:06:59 +01:00
archive Merge branch 'master' of code.ungleich.ch:uncloud/uncloud 2020-05-17 22:38:49 +02:00
bin Add script for fixing ldap / newer openssl versions 2021-12-11 10:05:21 +01:00
doc ++bridge update 2021-01-17 15:53:30 +01:00
matrixhosting NextCloud Integration 2021-09-10 09:58:42 +02:00
nextcloud NextCloud Integration 2021-09-10 09:58:42 +02:00
opennebula [refactor] cleaning up uncloud_net for Wireguardvpn 2020-12-13 11:38:41 +01:00
resources Speed-up CI with pre-built image, add resources directory 2020-05-08 12:15:40 +02:00
uncloud NextCloud Integration 2021-09-10 09:58:42 +02:00
uncloud_auth NextCloud Integration 2021-09-10 09:58:42 +02:00
uncloud_net - Added PricingPlan Model 2021-07-19 16:36:10 +02:00
uncloud_pay NextCloud Integration 2021-09-10 09:58:42 +02:00
uncloud_service Fix login -> move to bootstrap5 2021-05-25 20:22:18 +02:00
uncloud_storage Move django-based uncloud to top-level 2020-05-07 12:12:35 +02:00
uncloud_v3 uncloud: prepare update to Django 4 2021-12-11 10:06:59 +01:00
uncloud_vm [refactor] cleaning up uncloud_net for Wireguardvpn 2020-12-13 11:38:41 +01:00
.gitignore Add the invoice template 2021-08-04 12:03:55 +02:00
.gitlab-ci.yml Speed-up CI with pre-built image, add resources directory 2020-05-08 12:15:40 +02:00
build.sh Add build script 2021-12-05 11:20:01 +01:00
Dockerfile Fix Debian Dockerfile: required libsasl2-dev 2021-12-05 11:13:21 +01:00
Dockerfile.alpine-linux Add 2nd dockerfile for debian based systems 2021-12-05 11:11:34 +01:00
LICENSE LICENSE added + fixed some imports 2019-12-03 16:49:10 +05:00
manage.py Move django-based uncloud to top-level 2020-05-07 12:12:35 +02:00
models.dot Move django-based uncloud to top-level 2020-05-07 12:12:35 +02:00
models.png Move django-based uncloud to top-level 2020-05-07 12:12:35 +02:00
README.md - Added PricingPlan Model 2021-07-19 16:36:10 +02:00
requirements.txt Update requirements.txt for newer python versions 2021-12-05 10:09:30 +01:00

Uncloud

Cloud management platform, the ungleich way.

pipeline status coverage report

Useful commands

  • ./manage.py import-vat-rates path/to/csv
  • ./manage.py createsuperuser

Development setup

Install system dependencies:

  • On Fedora, you will need the following packages: python3-virtualenv python3-devel openldap-devel gcc chromium
  • sudo apt-get install libpq-dev python-dev libxml2-dev libxslt1-dev libldap2-dev libsasl2-dev libffi-dev

NOTE: you will need to configure a LDAP server and credentials for authentication. See uncloud/settings.py.

# Initialize virtualenv.
» virtualenv .venv
Using base prefix '/usr'
New python executable in /home/fnux/Workspace/ungleich/uncloud/uncloud/.venv/bin/python3
Also creating executable in /home/fnux/Workspace/ungleich/uncloud/uncloud/.venv/bin/python
Installing setuptools, pip, wheel...
done.

# Enter virtualenv.
» source .venv/bin/activate

# Install dependencies.
» pip install -r requirements.txt
[...]

# Run migrations.
» ./manage.py migrate
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, opennebula, sessions, uncloud_auth, uncloud_net, uncloud_pay, uncloud_service, uncloud_vm
Running migrations:
  [...]

# Run webserver.
» ./manage.py runserver
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
May 07, 2020 - 10:17:08
Django version 3.0.6, using settings 'uncloud.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

Run Background Job Queue

We use Django Q to handle the asynchronous code and Background Cron jobs To start the workers make sure first that Redis or the Django Q broker is working and you can edit it's settings in the settings file.

./manage.py qcluster

Note on PGSQL

If you want to use Postgres:

  • Install on configure PGSQL on your base system.
  • OR use a container! podman run --rm -p 5432:5432 -e POSTGRES_HOST_AUTH_METHOD=trust -it postgres:latest