.. tape-order:

Commande de bandes sur l'offre froide (INA)
############################################

La commande de bandes est une procédure technique à disposition de l'exploitant. Pour chaque code de bande fourni, elle constitue la liste des archives (TAR) présentes sur la bande, ordonnées par leur position physique, et transmet cette demande à l'INA via le dépôt d'un fichier de commande sur le canal SFTP dédié.

Cette procédure s'adresse uniquement à une offre de type ``tape-library`` configurée en mode ``ina``. Elle est appelée directement sur le port d'administration de l'offre.


Procédure de lancement de la commande de bandes
===============================================

Le déclenchement se fait de la manière suivante :

.. code-block:: bash

   ansible-playbook ansible-vitam-exploitation/tape_order.yml -i environments/hosts.<environnement> --ask-vault-pass -e "tapeCodes=TAPE_0001,TAPE_0002"

   # Si plusieurs offres tape-library configurées en mode ina sont déployées :
   ansible-playbook ansible-vitam-exploitation/tape_order.yml -i environments/hosts.<environnement> --ask-vault-pass -e "target_offer=offer-tape-1 tapeCodes=TAPE_0001,TAPE_0002"

* Le paramètre ``target_offer`` correspond à l'identifiant de l'offre visée, tel que défini dans ``vitam_offers`` (fichier ``offers_opts.yml``). Il est **facultatif** s'il n'existe qu'une seule offre configurée avec ``provider: tape-library`` et ``tapeLibraryConfiguration.mode: ina`` : cette offre est alors sélectionnée automatiquement. S'il en existe plusieurs, le paramètre devient obligatoire pour lever l'ambiguïté ; la procédure échoue avant tout appel à l'offre si aucune offre ina n'est trouvée, ou si l'offre indiquée ne correspond pas aux critères attendus.
* Le paramètre ``tapeCodes`` correspond à la liste des codes de bandes à commander, séparés par une virgule (sans espace).

En cas de succès, l'offre répond avec le code HTTP ``202`` et le fichier de commande est déposé sur le canal SFTP de l'INA.

En cas d'erreur, la procédure échoue et le message d'erreur remonté par l'offre est affiché dans la sortie du playbook. Les cas les plus fréquents sont :

* une bande demandée est absente du catalogue de l'offre ;
* aucune archive n'est référencée pour la bande demandée.

Les journaux de la commande de bandes se trouvent dans les logs du composant **offer**. Ils peuvent être suivis via la commande suivante :

.. code-block:: bash

    tail -F /vitam/log/offer/offer.\*.log
