Script / Importazione di dati legacy
Script è la soluzione completa di SKOOR per la creazione, la modifica e l'esecuzione di script con numerose opzioni di personalizzazione.
Pagina degli Script
La pagina è divisa in tre sezioni principali:
Impostazioni
Questa sezione include le impostazioni generali di uno Script, come ad esempio:
Nome e Descrizione.
Timeout predefinito (in secondi)
Copia del token Webhook o Reimposta (disponibile solo per gli ADMINS)
Scheduler Configurazioni: Consente più pianificazioni con configurazioni di esecuzione dedicate.
Configurazioni di esecuzione: Consente la personalizzazione del timeout e delle variabili d'ambiente.
File
Questa sezione offre una soluzione completa per la gestione dei file dello script, compreso un editor all'avanguardia per i dati basati sul testo.
Se i dati sono binari (non modificabili in forma di testo), viene visualizzato un link per il download.
Esecuzione
Questa sezione è responsabile dell'esecuzione e del monitoraggio delle esecuzioni di uno script. Offre una piccola area per caricare i file sorgente, se necessario.
Creazione di uno Script
Gli script possono essere creati manualmente o caricati tramite file Zip, come mostrato di seguito:
Elementi fondamentali di uno Script
Script
Il file principale include la logica dello Script. Determina il tipo di runner per lo script:
Python Runner si aspetta un file
main.py
.Il runner Talend si aspetta un file
<scriptName>_run.sh
.Il runner Shell si aspetta un file
run.sh
.
Posizionare lo script principale un livello sotto la radice (o superiore), poiché la scansione breadth-first utilizza sempre lo script più superficiale che trova.
Quando si tenta di eseguire uno Script senza uno script principale, viene visualizzato il seguente messaggio.
.env
È un semplice file di testo che include le variabili d'ambiente. In questo modo le variabili utilizzate in uno Script possono essere regolate in base al caso d'uso.
Il seguente file .env
contiene le variabili d'ambiente mostrate, che possono essere modificate in configurazioni di esecuzione personalizzate.
Variabili d'ambiente predefinite
Alcuni dettagli sull'esecuzione dello script vengono passati all'ambiente dello script come variabili d'ambiente:
UserId come
SKOOR_USER_ID
Nome utente come
SKOOR_USER_USERNAME
Nome completo dell'utente come
SKOOR_USER_FULLNAME
Le schermate seguenti mostrano come recuperare queste variabili in un esempio Python e l'output dello 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)
Esempio di utilizzo di .env
Il seguente script legge la variabile foo
in .env
e la stampa nella console; di seguito sono riportate le schermate di .env
e le rispettive configurazioni di esecuzione.
File sorgente
Gli Script possono essere progettati per accettare file esterni (file sorgente) ed elaborarli come parte della logica dello script.
I file sorgente possono essere referenziati nello script usando la variabile d'ambiente SKOOR_SOURCE_FILE
, come si vede nel seguente frammento di codice:
# IN PYTHON import os source_file = os.environ.get('SKOOR_SOURCE_FILE') print(source_file)
#IN SHELL echo $SKOOR_SOURCE_FILE
Esecuzione di script secondari
Se sono necessari dei sotto-script, questi devono essere inseriti in una cartella bin
. Poiché saranno eseguibili.
Assicuratevi di mettere i sotto-script sempre in una cartella bin
.
Di seguito viene mostrato un esempio in Shell:
L'output di questo run.sh
è:
L'output di questo run.sh
è:
Esecuzione rapida
Questa opzione offre un pulsante QuickRun
che esegue lo script senza un file sorgente e con i valori predefiniti delle variabili d'ambiente.
Permette di eseguire rapidamente uno script durante lo sviluppo o la risoluzione di problemi e il pulsante Latest Job Overview
mostra l'output della console.
Esecuzione
Avviare un'esecuzione
Nella sezione di esecuzione, selezionare la configurazione desiderata (e caricare un file sorgente, se necessario), quindi fare clic su "Esegui Script".
Annullare un'esecuzione
Le esecuzioni in corso e quelle in attesa possono essere annullate facendo clic sull'icona Annulla lavoro nella sezione Cronologia.
Opt-out di Poetry
Poetry è un potente strumento utilizzato per la gestione delle dipendenze e degli ambienti virtuali in python. Tutto questo viene fatto definendo un file pyproject.toml
.
Rimuovendo/rinominando il file pyproject.toml
si esclude automaticamente l'uso di Poetry e si utilizza invece skoor-python
.
Panoramica dei lavori
Per visualizzare i dettagli completi di un lavoro, fare clic su una voce dell'elenco Cronologia, come mostrato di seguito:
Cronologia dell'esecuzione
La sezione Cronologia mostra un elenco di tutte le esecuzioni di Script. I dettagli di ciascuna esecuzione sono disponibili facendo clic su di essa.
Una sezione dedicata mostra la cronologia dettagliata dell'ultima esecuzione dello script (salta le esecuzioni in attesa o annullate).
Utilizzo dei token Webhook per eseguire un convertitore
Questa opzione consente di eseguire lo Script senza dover effettuare il login ed è la preferita dagli utenti tecnici.
Ogni Script ha un token Webhook unico e l'URL verrà copiato negli appunti facendo clic su Copy Webhook Token
.
Esempio di utilizzo dei token Webhook
Copiate il token Webhook dalla pagina dello Script facendo clic su Copy Webhook Token
, per questo esempio l'URL Webhook è il seguente:
http://localhost:8090/scripts/8925cfd4-2063-4b07-9d56-956f2b754b47/run?token=6ae51c9f-d292-4d55-b512-4537121b37f5
Utilizzare l'URL per inviare una richiesta a POST
:
Utilizzando un software API come POSTMAN
Una risposta 200
con la Job Entity iniziale indica che la corsa è stata attivata, come mostrato nella schermata seguente:
Utilizzo di cURL
nel terminale
curl -X POST http://localhost:8090/scripts/8925cfd4-2063-4b07-9d56-956f2b754b47/run?token=6ae51c9f-d292-4d55-b512-4537121b37f5
La risposta si presenta come segue
L'esecuzione può essere osservata in SKOOR Dashboard e nella cronologia viene visualizzata l'esecuzione creata da Token-User.
Eliminazione
Fare clic sull'icona del cestino per eliminare lo Script. L'icona appare quando si passa con il puntatore del mouse sul nome dello script.
Esportazione dello Script come Zip
Fare clic sull'icona dell'archivio per esportare lo script. L'icona appare quando si passa con il puntatore del mouse sul nome dello script.