Search and consult CADA advices
Project description
CADA
A simplistic interface to search and consult CADA advices.
This is the engine behind https://cada.data.gouv.fr.
Compatibility
CADA has been tested on Python 3.7, MongoDB 4.1 and ElasticSearch 7.2.
The ElasticSearch ICU Analysis plugin is required.
You can install it with:
elasticsearch-plugin install analysis-icu
Installation
You can install Cada with pip:
$ pip install cada
You need to create the cada working directory, denoted by $HOME
in this documentation:
$ mkdir -p $HOME && cd $HOME
$ vim cada.cfg # See configuration
$ wget https://cada.data.gouv.fr/export -O data.csv
$ cada load data.csv # Load initial data
$ cada static # Optional: collect static assets for proper caching
$ cada runserver
local development environment
Please make sure you are in a clean virtualenv.
$ git clone https://github.com/etalab/cada
$ cd cada
$ docker-compose up -d
$ pip install -e .
$ wget https://cada.data.gouv.fr/export -O data.csv
$ cada load data.csv
$ cada reindex
$ cada runserver
Configuration
All configuration is done through the cada.cfg
file in $HOME
.
It's basically a Python file with constants defined in it:
SERVER_NAME
: the public server name. Mainly used in emails.SECRET_KEY
: the common crypto hash. e.g. sessions.openssl rand -hex 24
should be a good start.ELASTICSEARCH_URL
: the ElasticSearch server URL inhost:port
format. Default tolocalhost:9200
if not setMONGODB_SETTINGS
: a dictionary to configure MongoDB. Default to{'DB': 'cada'}
. See the official flask-mongoengine documentation for more details.
Mails
Mail server configuration is done through the following variables:
MAIL_SERVER
: SMTP server hostname. Default tolocalhost
.MAIL_PORT
: SMTP server port. Default to25
.MAIL_USE_TLS
: activate TLS. Default toFalse
.MAIL_USE_SSL
: activate SSL. Default toFalse
.MAIL_USERNAME
: optional SMTP server username.MAIL_PASSWORD
: optional SMTP server password.MAIL_DEFAULT_SENDER
: Sender email used for mailings. Default tocada@localhost
.ANON_ALERT_MAIL
: destination mail for anonymisation alerts. Default tocada.alert@localhost
.
See the official Flask-Mail documentation for more details.
Sentry
There is an optional support for Sentry. You need to install the required dependencies:
$ pip install raven[flask]
# Or to install it with cada
$ pip install cada[sentry]
You need to add your Sentry DSN to the configuration
SENTRY_DSN = 'https://xxxxx:xxxxxx@sentry.mydomain.com/id'
Piwik
There is an optional Piwik support. You simply need to add your Piwik server URL and your Piwik project ID to the configuration:
PIWIK_URL = 'piwik.mydomain.com'
PIWIK_ID = X
Current (in progress)
- Nothing yet
1.0.0 (2019-07-19)
- Add a
burnthemall
command #25 - Use
tqdm
for major commands with loops #25 - Python 3 #28
- Elastic Search 7.2 #29
- Mongo 4.1 #29
- Improved pseudonymization #32
- Display sample of api calls #33
- Fix text query #33
0.2.1 (2019-07-15)
- Fix advice part roman numerals handling #13
- Colorize advices labels #14
- Fixes about page #11
- Fix the cli encoding handling as well as some formatting issues #18
- Footer fixes (svg logo, alignments, https links) #20
- Upgrade jQuery, Bootstrap and Flatly assets and fixes responsive layout #21
- Fix unicode issue #26
0.2.0 (2018-10-05)
- Upgrade stack to latest dependencies (Flask 1.0 with
flask.cli
, pytest...) #6 - Test and fix alert mails #7
- Added "about" page #9
- Handle type IV advices #10
0.1.0 (2014-04-14)
- Initial release
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 Distributions
Built Distribution
Hashes for cada-1.0.1.dev160-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b9f45982c9bb7ce565b8b218f07119860820f26372ce613c4dca8e5b9499e581 |
|
MD5 | 39be85eabae596b94e0fa281ff6cd183 |
|
BLAKE2b-256 | 44625cbe14c08945bcb0b889d7a999ff4c8b1ed7cd41e2cfa70c9cf78c4a331c |