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.
Gli Script sono suddivisi in 3 tipi principali: Python, Talend e personalizzati.
Pagina degli Script
La pagina è suddivisa in tre sezioni principali:
Impostazioni
Questa sezione include le impostazioni generali di uno Script, quali:
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. Questo decide il tipo di Script:
Per gli Script Python: è un file
main.py
.Per Talend Script: è un file
<scriptName>_run.sh
.Per gli Script personalizzati: è un file
run.sh
.
Si noti che il tipo di Script non può essere modificato dopo la creazione. È possibile farlo solo creando un nuovo Script.
.env
È un semplice file di testo che include le variabili di 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 utilizzando 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
QuickRun
Questa opzione offre un pulsante QuickRun
che esegue lo script senza 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.
Struttura dello Script
Il file Zip caricato deve avere una sola cartella nella radice, con lo stesso nome del file di archivio Zip.
Lo script di esecuzione dovrebbe essere preferibilmente nella radice della cartella dello script e del file .env.
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.
Panoramica del lavoro
Per visualizzare i dettagli completi di un lavoro, fare clic su una voce dell'elenco Cronologia, come mostrato di seguito:
Cronologia delle corse
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 di uno 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.