Release 0.12.0

- Update to Python 3 and Django 2.2
 - improve development setup and documentation
 - integrate previous bugfix releases
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCgAyFiEEKHuXKkUYdvdO9493DXkdyNc3wdkFAl6QaMwUHGphbkBkaXR0
 YmVybmVyLmluZm8ACgkQDXkdyNc3wdnCUAf9H5wDLxRuPuow0rkli5XSNl/RWBMh
 tz10A7mO8QWJNcbGVSAw9Jol99htLTJb0MoyyonQKONfxlD4ro/0aDFsVJFRaH7M
 D9EQlmQuhm/3hvcDbO9+maEaZvPWYFYHuQQJpwDmAjuMnsXN7SxPEqq4Wu8OVB6G
 ebxuqR58MxJwmDEkZyA1D339gCbIo3PWWNeVInC8Gv9/yvhNx5KX0LrR8kRCpsWv
 N6YJ6DtMYo7UtqmdJmVa1xTlX6rG7znAIlC4gSXoRBspxeH3upd66KV1YkWqM+qd
 Iuum+4uRZfjkU2DRLNprxvHYp78sRQXBps4Kelo9LU/wbwUlHjnr6qS0Pg==
 =uD2Q
 -----END PGP SIGNATURE-----

Merge tag '0.12.0'

Release 0.12.0

- Update to Python 3 and Django 2.2
- improve development setup and documentation
- integrate previous bugfix releases
This commit is contained in:
Jan Dittberner 2020-04-10 14:38:40 +02:00
commit b12a891fd7
4 changed files with 35 additions and 57 deletions

View file

@ -1,19 +1,33 @@
Changelog
=========
* :release:`0.12.0 <2020-04-10>`
* :support:`-` add architecture diagramm for documentation
* :support:`-` drop environment specific settings
* :support:`-` update to Python 3
* :support:`-` use Pipenv for dependency management
* :support:`-` switch result backend to Redis
* :support:`-` use separate test vhost for celery queues
* :support:`-` switch licensing to AGPLv3+
* :support:`-` add a Vagrant setup to ease development
* :support:`-` add example provisioning defined as saltstack states
* :support:`-` add Docker setup for local development
* :feature:`-` let all celery tasks run asynchronously and move task processing
to signal handlers
* :feature:`-` add unit tests for all the code
* :feature:`-` add proper configuration for coverage, flake8 and pep8
* :feature:`-` update to Django 1.9.1
* :feature:`-` update to Django 2.2.12
* :support:`-` use gvacommon from separate repository
* :feature:`17` add DNS zone management
* :support:`-` update documentation
* :release:`0.11.6 <2020-02-14>`
* :support:`-` Update dependencies to versions that work with Debian Stretch
* :release:`0.11.5 <2018-12-26>`
* :support:`-` Remove Xing support from settings and templates
* :release:`0.11.4 <2016-12-31>`
* :bug:`-` fix wrong tag in password reset done template
* :release:`0.11.3 <2015-02-21>`
* :bug:`-` fix handling of OpenSSH formatted keys with whitespace in comments
* :bug:`-` the ssh key list does not show SSH keys of other users anymore

View file

@ -22,6 +22,7 @@ import django
# documentation root, use os.path.abspath to make it absolute, like shown here.
sys.path.insert(0, os.path.abspath(os.path.join('..', 'gnuviechadmin')))
os.environ['DJANGO_SETTINGS_MODULE'] = 'gnuviechadmin.settings'
os.environ['GVA_SITE_ADMINMAIL'] = 'admin@gva.example.org'
django.setup()
@ -38,8 +39,8 @@ extensions = [
'sphinxcontrib.blockdiag']
# configuration for releases extension
releases_issue_uri = 'https://dev.gnuviech-server.de/gva/ticket/%s'
releases_release_uri = 'https://dev.gnuviech-server.de/gva/browser/?rev=%s'
releases_issue_uri = 'https://git.dittberner.info/gnuviech/gva/issues/%s'
releases_release_uri = 'https://git.dittberner.info/gnuviech/gva/src/tag/%s'
# configuration for blockdiag extension
blockdiag_fontpath = '/usr/share/fonts/truetype/dejavu/'
@ -58,7 +59,7 @@ master_doc = 'index'
# General information about the project.
project = u'gnuviechadmin'
copyright = u'2014, 2015, 2016 Jan Dittberner'
copyright = u'2014-2020, Jan Dittberner'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the

View file

@ -1,59 +1,22 @@
Installation
============
.. index:: installation
You have several options in setting up your working environment. We recommend
using virtualenv to separate the dependencies of your project from your
system's python environment. If on Linux or Mac OS X, you can also use
virtualenvwrapper to help manage multiple virtualenvs across different
projects.
=======
Install
=======
Virtualenv Only
---------------
Working Environment
===================
First, make sure you are using virtualenv (http://www.virtualenv.org). Once
that's installed, create your virtualenv::
To get a running work environment use `pipenv`_.
$ virtualenv --distribute gnuviechadmin
.. _pipenv: https://pipenv.kennethreitz.org/en/latest/
You will also need to ensure that the virtualenv has the project directory
added to the path. Adding the project directory will allow `django-admin.py` to
be able to change settings using the `--settings` flag.
To get started install `pip` and `pipenv` and use `pipenv install --dev`:
Virtualenv with virtualenvwrapper
------------------------------------
.. code-block:: sh
In Linux and Mac OSX, you can install virtualenvwrapper
(http://virtualenvwrapper.readthedocs.org/en/latest/), which will take care of
managing your virtual environments and adding the project path to the
`site-directory` for you::
$ apt install python3-pip
$ python3 -m pip install --user -U pipenv
$ pipenv install --dev
$ mkdir gnuviechadmin
$ mkvirtualenv -a gnuviechadmin gnuviechadmin-dev
$ cd gnuviechadmin && add2virtualenv `pwd`
Installation of Dependencies
=============================
Depending on where you are installing dependencies:
In development::
$ pip install -r requirements/local.txt
For production::
$ pip install -r requirements.txt
PowerDNS setup
==============
The models in :py:mod:`domains.models` are meant to be used together with a
PowerDNS setup with the generic PostgreSQL backend
(https://doc.powerdns.com/md/authoritative/backend-generic-mypgsql/). The
database schema differs a bit from the original schema to fit the Django model
conventions. To make PowerDNS work you have to redefine the SQL statements by
copying the following content to
:file:`/etc/powerdns/pdns.d/pdns.local.gva_queries.conf`.
.. literalinclude:: pdns.local.gva_queries.conf
:language: properties

View file

@ -1,4 +1,4 @@
# import celery_app to initialize it
from gnuviechadmin.celery import app as celery_app # NOQA
__version__ = '0.12.0-alpha'
__version__ = '0.12.0'