Geoplateforme / sdk-entrepot

SDK Python pour utiliser l'API Entrepôt de la Géoplateforme.
GNU General Public License v3.0
1 stars 0 forks source link

Upload impossible sur l'environnement de qualification #54

Closed jmkerloch closed 6 months ago

jmkerloch commented 8 months ago

Depuis la dernière mise à jour de l'environnement de qualification il n'est plus possible de créer d'upload:

ERREUR - La requête formulée par le programme est incorrecte (Le query param path est absent ou mal formaté). Contactez le support. Traceback (most recent call last): File "/home/jmkerloch/dev/ign/gpf-iti-scripts/.venv/lib/python3.10/site-packages/sdk_entrepot_gpf/io/ApiRequester.py", line 134, in url_request return self.__url_request(url, method, params=params, data=data, files=files, header=header) File "/home/jmkerloch/dev/ign/gpf-iti-scripts/.venv/lib/python3.10/site-packages/sdk_entrepot_gpf/io/ApiRequester.py", line 248, in __url_request raise BadRequestError(url, method, params, data, r.text) sdk_entrepot_gpf.io.Errors.BadRequestError: Erreur au requêtage de la Géoplateforme. Explication : Erreur API : mauvaise requête (contactez le support). Détails :

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/home/jmkerloch/dev/ign/gpf-iti-scripts/gpf_iti_scripts/tests_gpf_sdk.py", line 536, in upload = upload_with_api( File "/home/jmkerloch/dev/ign/gpf-iti-scripts/gpf_iti_scripts/tests_gpf_sdk.py", line 115, in upload_with_api upload.api_push_data_file(local_path, api_path) File "/home/jmkerloch/dev/ign/gpf-iti-scripts/.venv/lib/python3.10/site-packages/sdk_entrepot_gpf/store/Upload.py", line 47, in api_push_data_file ApiRequester().route_upload_file( File "/home/jmkerloch/dev/ign/gpf-iti-scripts/.venv/lib/python3.10/site-packages/sdk_entrepot_gpf/io/ApiRequester.py", line 285, in route_upload_file return self.route_request(route_name, route_params=route_params, method=method, params=params, data=data, files=o_dict_files) File "/home/jmkerloch/dev/ign/gpf-iti-scripts/.venv/lib/python3.10/site-packages/sdk_entrepot_gpf/io/ApiRequester.py", line 103, in route_request return self.url_request(s_url, method, params, data, files, d_header) File "/home/jmkerloch/dev/ign/gpf-iti-scripts/.venv/lib/python3.10/site-packages/sdk_entrepot_gpf/io/ApiRequester.py", line 155, in url_request raise GpfSdkError(s_message) from e_error sdk_entrepot_gpf.Errors.GpfSdkError: La requête formulée par le programme est incorrecte (Le query param path est absent ou mal formaté). Contactez le support.

Il est nécessaire de changer la méthode pour l'appel à la route d'ajout de données sur un upload. L'indication du chemin du fichier livré n'est plus dans le paramètre de la route mais dans l'url directement.

Voici un exemple de la route attendue maintenant : {{baseUrl}}/datastores/:datastore/uploads/:upload/data?path=/bdtopo/BDTOPO_TRANSPORT_PARIS.gpkg

LudivineSchlegel commented 8 months ago

Bonjour, On vient de voir le problème ce matin de notre côté. Le problème ne concerne que la qualification, la modification n'ai pas présente en production. Je suis entrain de faire la correction.

La question est posé coté développement géoplatforme pour savoir si c'est une réel évolution ou une erreur.

LudivineSchlegel commented 8 months ago

La modification est faite sur la branche "debug_upload" La modification pour la GPF qualification n'est pas compatible avec la GPF production donc on ne peut pas publier une nouvelle version avec les modifications.

En attendant la mise en prod de la modification côté GPF, il faut utiliser le dépôt en locale, la documentation est disponible ici : docs/development.md en utilisant la branche "debug_upload"