Scripts / Importation de données anciennes
Script est la solution complète de SKOOR pour créer, éditer et exécuter des scripts avec de nombreuses options pour les personnaliser.
Les scripts sont divisés en 3 types principaux : Python, Talend et personnalisés.
Page des scripts
La page est divisée en trois sections principales :
Paramètres
Cette section comprend les paramètres généraux d'un Script, tels que :
Nom et description.
Délai d'attente par défaut (en secondes)
Copier le jeton Webhook ou le réinitialiser (disponible uniquement pour les ADMINS)
Configurations Scheduler : Permet d'avoir plusieurs planifications avec des configurations d'exécution dédiées.
Configurations d'exécution : Permet de personnaliser le délai d'attente et les variables d'environnement.
Fichiers
Cette section offre une solution complète de gestion des fichiers pour le Script, y compris un éditeur de pointe pour les données textuelles.
Un lien de téléchargement sera affiché si les données sont binaires (non modifiables sous forme de texte).
Exécution
Cette section permet d'exécuter et de contrôler les exécutions d'un Script. Elle offre une petite zone de dépôt pour télécharger les fichiers sources si nécessaire.
Création d'un Script
Les scripts peuvent être créés manuellement ou téléchargés sous forme de fichiers Zip, comme indiqué ci-dessous :
Les pierres angulaires d'un Script
Script d'exécution
Le fichier principal comprend la logique du Script. Il détermine le type de Script :
Pour le Script Python : c'est un fichier
main.py
.Pour Talend Script : c'est un fichier
<scriptName>_run.sh
.Pour un Script personnalisé : c'est un fichier
run.sh
.
Veuillez noter que le type de Script ne peut pas être modifié après la création. Cela ne peut se faire qu'en créant un nouveau Script.
.env
Il s'agit d'un simple fichier texte qui contient des variables d'environnement. De cette manière, les variables utilisées dans un script peuvent être ajustées en fonction du cas d'utilisation.
Le fichier .env
suivant produirait les variables d'environnement montrées, permettant de les ajuster dans des configurations d'exécution personnalisées.
Variables d'environnement pré-fournies
Certains détails concernant l'exécution du Script sont transmis à l'environnement du Script en tant que variables d'environnement :
UserId comme
SKOOR_USER_ID
Nom d'utilisateur comme
SKOOR_USER_USERNAME
Nom complet de l'utilisateur comme
SKOOR_USER_FULLNAME
Les captures d'écran ci-dessous montrent comment récupérer ces variables dans un exemple Python, ainsi que la sortie du script :
import os source_file = os.environ.get('SKOOR_SOURCE_FILE') user_id = os.environ.get('SKOOR_USER_ID') username = os.environ.get('SKOOR_USER_USERNAME') userFullname = os.environ.get('SKOOR_USER_FULLNAME') print("sourceFile: ", source_file) print("User ID: ", user_id) print("Username: ", username) print("Fullname: ", userFullname)
Exemple utilisant .env
Le script suivant lit la variable foo
dans .env
et l'imprime sur la console. Vous trouverez ci-dessous les captures d'écran de .env
et des configurations d'exécution correspondantes.
Fichiers sources
Les scripts peuvent être conçus pour accepter des fichiers externes (fichiers sources) et les traiter dans le cadre de la logique du script.
Les fichiers sources peuvent être référencés dans le Script en utilisant la variable d'environnement SKOOR_SOURCE_FILE
comme le montre l'extrait de code suivant :
# IN PYTHON import os source_file = os.environ.get('SKOOR_SOURCE_FILE') print(source_file)
#IN SHELL echo $SKOOR_SOURCE_FILE
QuickRun
Cette option propose un bouton QuickRun
qui exécute le Script sans fichier source et avec les valeurs par défaut des variables d'environnement.
Elle permet d'exécuter rapidement un Script lors de son développement ou de son dépannage et le bouton Latest Job Overview
affiche la sortie de la console.
Structure du Script Zip
Le fichier Zip téléchargé ne doit contenir qu'un seul dossier à la racine, nommé de la même manière que le fichier d'archive Zip.
Le Script d'exécution doit de préférence se trouver à la racine du dossier du script, ainsi que le fichier .env.
Exécution
Démarrer une exécution
Dans la section run, sélectionnez la configuration désirée (et téléchargez un fichier source si nécessaire) puis cliquez sur "Run Script"
Annuler une exécution
Les exécutions en cours et en attente peuvent être annulées en cliquant sur l'icône d'annulation du travail dans la section Historique.
Vue d'ensemble du travail
Pour afficher tous les détails d'un travail, cliquez sur une entrée de la liste Historique, comme indiqué ci-dessous :
Historique de l'exécution
La section Historique présente une liste de toutes les exécutions de scripts. Les détails de chaque exécution peuvent être consultés en cliquant dessus.
Une section dédiée présente l'historique détaillé de la dernière exécution du Script (ignore les exécutions en attente/annulées).
Utilisation de jetons Webhook pour exécuter un convertisseur
Cette option permet d'exécuter le Script sans avoir besoin de se connecter, et c'est l'option préférée des utilisateurs techniques.
Chaque Script a son propre jeton Webhook et l'URL sera copiée dans le presse-papiers en cliquant sur Copy Webhook Token
.
Exemple d'utilisation des jetons Webhook
Copiez le jeton Webhook de la page Script en cliquant sur Copy Webhook Token
, pour cet exemple, l'URL Webhook se présente comme suit :
http://localhost:8090/scripts/8925cfd4-2063-4b07-9d56-956f2b754b47/run?token=6ae51c9f-d292-4d55-b512-4537121b37f5
Utilisez l'URL pour envoyer une demande à POST
:
En utilisant un logiciel API comme POSTMAN
Une réponse 200
avec l'entité Job initiale indique que l'exécution a été déclenchée, comme le montre la capture d'écran ci-dessous :
Utilisation de cURL
dans un terminal
curl -X POST http://localhost:8090/scripts/8925cfd4-2063-4b07-9d56-956f2b754b47/run?token=6ae51c9f-d292-4d55-b512-4537121b37f5
La réponse se présente comme suit
Cette exécution peut être observée dans SKOOR Dashboard et l'exécution montre qu'elle a été créée par Token-User dans l'historique.
Suppression
Cliquez sur l'icône de la corbeille pour supprimer le Script. L'icône apparaît lorsque l'on passe le pointeur de la souris sur le nom du Script.
Exportation du Script au format Zip
Cliquez sur l'icône d'archive pour exporter le Script. L'icône apparaît lorsque l'on passe le pointeur de la souris sur le nom du Script.