You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Nico Schottelius 95dfe62858 upgrade to python 3.11.1 2 months ago
archive Merge branch 'master' of code.ungleich.ch:uncloud/uncloud 3 years ago
bin Add script for fixing ldap / newer openssl versions 1 year ago
doc ++bridge update 2 years ago
k8s k8s cleanup 1 year ago
matrixhosting NextCloud Integration 2 years ago
nextcloud Cleanup: get uncloud running again 1 year ago
opennebula [refactor] cleaning up uncloud_net for Wireguardvpn 2 years ago
resources Speed-up CI with pre-built image, add resources directory 3 years ago
uncloud ++ stuff 1 year ago
uncloud_auth cleanup and get login working again 1 year ago
uncloud_net - Added PricingPlan Model 2 years ago
uncloud_pay ++ stuff 1 year ago
uncloud_service Fix login -> move to bootstrap5 2 years ago
uncloud_storage Move django-based uncloud to top-level 3 years ago
uncloud_v3 upgrade to python 3.11.1 2 months ago
uncloud_v4 v3: link product to resource 1 year ago
uncloud_vm [refactor] cleaning up uncloud_net for Wireguardvpn 2 years ago
.dockerignore add .dockerignore 1 year ago
.gitignore Add the invoice template 2 years ago
.gitlab-ci.yml Speed-up CI with pre-built image, add resources directory 3 years ago
Dockerfile add .dockerignore 1 year ago
Dockerfile.alpine-linux Add nginx to our image 1 year ago
Dockerfile.debian add .dockerignore 1 year ago
LICENSE LICENSE added + fixed some imports 3 years ago
README.md Update system dependency on libldap24 for archlinux 1 year ago
build.sh add .dockerignore 1 year ago
manage.py Move django-based uncloud to top-level 3 years ago
requirements.txt cleanup and get login working again 1 year ago

README.md

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
  • On Archlinux, libldap24 is needed

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