Simple website for Cross triangulaire registration.
Project description
=======
crossix
=======
crossix is a private Django project to handle registration to www.crosstriangulaire.com.
Installation
============
You may install this software from your distribution packages, or through pip:
.. code-block:: sh
$ pip install crossix
Once installed, you must configure it.
The minimal set of settings is the ``[db]`` section of the ``/etc/crossix/config.ini`` file (see below for details).
Once this is configured, you must prepare the database:
.. code-block:: sh
$ crossixctl migrate
This will create the database; the last step is to point your WSGI server to ``crossix.wsgi``.
Configuration
=============
Crossix will read all configuration files matching ``/etc/crossix/*.ini``.
Those are ini-style files, defining the following parameters:
Application (``[app]``)
-----------------------
General behavior of the application.
Options:
``mode``
``str``, the application mode.
Use ``dev`` for local development and ``prod`` otherwise.
``debug``
``bool``, whether to enable debug.
Valid values: ``on``, ``off``
``secret_key``
``str``, **REQUIRED** in ``prod`` mode.
A secret key for Django security hooks
Site (``[site]``)
-----------------
Hosting and URLs.
Options:
``name``
``str``, the name of your site (``crossix``, ``mypaster``, ...).
``base_url``
``str``, where your site is hosted.
A trailing slash is **required**.
``assets_url``
``str``, the URL where assets (CSS, JS, ...) are served.
May be a relative URL.
``admin_mail``
``str``, the email where the admin should be notified.
``allowed_hosts``
``str list``, comma-separated list of valid ``Host:`` HTTP headers.
See Django docs for details.
Database (``[db]``)
-------------------
Required; these define where snippets will be stored.
Valid options are:
``engine``
``str``, the engine to choose.
Must be one of ``sqlite``, ``mysql``, ``postgresql``; default is ``sqlite``.
``name``
``str``, the name of the database, or its path for sqlite.
Defaults to ``/var/lib/crossix/db.sqlite``.
``host``
``str``, the host of the database server.
``port``
``int``, the port of the database server.
``user``
``str``, the login to use to connect to the database server.
``password``
``str``, the password for the database
Examples:
.. code-block:: ini
; A Postgresql configuration; uses default psql port.
[db]
engine = postgresql
name = crossix
host = psql42.local
.. code-block:: ini
; A sample sqlite configuration.
[db]
engine = sqlite
name = /data/replicated/crossix/db.sqlite
Uploads (``[uploads]``)
-----------------------
Options related to private file uploads.
``dir``
``path``, storage folder for uploads.
Must be writable by the WSGI process.
Example: ``/var/www/crossix/uploads``
``serve``
``str``, the file serving mode.
``crossix`` relies on `django-sendfile <https://github.com/johnsensible/django-sendfile>`_
to enhance performance and protection.
Valid options: ``simple``, ``nginx``, ``xsendfile``, ``mod_wsgi``.
``internal_url``
``str``, the internal URL used by django-sendfile to serve the files.
crossix
=======
crossix is a private Django project to handle registration to www.crosstriangulaire.com.
Installation
============
You may install this software from your distribution packages, or through pip:
.. code-block:: sh
$ pip install crossix
Once installed, you must configure it.
The minimal set of settings is the ``[db]`` section of the ``/etc/crossix/config.ini`` file (see below for details).
Once this is configured, you must prepare the database:
.. code-block:: sh
$ crossixctl migrate
This will create the database; the last step is to point your WSGI server to ``crossix.wsgi``.
Configuration
=============
Crossix will read all configuration files matching ``/etc/crossix/*.ini``.
Those are ini-style files, defining the following parameters:
Application (``[app]``)
-----------------------
General behavior of the application.
Options:
``mode``
``str``, the application mode.
Use ``dev`` for local development and ``prod`` otherwise.
``debug``
``bool``, whether to enable debug.
Valid values: ``on``, ``off``
``secret_key``
``str``, **REQUIRED** in ``prod`` mode.
A secret key for Django security hooks
Site (``[site]``)
-----------------
Hosting and URLs.
Options:
``name``
``str``, the name of your site (``crossix``, ``mypaster``, ...).
``base_url``
``str``, where your site is hosted.
A trailing slash is **required**.
``assets_url``
``str``, the URL where assets (CSS, JS, ...) are served.
May be a relative URL.
``admin_mail``
``str``, the email where the admin should be notified.
``allowed_hosts``
``str list``, comma-separated list of valid ``Host:`` HTTP headers.
See Django docs for details.
Database (``[db]``)
-------------------
Required; these define where snippets will be stored.
Valid options are:
``engine``
``str``, the engine to choose.
Must be one of ``sqlite``, ``mysql``, ``postgresql``; default is ``sqlite``.
``name``
``str``, the name of the database, or its path for sqlite.
Defaults to ``/var/lib/crossix/db.sqlite``.
``host``
``str``, the host of the database server.
``port``
``int``, the port of the database server.
``user``
``str``, the login to use to connect to the database server.
``password``
``str``, the password for the database
Examples:
.. code-block:: ini
; A Postgresql configuration; uses default psql port.
[db]
engine = postgresql
name = crossix
host = psql42.local
.. code-block:: ini
; A sample sqlite configuration.
[db]
engine = sqlite
name = /data/replicated/crossix/db.sqlite
Uploads (``[uploads]``)
-----------------------
Options related to private file uploads.
``dir``
``path``, storage folder for uploads.
Must be writable by the WSGI process.
Example: ``/var/www/crossix/uploads``
``serve``
``str``, the file serving mode.
``crossix`` relies on `django-sendfile <https://github.com/johnsensible/django-sendfile>`_
to enhance performance and protection.
Valid options: ``simple``, ``nginx``, ``xsendfile``, ``mod_wsgi``.
``internal_url``
``str``, the internal URL used by django-sendfile to serve the files.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
crossix-2017.1.0.tar.gz
(761.8 kB
view details)
Built Distribution
File details
Details for the file crossix-2017.1.0.tar.gz
.
File metadata
- Download URL: crossix-2017.1.0.tar.gz
- Upload date:
- Size: 761.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d71b646c52d15ce01e4fc80c32b80f9be3bae9a7298700c512a1f34475fccb15 |
|
MD5 | 173ac73be0ed375d682bd97cefc2a87c |
|
BLAKE2b-256 | 8f6688cf5003919b9b6a22c3abadc14174ce772bb73035b84a0f0bff13b4c569 |
File details
Details for the file crossix-2017.1.0-py2.py3-none-any.whl
.
File metadata
- Download URL: crossix-2017.1.0-py2.py3-none-any.whl
- Upload date:
- Size: 837.1 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 68c1782cf39a47042fd8ff363d2c1e26dfd1c32ed3bf513e28a101126e3a5905 |
|
MD5 | 793bd4956418f2250c1e5646619e67ff |
|
BLAKE2b-256 | 0659decd1eba133b1fa3ca9ce446d29175bc68a74b807647c9a9716bff60d3df |