iparapheur-utils3.beta


Nameiparapheur-utils3.beta JSON
Version 0.0.1.post587157 PyPI version JSON
download
home_pagehttps://gitlab.libriciel.fr/i-parapheur/client-python
SummaryClient python pour i-Parapheur
upload_time2023-05-22 17:24:58
maintainer
docs_urlNone
authorLibriciel SCOP
requires_python
licenseAGPLv3
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            i-Parapheur Utils
=================

[![PyPi](https://img.shields.io/pypi/v/iparapheur-utils.svg)](https://pypi.org/project/iparapheur-utils)


# Introduction

C'est principalement une librairie écrite en Python permettant la communication avec le [i-Parapheur](https://www.libriciel.fr/iparapheur/) en version 4.2+, au travers de l'API REST ou via webservice SOAP.

Elle offre des commandes accessibles depuis un shell standard, pour faciliter certaines opérations d'exploitation.

# Installation

Sur une distribution Ubuntu 18.04 LTS :

* une instance i-Parapheur accessible en v4.4.0 ou plus
* un environnement Python fonctionnel !
* ajout de l'outil ` pip ` depuis un terminal BASH :

```bash
sudo bash
curl https://bootstrap.pypa.io/get-pip.py | python
```

* installation du paquet python `iparapheur-utils`, depuis un terminal BASH :

```bash
sudo pip install iparapheur-utils
```

## Problèmes connus et solutions

### python2 et python3 coexistent sur la machine

Lancer les commandes pour python2, spécifiquement (partant du principe que `python2` pointe sur l'exécutable python 2)

```bash
curl https://bootstrap.pypa.io/get-pip.py | python2
sudo python2 -m pip install iparapheur-utils
```

### Erreur urllib3 : "No module named ordered_dict"

Une dépendance de iparapheur-utils est installée dans une mauvaise version, non supportée (eg urllib3 v 1.24).
Il faut la désinstaller et la réinstaller dans la bonne version (v 1.23).

```bash
sudo pip uninstall urllib3
sudo pip install urllib3==1.23
```

## Cas d'environnement avec MitM

Certains environnements réseau bloquent l'accès à pypi.org, avec un message "SSL Error: Certificate_Verify_Failed".

> Could not fetch URL https://pypi.org/…/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host=’pypi.org’, port=443): Max retries exceeded with url: /…/ (Caused by SSLError(SSLCertVerificationError(1, ‘[ SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: …

Il est possible de passer outre, au prix d'une réduction de la confiance, avec l'argument `--trusted-host`

```bash
sudo pip install --trusted-host pypi.org  iparapheur-utils
```


## Support CentOS / RHEL :

* Version 6 : Cette version n'est plus supportée, en cause une version de python trop ancienne (2.6)
* Version 7 : Cette version requiert l'installation de paquets supplémentaires :  
  `yum install libffi-devel gcc openssl-devel`

# Usage

Ces commandes sont actuellement disponibles :

- [`ph-init`](#ph-init)
- [`ph-check`](#ph-check)
- [`ph-echo`](#ph-echo)
- [`ph-recupArchives`](#ph-recuparchives)
- [`ph-export`](#ph-export)
- [`ph-import`](#ph-import)
- [`ph-rename`](#ph-rename)
- [`ph-removeldap`](#ph-removeldap)
- [`ph-pushdoc`](#ph-pushdoc)
- [`ph-ipclean`](#ph-ipclean)
- [`ph-ldapsearch`](#ph-ldapsearch)
- [`ph-count_files`](#ph-count_files)
- [`ph-reset_admin_password`](#ph-reset_admin_password)
- [`ph-patch`](#ph-patch)
- [`ph-recupfull`](#ph-recupfull)
- [`ph-orphan`](#ph-orphan)

> Remarques : Elles sont conçues pour être exécutées en environnement bash standard: ligne de commande, ou script BASH.  
Aucune qualification à ce stade pour l'usage de ces commandes dans un interpréteur Python.

## `ph-init`

Cette commande permet la génération d'un fichier de configuration "par défaut", qu'il faut bien sûr adapter au serveur.

Exemple d'utilisation :
```
usage: ph-init [-h] [-p P] [-c {recuparchives,export,import}]

Génère un fichier de configuration par défaut dans le répertoire courant

Arguments:
  -h, --help            Affiche ce message et quitte
  -p P                  Chemin du fichier de configuration
  -c {recuparchives,export,import}
                        Commande pour laquelle générer le fichier de
                        configuration
```

Le lancement de la commande génère un fichier `iparapheur-utils.cfg`, lu par défaut lors de l'appel des autres fonctions

## `ph-check`

Lance le script de check d'installation. Pas de pré-requis particulier.

## `ph-echo`

Lance la fonction `echo` vers le i-Parapheur désigné dans le fichier de configuration.

Exemple d'utilisation :
```
ph-echo -h
---
usage: ph-echo [-h] [-s S] [-c C] [-u U] [-p P]

Lance un echo via webservice sur un iParapheur

Arguments:
  -h, --help  Affiche ce message et quitte
  -s S        URL du serveur iParapheur
  -c C        Fichier de configuration
  -u U        Utilisateur
  -p P        Mot de passe
```

## `ph-recupArchives`

Lance la fonction de récupération ou/et de purge des archives.
Il est vivement conseillé d'utiliser la commande `ph-init -c recuparchives` afin de générer un squelette de fichier de configuration complet.

Exemple d'utilisation :
```
ph-recupArchives -h
---
usage: ph-recupArchives [-h] [-s S] [-c C] [-u U] [-p P] [-f F] [-ps PS]
                        [-r {true,false}] [-i {true,false}] [-pu {true,false}]
                        [-d {true,false}] [-t T] [-st ST] [-w W]

Lance une récupération / purge des archives

Arguments:
  -h, --help        Affiche ce message et quitte
  -s S              URL du serveur iParapheur
  -c C              Fichier de configuration
  -u U              Utilisateur
  -p P              Mot de passe
  -f F              Répertoire de destination
  -ps PS            Taille des pages à récupérer
  -r {true,false}   Chemins réduis des téléchargements
  -i {true,false}   Ajout identifiant alfresco dans le chemin complet (true par defaut)
  -pu {true,false}  Active la purge les données
  -d {true,false}   Télécharge les données
  -t T              Filtre sur type
  -st ST            Filtre sur sous-type
  -w W              Délai de conservation des données
```

## `ph-export`

Lance la fonction d'exporation de la configuration du parapheur vers un dossier.
Il est vivement conseillé d'utiliser la commande `ph-init -c export` afin de générer un squelette de fichier de configuration complet.
La liste des éléments à exporter peut être modifiée dans ce fichier.

**ATTENTION** : Seule la **configuration** du parapheur est exportée. Comprendre qu'aucun dossier, archive, statistique ou historique n'est conservé.

Exemple d'utilisation :
```
usage: ph-export [-h] [-s S] [-c C] [-u U] [-p P] [-i I] [-dh DH] [-dp DP]
                 [-du DU] [-dpw DPW] [-dd DD] [-ou OU] [-og OG] [-ob OB] [-oc OC] [-ot OT] [-om OM] [-oq OQ] [-oa OA]

Exporte la configuration du parapheur ciblé vers un dossier

Arguments:
  -h, --help  Affiche ce message et quitte
  -s S        URL du serveur iParapheur
  -c C        Fichier de configuration
  -u U        Utilisateur administrateur
  -p P        Mot de passe
  -i I        Répertoire de destination
  -dh DH      IP du serveur mysql
  -dp DP      Port du serveur mysql
  -du DU      Utilisateur alfresco de mysql
  -dpw DPW    Mot de passe utilisateur alfresco de mysql
  -dd DD      Nom de la base mysql
  -ou {true,false}      Boolean importe les utilisateurs
  -og {true,false}      Boolean importe les groupes
  -ob {true,false}      Boolean importe les bureaux
  -oc {true,false}      Boolean importe les circuits
  -ot {true,false}      Boolean importe les types et sous-types
  -om {true,false}      Boolean importe les metadatas
  -oq {true,false}      Boolean importe les calques
  -oa {true,false}      Boolean importe les advanced

```

## `ph-import`

Lance la fonction d'importation de la configuration du parapheur à partir d'un dossier.
Il est vivement conseillé d'utiliser la commande `ph-init -c import` afin de générer un squelette de fichier de configuration complet.

**ATTENTION** : Seule la **configuration** du parapheur est importée. Comprendre qu'aucun dossier, archive, statistique ou historique n'est conservé.

Exemple d'utilisation :
```
usage: ph-import [-h] [-s S] [-c C] [-u U] [-p P] [-i I] [-dh DH] [-dp DP]
                 [-du DU] [-dpw DPW] [-dd DD]

Importe la configuration ciblée dans un parapheur vierge

Arguments:
  -h, --help  Affiche ce message et quitte
  -s S        URL du serveur iParapheur
  -c C        Fichier de configuration
  -u U        Utilisateur administrateur
  -p P        Mot de passe
  -i I        Répertoire à importer
  -dh DH      IP du serveur mysql
  -dp DP      Port du serveur mysql
  -du DU      Utilisateur alfresco de mysql
  -dpw DPW    Mot de passe utilisateur alfresco de mysql
  -dd DD      Nom de la base mysql
```

## `ph-rename`

Cette commande permet de changer l'URL d'accès au i-Parapheur

Exemple d'utilisation :
```
usage: ph-rename [-h] -n N

Change l'URL d'accès du i-Parapheur

Arguments:
  -h, --help  Affiche ce message et quitte
  -n N        Nouvelle URL du serveur iParapheur

```

Le lancement de la commande modifie l'URL d'accès au i-Parapheur mais ne change pas la configuration du certificat serveur.

Il est important de suivre la procédure de changement de certificat serveur donnée après le lancement de la commande.

```
ATTENTION ! Le certificat configuré dans le fichier /etc/nginx/conf.d/parapheur_ssl.conf
ne correspond potentiellement plus avec le nouveau nom du parapheur.
Il convient de remplacer ce certificat (localisé dans le dossier /etc/nginx/ssl/)
pour que le parapheur soit totalement fonctionnel.

Propriétés à modifier dans le fichier de configuration /etc/nginx/conf.d/parapheur_ssl.conf :
- ssl_certficiate /etc/nginx/ssl/test.pem;     # Partie publique
- ssl_certficiate_key /etc/nginx/ssl/test.key; # Partie privée

Une fois les modifications de certificat effectuées, relancer le service NginX :
service nginx restart
```

## `ph-removeldap`

Cette commande permet de supprimer les utilisateurs synchronisés avec un LDAP n'ayant aucun bureau liés.

Exemple d'utilisation :
```
usage: ph-removeldap [-h]

Supprime les utilisateurs synchronisés LDAP n'ayant aucune liaison avec un bureau

Arguments:
  -h, --help  Affiche ce message et quitte

```

## `ph-pushdoc`

Lance la fonction d'importation de dossier via le connecteur générique Pushdoc.
Il est vivement conseillé d'utiliser la commande ` ph-init -c pushdoc ` afin de générer un squelette de fichier de configuration complet.

**ATTENTION** : Des pré-requis sont nécéssaires avant l'utilisation de cette commande :
- Un jar pushdoc en dernière version dans le même dossier que ce script
- Tout le nécéssaire pour faire fonctionner pushdoc (wsdl, conf.cf, keystore, truststore)
- Le fichier par défaut pour le visuel pdf des flux PES (template-visuelPDF.pdf)

Exemple d'utilisation :
```
usage: ph-pushdoc [-h] [-c C] [-j J] [-i I] [-e E] [-x X] [-v V]

Importe la configuration ciblée dans un parapheur vierge

Arguments:
  -h, --help  Affiche ce message et quitte
  -c C        Fichier de configuration
  -j J        Fichier JAR du pushdoc
  -i I        Répertoire à traiter
  -e E        Courriel de l'utilisateur webservice
  -x X        xPath par défaut dans le cas d'un envoi de flux PES
  -v V        Visuel PDF à utiliser dans le cas d'un envoi de flux PES
```

## `ph-ipclean`

Cette commande permet de générer les index automatiquement en supprimant les noeuds dans la base de données, en lançant
la procédure doIPcleantransaction.sql, en supprimant les dossiers alf_data/lucene-indexes et
alf_data/backup-lucene-indexes et en coupant et relançant l'application.

Exemple d'utilisation :
```
usage: ph-ipclean [-h]

Génère les index

Arguments:
  -h, --help  Affiche ce message et quitte

```

## `ph-ldapsearch`

Cette commande vérifie que le fichier de conf LDAP est bien présent, que la synchronisation est bien demandée, que le serveur est accessible.
Puis affiche la requête LDAP complète et enfin retourne la liste des utilisateurs correspondants.
Il est vivement conseillé d'utiliser la commande `ph-init -c ldapsearch` afin de générer un squelette de fichier de configuration complet.


Exemple d'utilisation :
```
usage: ph-ldapsearch [-h]

Génère des vérifications de propriétés du fichier conf, la requête LDAP, la liste des utilisateurs retournés par celle-ci.

Arguments:
  -h, --help  Affiche ce message et quitte

```


## `ph-count_files`

Cette commande affiche un tableau récapitulatif du nombre de dossier et d'archives par tenant. Les dossiers sont classés par bureau et banette.

Exemple d'utilisation :
```
usage: ph-count_files [-h]

Arguments:
  -h, --help  Affiche ce message et quitte

```


## `ph-reset_admin_password`

Cette commande passe le mot de passe de l'utilisateur à "admin".
Il est vivement conseillé d'utiliser la commande `ph-init -c reset_admin_password` afin de générer un squelette de fichier de configuration complet.

Exemple d'utilisation :
```
usage: ph-reset_admin_password [-h] [-c C] [-dh DH] [-dp DP] [-du DU] [-dpw DPW] [-dd DD]

Arguments:
  -h, --help  Affiche ce message et quitte
  -c C        Fichier de configuration
  -dh DH      IP du serveur mysql
  -dp DP      Port du serveur mysql
  -du DU      Utilisateur alfresco de mysql
  -dpw DPW    Mot de passe utilisateur alfresco de mysql
  -dd DD      Nom de la base mysql

```

## `ph-patch`

Cette commande déploie le patch.

Il faut au préalable créer un dossier contenant l'archive tar.gz du patch,
et compléter le iparapheur-utils.cfg (en lançant la commande `ph-init -c patch`)

Exemple d'utilisation :
```
usage: ph-patch [-h] [-c C] [-u U] [-d D]

Arguments:
  -h, --help  Affiche ce message et quitte
  -c C        Fichier de configuration
  -u U        URL webservice sans le "secure-"
  -d D        dossier du parapheur (par défaut /opt/iParapheur)
```

## `ph-recupfull`

Cette commande est une nouvelle version de `ph-recuparchives`, plus complète.

La principale nouveauté : prise en compte des métadonnées dans l'opération de récupération.

Il y a 4 nouvelles fonctionnalités :

- récupérer les archives sous forme d'arborescence personnalisée,
- ajout d'un fichier de propriété XML pour chaque archive, 
- 1 rapport d'exécution au format CSV 
- et 1 log au format CSV.

Il faut au préalable compléter le `iparapheur-utils.cfg` (en lançant la commande `ph-init -c recupfull`)

Exemple d'utilisation :

```
ph-recupfull -h
---
usage: ph-recupArchives [-h] [-s S] [-c C] [-u U] [-p P] [-f F] [-ps PS]
                        [-r {true,false}] [-i {true,false}] [-pu {true,false}]
                        [-d {true,false}] [-t T] [-st ST] [-w W]

Lance une récupération / purge des archives

Arguments:
  -h, --help        Affiche ce message et quitte
  -c C              Fichier de configuration
  
  -u U              Utilisateur
  -p P              Mot de passe
  -s S              URL du serveur iParapheur
  
  -f F              Répertoire de destination
  -ps PS            Taille des pages à récupérer
  -pu {true,false}  Active la purge les données
  -d {true,false}   Télécharge les données
  -mx {true,false}  Ajout d un fichier de propriété au format XML pour chaque archive
  -t T              Filtre sur type
  -st ST            Filtre sur sous-type
  -w W              Délai de conservation des données
  
  -ml ml            Liste des métadonnées a exploiter au format CSV
  -mdv mdv          Liste des valeurs par défaut des métadonnées à exploiter au format CSV
  -mt mt            arborescence par métadonnées ou mots clés
  -cdr cdr {true,false} CSV généré lors de chaque exécution : tous les répertoires créés
  -clr clr {true,false} log au format CSV : tous les dossiers créés 
```

## `ph-template`

Cette commande permet de :
- sauvegarder les templates et bordereau dans un fichier ZIP daté
- vérifie pour chaque modèle si il n'est pas à jour ou si il a été modifié
- si reload = true, les modèles sont rechargés 

Il faut au préalable compléter le `iparapheur-utils.cfg` (en lançant la commande `ph-init -c template`)

Exemple d'utilisation :

```
ph-template -h
---
usage: ph-template [-h] [-c C] [-u U] [-p P] [-s S [-r {true,false}] 

Arguments:
  -h, --help        Affiche ce message et quitte
  -c C              Fichier de configuration
  
  -u U              Utilisateur
  -p P              Mot de passe
  -s S              URL du serveur iParapheur
  -r {true,false}   Rechargement des modèles
```


## `ph-orphan`

Cette commande indique si il y a des noeuds orphelins avec un message et un code retour.
0 = il n'y a pas de noeud orphelin
1 = il y a des noeuds orphelins

Exemple d'utilisation :
```
usage: ph-orphan 
```

# Utilisation en librairie

Définir un fichier de configuration `script.cfg` dans le répertoire racine via la commande `ph-init`, qui aura la forme suivante :

```ini
[Parapheur]
username = admin
password = admin
server = secure-iparapheur.dom.local
```

Puis, créer un script python avec utilisation de l'API REST :

```python
#!/usr/bin/env python
# coding=utf-8

import parapheur

# Init REST API client
client = parapheur.getrestclient()

if client.islogged:
    # Do a lot of things...
```

Ou, pour une utilisation avec l'API SOAP :

```python
#!/usr/bin/env python
# coding=utf-8

import parapheur

# Init SOAP API client
webservice = parapheur.getsoapclient()

webservice.call().echo('Coucou, ici python !')
```

Le rendre éxecutable, puis le lancer depuis une console bash :

```bash
chmod +x ./script.py
./script.py
```

# Cas spécifiques

## Proxy

Il est possible de contourner l'usage d'un proxy pour les appels Webservices ou API REST,
si le script à lancer doit communiquer directement avec le serveur i-Parapheur
sans passer par un éventuel proxy défini sur le système.

Pour cela, il suffit d'ajouter la variable **NO_PROXY** avant l'appel d'une fonction ou d'un script.
Par exemple, pour un appel de `ph-echo` vers `secure-iparapheur.dom.local`, la commande sera :

```bash
NO_PROXY="secure-iparapheur.dom.local" ph-echo
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://gitlab.libriciel.fr/i-parapheur/client-python",
    "name": "iparapheur-utils3.beta",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "",
    "author": "Libriciel SCOP",
    "author_email": "contact@libriciel.fr",
    "download_url": "https://files.pythonhosted.org/packages/d8/72/05a61ce39eaf0a4f41ce778b9b2d6f67e26178a3f5dc70f460caae4b9973/iparapheur-utils3.beta-0.0.1.post587157.tar.gz",
    "platform": null,
    "description": "i-Parapheur Utils\n=================\n\n[![PyPi](https://img.shields.io/pypi/v/iparapheur-utils.svg)](https://pypi.org/project/iparapheur-utils)\n\n\n# Introduction\n\nC'est principalement une librairie \u00e9crite en Python permettant la communication avec le [i-Parapheur](https://www.libriciel.fr/iparapheur/) en version 4.2+, au travers de l'API REST ou via webservice SOAP.\n\nElle offre des commandes accessibles depuis un shell standard, pour faciliter certaines op\u00e9rations d'exploitation.\n\n# Installation\n\nSur une distribution Ubuntu 18.04 LTS :\n\n* une instance i-Parapheur accessible en v4.4.0 ou plus\n* un environnement Python fonctionnel !\n* ajout de l'outil ` pip ` depuis un terminal BASH :\n\n```bash\nsudo bash\ncurl https://bootstrap.pypa.io/get-pip.py | python\n```\n\n* installation du paquet python `iparapheur-utils`, depuis un terminal BASH :\n\n```bash\nsudo pip install iparapheur-utils\n```\n\n## Probl\u00e8mes connus et solutions\n\n### python2 et python3 coexistent sur la machine\n\nLancer les commandes pour python2, sp\u00e9cifiquement (partant du principe que `python2` pointe sur l'ex\u00e9cutable python 2)\n\n```bash\ncurl https://bootstrap.pypa.io/get-pip.py | python2\nsudo python2 -m pip install iparapheur-utils\n```\n\n### Erreur urllib3 : \"No module named ordered_dict\"\n\nUne d\u00e9pendance de iparapheur-utils est install\u00e9e dans une mauvaise version, non support\u00e9e (eg urllib3 v 1.24).\nIl faut la d\u00e9sinstaller et la r\u00e9installer dans la bonne version (v 1.23).\n\n```bash\nsudo pip uninstall urllib3\nsudo pip install urllib3==1.23\n```\n\n## Cas d'environnement avec MitM\n\nCertains environnements r\u00e9seau bloquent l'acc\u00e8s \u00e0 pypi.org, avec un message \"SSL Error: Certificate_Verify_Failed\".\n\n> Could not fetch URL https://pypi.org/\u2026/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host=\u2019pypi.org\u2019, port=443): Max retries exceeded with url: /\u2026/ (Caused by SSLError(SSLCertVerificationError(1, \u2018[ SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: \u2026\n\nIl est possible de passer outre, au prix d'une r\u00e9duction de la confiance, avec l'argument `--trusted-host`\n\n```bash\nsudo pip install --trusted-host pypi.org  iparapheur-utils\n```\n\n\n## Support CentOS / RHEL :\n\n* Version 6 : Cette version n'est plus support\u00e9e, en cause une version de python trop ancienne (2.6)\n* Version 7 : Cette version requiert l'installation de paquets suppl\u00e9mentaires :  \n  `yum install libffi-devel gcc openssl-devel`\n\n# Usage\n\nCes commandes sont actuellement disponibles :\n\n- [`ph-init`](#ph-init)\n- [`ph-check`](#ph-check)\n- [`ph-echo`](#ph-echo)\n- [`ph-recupArchives`](#ph-recuparchives)\n- [`ph-export`](#ph-export)\n- [`ph-import`](#ph-import)\n- [`ph-rename`](#ph-rename)\n- [`ph-removeldap`](#ph-removeldap)\n- [`ph-pushdoc`](#ph-pushdoc)\n- [`ph-ipclean`](#ph-ipclean)\n- [`ph-ldapsearch`](#ph-ldapsearch)\n- [`ph-count_files`](#ph-count_files)\n- [`ph-reset_admin_password`](#ph-reset_admin_password)\n- [`ph-patch`](#ph-patch)\n- [`ph-recupfull`](#ph-recupfull)\n- [`ph-orphan`](#ph-orphan)\n\n> Remarques : Elles sont con\u00e7ues pour \u00eatre ex\u00e9cut\u00e9es en environnement bash standard: ligne de commande, ou script BASH.  \nAucune qualification \u00e0 ce stade pour l'usage de ces commandes dans un interpr\u00e9teur Python.\n\n## `ph-init`\n\nCette commande permet la g\u00e9n\u00e9ration d'un fichier de configuration \"par d\u00e9faut\", qu'il faut bien s\u00fbr adapter au serveur.\n\nExemple d'utilisation :\n```\nusage: ph-init [-h] [-p P] [-c {recuparchives,export,import}]\n\nG\u00e9n\u00e8re un fichier de configuration par d\u00e9faut dans le r\u00e9pertoire courant\n\nArguments:\n  -h, --help            Affiche ce message et quitte\n  -p P                  Chemin du fichier de configuration\n  -c {recuparchives,export,import}\n                        Commande pour laquelle g\u00e9n\u00e9rer le fichier de\n                        configuration\n```\n\nLe lancement de la commande g\u00e9n\u00e8re un fichier `iparapheur-utils.cfg`, lu par d\u00e9faut lors de l'appel des autres fonctions\n\n## `ph-check`\n\nLance le script de check d'installation. Pas de pr\u00e9-requis particulier.\n\n## `ph-echo`\n\nLance la fonction `echo` vers le i-Parapheur d\u00e9sign\u00e9 dans le fichier de configuration.\n\nExemple d'utilisation :\n```\nph-echo -h\n---\nusage: ph-echo [-h] [-s S] [-c C] [-u U] [-p P]\n\nLance un echo via webservice sur un iParapheur\n\nArguments:\n  -h, --help  Affiche ce message et quitte\n  -s S        URL du serveur iParapheur\n  -c C        Fichier de configuration\n  -u U        Utilisateur\n  -p P        Mot de passe\n```\n\n## `ph-recupArchives`\n\nLance la fonction de r\u00e9cup\u00e9ration ou/et de purge des archives.\nIl est vivement conseill\u00e9 d'utiliser la commande `ph-init -c recuparchives` afin de g\u00e9n\u00e9rer un squelette de fichier de configuration complet.\n\nExemple d'utilisation :\n```\nph-recupArchives -h\n---\nusage: ph-recupArchives [-h] [-s S] [-c C] [-u U] [-p P] [-f F] [-ps PS]\n                        [-r {true,false}] [-i {true,false}] [-pu {true,false}]\n                        [-d {true,false}] [-t T] [-st ST] [-w W]\n\nLance une r\u00e9cup\u00e9ration / purge des archives\n\nArguments:\n  -h, --help        Affiche ce message et quitte\n  -s S              URL du serveur iParapheur\n  -c C              Fichier de configuration\n  -u U              Utilisateur\n  -p P              Mot de passe\n  -f F              R\u00e9pertoire de destination\n  -ps PS            Taille des pages \u00e0 r\u00e9cup\u00e9rer\n  -r {true,false}   Chemins r\u00e9duis des t\u00e9l\u00e9chargements\n  -i {true,false}   Ajout identifiant alfresco dans le chemin complet (true par defaut)\n  -pu {true,false}  Active la purge les donn\u00e9es\n  -d {true,false}   T\u00e9l\u00e9charge les donn\u00e9es\n  -t T              Filtre sur type\n  -st ST            Filtre sur sous-type\n  -w W              D\u00e9lai de conservation des donn\u00e9es\n```\n\n## `ph-export`\n\nLance la fonction d'exporation de la configuration du parapheur vers un dossier.\nIl est vivement conseill\u00e9 d'utiliser la commande `ph-init -c export` afin de g\u00e9n\u00e9rer un squelette de fichier de configuration complet.\nLa liste des \u00e9l\u00e9ments \u00e0 exporter peut \u00eatre modifi\u00e9e dans ce fichier.\n\n**ATTENTION** : Seule la **configuration** du parapheur est export\u00e9e. Comprendre qu'aucun dossier, archive, statistique ou historique n'est conserv\u00e9.\n\nExemple d'utilisation :\n```\nusage: ph-export [-h] [-s S] [-c C] [-u U] [-p P] [-i I] [-dh DH] [-dp DP]\n                 [-du DU] [-dpw DPW] [-dd DD] [-ou OU] [-og OG] [-ob OB] [-oc OC] [-ot OT] [-om OM] [-oq OQ] [-oa OA]\n\nExporte la configuration du parapheur cibl\u00e9 vers un dossier\n\nArguments:\n  -h, --help  Affiche ce message et quitte\n  -s S        URL du serveur iParapheur\n  -c C        Fichier de configuration\n  -u U        Utilisateur administrateur\n  -p P        Mot de passe\n  -i I        R\u00e9pertoire de destination\n  -dh DH      IP du serveur mysql\n  -dp DP      Port du serveur mysql\n  -du DU      Utilisateur alfresco de mysql\n  -dpw DPW    Mot de passe utilisateur alfresco de mysql\n  -dd DD      Nom de la base mysql\n  -ou {true,false}      Boolean importe les utilisateurs\n  -og {true,false}      Boolean importe les groupes\n  -ob {true,false}      Boolean importe les bureaux\n  -oc {true,false}      Boolean importe les circuits\n  -ot {true,false}      Boolean importe les types et sous-types\n  -om {true,false}      Boolean importe les metadatas\n  -oq {true,false}      Boolean importe les calques\n  -oa {true,false}      Boolean importe les advanced\n\n```\n\n## `ph-import`\n\nLance la fonction d'importation de la configuration du parapheur \u00e0 partir d'un dossier.\nIl est vivement conseill\u00e9 d'utiliser la commande `ph-init -c import` afin de g\u00e9n\u00e9rer un squelette de fichier de configuration complet.\n\n**ATTENTION** : Seule la **configuration** du parapheur est import\u00e9e. Comprendre qu'aucun dossier, archive, statistique ou historique n'est conserv\u00e9.\n\nExemple d'utilisation :\n```\nusage: ph-import [-h] [-s S] [-c C] [-u U] [-p P] [-i I] [-dh DH] [-dp DP]\n                 [-du DU] [-dpw DPW] [-dd DD]\n\nImporte la configuration cibl\u00e9e dans un parapheur vierge\n\nArguments:\n  -h, --help  Affiche ce message et quitte\n  -s S        URL du serveur iParapheur\n  -c C        Fichier de configuration\n  -u U        Utilisateur administrateur\n  -p P        Mot de passe\n  -i I        R\u00e9pertoire \u00e0 importer\n  -dh DH      IP du serveur mysql\n  -dp DP      Port du serveur mysql\n  -du DU      Utilisateur alfresco de mysql\n  -dpw DPW    Mot de passe utilisateur alfresco de mysql\n  -dd DD      Nom de la base mysql\n```\n\n## `ph-rename`\n\nCette commande permet de changer l'URL d'acc\u00e8s au i-Parapheur\n\nExemple d'utilisation :\n```\nusage: ph-rename [-h] -n N\n\nChange l'URL d'acc\u00e8s du i-Parapheur\n\nArguments:\n  -h, --help  Affiche ce message et quitte\n  -n N        Nouvelle URL du serveur iParapheur\n\n```\n\nLe lancement de la commande modifie l'URL d'acc\u00e8s au i-Parapheur mais ne change pas la configuration du certificat serveur.\n\nIl est important de suivre la proc\u00e9dure de changement de certificat serveur donn\u00e9e apr\u00e8s le lancement de la commande.\n\n```\nATTENTION ! Le certificat configur\u00e9 dans le fichier /etc/nginx/conf.d/parapheur_ssl.conf\nne correspond potentiellement plus avec le nouveau nom du parapheur.\nIl convient de remplacer ce certificat (localis\u00e9 dans le dossier /etc/nginx/ssl/)\npour que le parapheur soit totalement fonctionnel.\n\nPropri\u00e9t\u00e9s \u00e0 modifier dans le fichier de configuration /etc/nginx/conf.d/parapheur_ssl.conf :\n- ssl_certficiate /etc/nginx/ssl/test.pem;     # Partie publique\n- ssl_certficiate_key /etc/nginx/ssl/test.key; # Partie priv\u00e9e\n\nUne fois les modifications de certificat effectu\u00e9es, relancer le service NginX :\nservice nginx restart\n```\n\n## `ph-removeldap`\n\nCette commande permet de supprimer les utilisateurs synchronis\u00e9s avec un LDAP n'ayant aucun bureau li\u00e9s.\n\nExemple d'utilisation :\n```\nusage: ph-removeldap [-h]\n\nSupprime les utilisateurs synchronis\u00e9s LDAP n'ayant aucune liaison avec un bureau\n\nArguments:\n  -h, --help  Affiche ce message et quitte\n\n```\n\n## `ph-pushdoc`\n\nLance la fonction d'importation de dossier via le connecteur g\u00e9n\u00e9rique Pushdoc.\nIl est vivement conseill\u00e9 d'utiliser la commande ` ph-init -c pushdoc ` afin de g\u00e9n\u00e9rer un squelette de fichier de configuration complet.\n\n**ATTENTION** : Des pr\u00e9-requis sont n\u00e9c\u00e9ssaires avant l'utilisation de cette commande :\n- Un jar pushdoc en derni\u00e8re version dans le m\u00eame dossier que ce script\n- Tout le n\u00e9c\u00e9ssaire pour faire fonctionner pushdoc (wsdl, conf.cf, keystore, truststore)\n- Le fichier par d\u00e9faut pour le visuel pdf des flux PES (template-visuelPDF.pdf)\n\nExemple d'utilisation :\n```\nusage: ph-pushdoc [-h] [-c C] [-j J] [-i I] [-e E] [-x X] [-v V]\n\nImporte la configuration cibl\u00e9e dans un parapheur vierge\n\nArguments:\n  -h, --help  Affiche ce message et quitte\n  -c C        Fichier de configuration\n  -j J        Fichier JAR du pushdoc\n  -i I        R\u00e9pertoire \u00e0 traiter\n  -e E        Courriel de l'utilisateur webservice\n  -x X        xPath par d\u00e9faut dans le cas d'un envoi de flux PES\n  -v V        Visuel PDF \u00e0 utiliser dans le cas d'un envoi de flux PES\n```\n\n## `ph-ipclean`\n\nCette commande permet de g\u00e9n\u00e9rer les index automatiquement en supprimant les noeuds dans la base de donn\u00e9es, en lan\u00e7ant\nla proc\u00e9dure doIPcleantransaction.sql, en supprimant les dossiers alf_data/lucene-indexes et\nalf_data/backup-lucene-indexes et en coupant et relan\u00e7ant l'application.\n\nExemple d'utilisation :\n```\nusage: ph-ipclean [-h]\n\nG\u00e9n\u00e8re les index\n\nArguments:\n  -h, --help  Affiche ce message et quitte\n\n```\n\n## `ph-ldapsearch`\n\nCette commande v\u00e9rifie que le fichier de conf LDAP est bien pr\u00e9sent, que la synchronisation est bien demand\u00e9e, que le serveur est accessible.\nPuis affiche la requ\u00eate LDAP compl\u00e8te et enfin retourne la liste des utilisateurs correspondants.\nIl est vivement conseill\u00e9 d'utiliser la commande `ph-init -c ldapsearch` afin de g\u00e9n\u00e9rer un squelette de fichier de configuration complet.\n\n\nExemple d'utilisation :\n```\nusage: ph-ldapsearch [-h]\n\nG\u00e9n\u00e8re des v\u00e9rifications de propri\u00e9t\u00e9s du fichier conf, la requ\u00eate LDAP, la liste des utilisateurs retourn\u00e9s par celle-ci.\n\nArguments:\n  -h, --help  Affiche ce message et quitte\n\n```\n\n\n## `ph-count_files`\n\nCette commande affiche un tableau r\u00e9capitulatif du nombre de dossier et d'archives par tenant. Les dossiers sont class\u00e9s par bureau et banette.\n\nExemple d'utilisation :\n```\nusage: ph-count_files [-h]\n\nArguments:\n  -h, --help  Affiche ce message et quitte\n\n```\n\n\n## `ph-reset_admin_password`\n\nCette commande passe le mot de passe de l'utilisateur \u00e0 \"admin\".\nIl est vivement conseill\u00e9 d'utiliser la commande `ph-init -c reset_admin_password` afin de g\u00e9n\u00e9rer un squelette de fichier de configuration complet.\n\nExemple d'utilisation :\n```\nusage: ph-reset_admin_password [-h] [-c C] [-dh DH] [-dp DP] [-du DU] [-dpw DPW] [-dd DD]\n\nArguments:\n  -h, --help  Affiche ce message et quitte\n  -c C        Fichier de configuration\n  -dh DH      IP du serveur mysql\n  -dp DP      Port du serveur mysql\n  -du DU      Utilisateur alfresco de mysql\n  -dpw DPW    Mot de passe utilisateur alfresco de mysql\n  -dd DD      Nom de la base mysql\n\n```\n\n## `ph-patch`\n\nCette commande d\u00e9ploie le patch.\n\nIl faut au pr\u00e9alable cr\u00e9er un dossier contenant l'archive tar.gz du patch,\net compl\u00e9ter le iparapheur-utils.cfg (en lan\u00e7ant la commande `ph-init -c patch`)\n\nExemple d'utilisation :\n```\nusage: ph-patch [-h] [-c C] [-u U] [-d D]\n\nArguments:\n  -h, --help  Affiche ce message et quitte\n  -c C        Fichier de configuration\n  -u U        URL webservice sans le \"secure-\"\n  -d D        dossier du parapheur (par d\u00e9faut /opt/iParapheur)\n```\n\n## `ph-recupfull`\n\nCette commande est une nouvelle version de `ph-recuparchives`, plus compl\u00e8te.\n\nLa principale nouveaut\u00e9 : prise en compte des m\u00e9tadonn\u00e9es dans l'op\u00e9ration de r\u00e9cup\u00e9ration.\n\nIl y a 4 nouvelles fonctionnalit\u00e9s :\n\n- r\u00e9cup\u00e9rer les archives sous forme d'arborescence personnalis\u00e9e,\n- ajout d'un fichier de propri\u00e9t\u00e9 XML pour chaque archive, \n- 1 rapport d'ex\u00e9cution au format CSV \n- et 1 log au format CSV.\n\nIl faut au pr\u00e9alable compl\u00e9ter le `iparapheur-utils.cfg` (en lan\u00e7ant la commande `ph-init -c recupfull`)\n\nExemple d'utilisation :\n\n```\nph-recupfull -h\n---\nusage: ph-recupArchives [-h] [-s S] [-c C] [-u U] [-p P] [-f F] [-ps PS]\n                        [-r {true,false}] [-i {true,false}] [-pu {true,false}]\n                        [-d {true,false}] [-t T] [-st ST] [-w W]\n\nLance une r\u00e9cup\u00e9ration / purge des archives\n\nArguments:\n  -h, --help        Affiche ce message et quitte\n  -c C              Fichier de configuration\n  \n  -u U              Utilisateur\n  -p P              Mot de passe\n  -s S              URL du serveur iParapheur\n  \n  -f F              R\u00e9pertoire de destination\n  -ps PS            Taille des pages \u00e0 r\u00e9cup\u00e9rer\n  -pu {true,false}  Active la purge les donn\u00e9es\n  -d {true,false}   T\u00e9l\u00e9charge les donn\u00e9es\n  -mx {true,false}  Ajout d un fichier de propri\u00e9t\u00e9 au format XML pour chaque archive\n  -t T              Filtre sur type\n  -st ST            Filtre sur sous-type\n  -w W              D\u00e9lai de conservation des donn\u00e9es\n  \n  -ml ml            Liste des m\u00e9tadonn\u00e9es a exploiter au format CSV\n  -mdv mdv          Liste des valeurs par d\u00e9faut des m\u00e9tadonn\u00e9es \u00e0 exploiter au format CSV\n  -mt mt            arborescence par m\u00e9tadonn\u00e9es ou mots cl\u00e9s\n  -cdr cdr {true,false} CSV g\u00e9n\u00e9r\u00e9 lors de chaque ex\u00e9cution : tous les r\u00e9pertoires cr\u00e9\u00e9s\n  -clr clr {true,false} log au format CSV : tous les dossiers cr\u00e9\u00e9s \n```\n\n## `ph-template`\n\nCette commande permet de :\n- sauvegarder les templates et bordereau dans un fichier ZIP dat\u00e9\n- v\u00e9rifie pour chaque mod\u00e8le si il n'est pas \u00e0 jour ou si il a \u00e9t\u00e9 modifi\u00e9\n- si reload = true, les mod\u00e8les sont recharg\u00e9s \n\nIl faut au pr\u00e9alable compl\u00e9ter le `iparapheur-utils.cfg` (en lan\u00e7ant la commande `ph-init -c template`)\n\nExemple d'utilisation :\n\n```\nph-template -h\n---\nusage: ph-template [-h] [-c C] [-u U] [-p P] [-s S [-r {true,false}] \n\nArguments:\n  -h, --help        Affiche ce message et quitte\n  -c C              Fichier de configuration\n  \n  -u U              Utilisateur\n  -p P              Mot de passe\n  -s S              URL du serveur iParapheur\n  -r {true,false}   Rechargement des mod\u00e8les\n```\n\n\n## `ph-orphan`\n\nCette commande indique si il y a des noeuds orphelins avec un message et un code retour.\n0 = il n'y a pas de noeud orphelin\n1 = il y a des noeuds orphelins\n\nExemple d'utilisation :\n```\nusage: ph-orphan \n```\n\n# Utilisation en librairie\n\nD\u00e9finir un fichier de configuration `script.cfg` dans le r\u00e9pertoire racine via la commande `ph-init`, qui aura la forme suivante :\n\n```ini\n[Parapheur]\nusername = admin\npassword = admin\nserver = secure-iparapheur.dom.local\n```\n\nPuis, cr\u00e9er un script python avec utilisation de l'API REST :\n\n```python\n#!/usr/bin/env python\n# coding=utf-8\n\nimport parapheur\n\n# Init REST API client\nclient = parapheur.getrestclient()\n\nif client.islogged:\n    # Do a lot of things...\n```\n\nOu, pour une utilisation avec l'API SOAP :\n\n```python\n#!/usr/bin/env python\n# coding=utf-8\n\nimport parapheur\n\n# Init SOAP API client\nwebservice = parapheur.getsoapclient()\n\nwebservice.call().echo('Coucou, ici python !')\n```\n\nLe rendre \u00e9xecutable, puis le lancer depuis une console bash :\n\n```bash\nchmod +x ./script.py\n./script.py\n```\n\n# Cas sp\u00e9cifiques\n\n## Proxy\n\nIl est possible de contourner l'usage d'un proxy pour les appels Webservices ou API REST,\nsi le script \u00e0 lancer doit communiquer directement avec le serveur i-Parapheur\nsans passer par un \u00e9ventuel proxy d\u00e9fini sur le syst\u00e8me.\n\nPour cela, il suffit d'ajouter la variable **NO_PROXY** avant l'appel d'une fonction ou d'un script.\nPar exemple, pour un appel de `ph-echo` vers `secure-iparapheur.dom.local`, la commande sera :\n\n```bash\nNO_PROXY=\"secure-iparapheur.dom.local\" ph-echo\n```\n",
    "bugtrack_url": null,
    "license": "AGPLv3",
    "summary": "Client python pour i-Parapheur",
    "version": "0.0.1.post587157",
    "project_urls": {
        "Homepage": "https://gitlab.libriciel.fr/i-parapheur/client-python"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d87205a61ce39eaf0a4f41ce778b9b2d6f67e26178a3f5dc70f460caae4b9973",
                "md5": "97410c79a16d7044499311af90cb8acf",
                "sha256": "66c1a4275de5c027349e37d6daab03f15886727dedc71f5412646999a3e595ae"
            },
            "downloads": -1,
            "filename": "iparapheur-utils3.beta-0.0.1.post587157.tar.gz",
            "has_sig": false,
            "md5_digest": "97410c79a16d7044499311af90cb8acf",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 88748,
            "upload_time": "2023-05-22T17:24:58",
            "upload_time_iso_8601": "2023-05-22T17:24:58.372779Z",
            "url": "https://files.pythonhosted.org/packages/d8/72/05a61ce39eaf0a4f41ce778b9b2d6f67e26178a3f5dc70f460caae4b9973/iparapheur-utils3.beta-0.0.1.post587157.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-05-22 17:24:58",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "iparapheur-utils3.beta"
}
        
Elapsed time: 0.08365s