Per creare un pacchetto che puoi riutilizzare in più repository Dataform, devi creare un repository Dataform dedicato al pacchetto e collegarlo a un repository Git di terze parti per renderlo disponibile ad altri repository Dataform.
Poi, devi creare un file index.js
di primo livello e aggiungere i contenuti del pacchetto esportabili, come funzioni e costanti. Per un esempio
di un pacchetto creato in Dataform, consulta
dataform-package-base
su GitHub.
Una volta creato il pacchetto, puoi installarlo in un altro repository Dataform e utilizzare i contenuti esportabili del pacchetto, come costanti e funzioni, per sviluppare flussi di lavoro SQL.
In alternativa alla creazione di un pacchetto, puoi riutilizzare le funzioni e le costanti JavaScript in un unico repository Dataform con gli include. Per ulteriori informazioni, consulta Riutilizzare il codice in un singolo repository con gli include.
Prima di iniziare
Nella console Google Cloud, vai alla pagina Dataform.
Crea un repository Dataform dedicato al tuo pacchetto. Abbina il nome del repository al nome del pacchetto.
Collega il repository a un repository Git di terze parti che ospiterà il tuo pacchetto.
Crea e inizializza uno spazio di lavoro nel repository Dataform.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare un pacchetto,
chiedi all'amministratore di concederti il ruolo IAM Amministratore Dataform (roles/dataform.admin
) nei repository.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Creare un pacchetto in Dataform
Per creare il tuo pacchetto con codice JavaScript che puoi riutilizzare in Dataform, segui questi passaggi nella tua area di lavoro:
Nel riquadro File, fai clic sul menu
Altro.Fai clic su Crea file.
Nel riquadro Crea nuovo file:
Nel campo Aggiungi un percorso del file, inserisci
index.js
.Fai clic su Crea file.
Nel file
index.js
, inserisci il codice JavaScript che vuoi esportare nel pacchetto.Crea le costanti nel seguente formato:
const CONSTANT_NAME = CONSTANT_VALUE; module.exports = { CONSTANT_NAME };
Sostituisci quanto segue:
CONSTANT_NAME
: il nome della costanteCONSTANT_VALUE
: il valore della costante
Crea le funzioni nel seguente formato:
function FUNCTION_NAME(PARAMETERS) { FUNCTION_BODY } module.exports = { FUNCTION_NAME }
Sostituisci quanto segue:
FUNCTION_NAME
: il nome della funzionePARAMETERS
: i parametri della funzioneFUNCTION_BODY
: il codice che vuoi che la funzione esegua
(Facoltativo) Fai clic su Formato.
(Facoltativo) Nella directory
definitions
, aggiungi il codice del pacchetto che non verrà estratto.Esegui il commit e push le modifiche.
Il seguente esempio di codice del pacchetto mostra il file index.js
del
postoffice
pacchetto che esporta la funzione getDomain
:
// filename index.js
// package name postoffice
const GENERIC_DOMAINS = "('samplemail.com','samplemail.co.uk','examplemailbox.com'";
function getDomain(email) {
let cleanEmail = `trim(${email})`
const domain = `substr(${cleanEmail}, strpos(${cleanEmail}, '@') + 1)`;
return `case
when ${domain} in ${common.GENERIC_DOMAINS} then ${cleanEmail}
when ${domain} = "othermailbox.com" then "other.com"
when ${domain} = "mailbox.com" then "mailbox.global"
when ${domain} = "support.postman.com" then "postman.com"
else ${domain}
end`;
}
module.exports = { getDomain }
Passaggi successivi
- Per scoprire come installare il pacchetto in un repository e importarne i contenuti in file JavaScript o SQLX, consulta Installare un pacchetto in Dataform.
- Per scoprire di più sui pacchetti in Dataform, consulta Riutilizzare il codice in più repository con i pacchetti.
- Per scoprire come scrivere variabili e funzioni JavaScript che puoi riutilizzare in Dataform, consulta Riutilizzare il codice in un singolo repository con gli include.