Uniform access to data sources and services
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Benjamin Dauvergne 62ed945d62
gitea/passerelle/pipeline/head This commit looks good Details
soap: do not check wsdl url if certificates are changed (#77923)
The request wrapper needs a filepath to the certificates and Django
cannot provide one during the clean method.
3 days ago
debian sne: start connector (#77933) 5 days ago
functests toulouse-maelis: [functests] adapt tests to last build (#77362) 3 weeks ago
passerelle soap: do not check wsdl url if certificates are changed (#77923) 3 days ago
tests soap: do not check wsdl url if certificates are changed (#77923) 3 days ago
.coveragerc jenkins: show execution context in coverage reports (#60446) 1 year ago
.git-blame-ignore-revs misc: add djhtml files/notes (#69422) 8 months ago
.gitignore misc: switch style file to scss (#63229) 1 year ago
.pre-commit-config.yaml ci: upgrade pre-commit-debian (#77727) 1 week ago
Jenkinsfile tests: use a random number in database name and tox environment path (#74787) 3 months ago
LICENSE this will be AGPL 10 years ago
MANIFEST.in MANIFEST.in: add toulouse-wcs wcs template (#53860) 2 years ago
README misc: change django-upgrade target version to 3.2 (#75442) 2 months ago
config_example.py trivial: apply black (#49820) 2 years ago
get_wcs.sh ci: update wcs git URI for gitea (#76647) 2 months ago
jenkins.sh run pylint inside tox 7 years ago
manage.py settings: changed to single file, with a execfile() tacked at the end (#6465) 8 years ago
pylint.rc misc: fix new pylint 2.16 warnings (#74060) 4 months ago
pylint.sh ci: speed up CI using multiple processes with pylint and pytest (#67080) 11 months ago
requirements.txt trivial: remove leftover SOAPpy references (#43756) 3 years ago
setup.py sne: start connector (#77933) 5 days ago
tox.ini tox: add emoji (new wcs dependency) (#76642) 2 months ago


Passerelle provides an uniform access to multiple data sources and services.


Setting up an environment (virtualenv)

The first thing you'll need is the Python virtualenv package. You probably
already have this, but if not, you can install it with:

    $ easy_install -UZ virtualenv

Once that's done, choose a location for the environment, and create it with the
virtualenv command. For our guide, we're going to choose "venv" in the current

    $ virtualenv venv
    $ source venv/bin/activate

From Passerelle source directory install required Python packages:

    $ pip install -e .

Initializing the database (quickstart: sqlite3)

To create the database, execute the following line:

    $ python manage.py migrate

The new database is created inside `passerelle.sqlite3` in the current

Create a first user with administrative rights:

    $ python manage.py createsuperuser


The command line for starting is:

    $ python manage.py runserver

Passerelle is available on


Default settings are loaded from settings.py, they can be overloaded by a
local_settings.py file set in the same directory, or by a file referenced
in the PASSERELLE_SETTINGS_FILE environment variable.

Code Style

black is used to format the code, using thoses parameters:

    black --target-version py37 --skip-string-normalization --line-length 110

isort is used to format the imports, using those parameters:

    isort --profile black --line-length 110

pyupgrade is used to automatically upgrade syntax, using those parameters:

    pyupgrade --keep-percent-format --py37-plus

djhtml is used to automatically indent html files, using those parameters:

    djhtml --tabwidth 2

django-upgrade is used to automatically upgrade Django syntax, using those parameters:

    django-upgrade --target-version 3.2

There is .pre-commit-config.yaml to use pre-commit to automatically run these tools
before commits. (execute `pre-commit install` to install the git hook.)

The .git-blame-ignore-revs file could be used to hide the related
changes into the sources:

    git blame --ignore-revs-file .git-blame-ignore-revs


Unit tests are written using py.test, and its pytest-django support library and
run using tox.


To run a specific test under a specific environment.

  tox -e py3-django111 -- -vv tests/test_csv_datasource.py


Copyright (C) 2013-2014 Entr'ouvert <info@entrouvert.com>

This program is free software: you can redistribute it and/or modify it under
the terms of the GNU Affero General Public License as published by the Free
Software Foundation, either version 3 of the License, or (at your option) any
later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.  See the GNU Affero General Public License for more

You should have received a copy of the GNU Affero General Public License along
with this program (LICENSE file). If not, see <http://www.gnu.org/licenses/>.


django-jsonresponse (https://github.com/jjay/django-jsonresponse)
 # Files: passerelle/utils/jsonresponse.py
 # Copyright (c) 2012 Yasha Borevich <j.borevich@gmail.com>
 # Licensed under the BSD license