Configurer l’environnement de développement¶
Prérequis système¶
Python >= 3.10
Accès réseau sur :
l’instance GitLab : https://gitlab.gpf-tech.ign.fr
le dépôt officiel de paquets Python : https://pypi.org/
un jeton d’accès personnel (Personal Access Token (PAT)) avec le scope
read_api
ou a minimaread_registry
. Voir la page Authentification.
Cloner le dépôt¶
Exemple pour Oslandia avec l’utilisateur geojulien
:
git clone --config 'credential.helper=store' https://geojulien@gitlab.gpf-tech.ign.fr/geoplateforme/scripts-verification/check-md5.git
Derrière le proxy¶
L’Usine Logicielle étant en accès restreint derrière un filtre IP, les personnes ne disposant pas d’IP fixe passent par un proxy qui pointe sur un serveur de rebond dont l’IP fixe est autorisée.
Exemple avec un proxy de type socks :
git clone --config http.proxy='socks5://127.0.0.1:8645' --config 'credential.helper=store' https://geojulien@gitlab.gpf-tech.ign.fr/geoplateforme/scripts-verification/check-md5.git
Installation¶
Environnement virtuel¶
Il est recommandé de travailler dans un environnement virtuel afin de garantir la meilleure reproductibilité.
Exemple sur une distribution Linux de type Ubuntu LTS :
# créer l'environnement virtuel
python3 -m venv .venv
# activer l'environnement virtuel
source .venv/bin/activate
# mise à jour de pip et des packages de base dans l'environnement virtuel
python -m pip install -U pip setuptools wheel
Exemple sur Windows 10+, avec PowerShell (attention à adapter la politique d’exécution des scripts avant) :
# créer l'environnement virtuel
py -3 -m venv .venv
# activer l'environnement virtuel
.venv/Scripts/Activate
# mise à jour de pip et des packages de base dans l'environnement virtuel
python -m pip install -U pip setuptools wheel
Démarrage rapide¶
Exemple sur une distribution Linux de type Ubuntu LTS qui accède à l’Usine Logicielle sans proxy :
# installation des dépendances de base
python -m pip install -U -r requirements.txt
# installation du projet en mode développement
python -m pip install -e .
Derrière un proxy¶
Pour les proxy de type socks, installer préalablement PySocks dans le même environnement que le reste :
python -m pip install -U "PySocks<2"
Puis installer tour à tour les dépendances issues de <pypi.org> puis celles du registre de l’Usine Logicielle :
python -m pip install -U -r requirements/base-pypi.txt
python -m pip install -U -r requirements/base-gpf.txt --proxy socks5://localhost:8645 --index-url https://gitlab.gpf-tech.ign.fr/api/v4/groups/55/-/packages/pypi/simple