Per utilizzare un pacchetto in Dataform, devi installarlo nel tuo repository.
Puoi installare i seguenti tipi di pacchetti in Dataform:
- Pacchetti di Gestione dei partner di rete pubblici pubblicati.
- Pacchetti di Gestione dei partner di rete pubblici non pubblicati.
- Pacchetti di Gestione dei partner di rete privati autenticati.
Poi, per utilizzare il pacchetto in un file JavaScript o SQLX, devi importare nel file i contenuti selezionati del pacchetto. Puoi anche importare un intero pacchetto in un file JavaScript o SQLX, anziché nei contenuti selezionati.
Prima di iniziare
Nella console Google Cloud, vai alla pagina Dataform.
Seleziona o crea un repository.
Seleziona o crea un'area di lavoro di sviluppo.
[Facoltativo] Per installare un pacchetto privato, esegui l'autenticazione del pacchetto privato.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per importare un pacchetto,
chiedi all'amministratore di concederti il ruolo IAM
Editor Dataform (roles/dataform.editor
) per le aree di lavoro.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Installa un pacchetto in un repository Dataform
Per installare un pacchetto all'interno di un repository Dataform, devi aggiungerlo come dipendenza nel file package.json
. Il formato della definizione delle dipendenze nel file package.json
dipende dal tipo di pacchetto. Se
non hai un file package.json
perché il file workflow_settings.yaml
specifica dataformCoreVersion
, rimuovi dataformCoreVersion
da
workflow_settings.yaml
, poi crea un file package.json
e aggiungi
@dataform/core
come dipendenza.
Per installare un pacchetto in un repository Dataform, segui questi passaggi:
- Nel riquadro File dell'area di lavoro, seleziona
package.json
. Aggiungi il pacchetto al blocco
dependencies
:Aggiungi un pacchetto di Gestione dei partner di rete pubblico pubblicato nel seguente formato:
"PACKAGE-NAME": "PACKAGE-VERSION"
Sostituisci quanto segue:
- PACKAGE-NAME con il nome del pacchetto.
- PACKAGE-VERSION con la versione più recente del pacchetto di Gestione dei partner di rete pubblico pubblicato.
Aggiungi un pacchetto di Gestione dei partner di rete pubblico non pubblicato nel seguente formato:
"PACKAGE-NAME": "PACKAGE-URL"
Sostituisci quanto segue:
- PACKAGE-NAME con il nome del pacchetto.
- PACKAGE-URL con l'URL
tar.gz
del repository del pacchetto di terze parti, ad esempiohttps://github.com/user/sample-package-repository/archive/master.tar.gz
.
Aggiungi un pacchetto di Gestione dei partner di rete privato autenticato nel seguente formato:
"REGISTRY-SCOPE/PACKAGE-NAME": "PACKAGE-URL"
Sostituisci quanto segue:
- REGISTRY-SCOPE con il nome del pacchetto.
REGISTRY-SCOPE deve corrispondere all'ambito del registro
definito nel file
.nmprc
del repository. - PACKAGE-NAME con il nome del pacchetto.
- PACKAGE-URL con l'URL
tar.gz
del repository del pacchetto, ad esempiohttps://github.com/user/sample-package-repository/archive/master.tar.gz
.
- REGISTRY-SCOPE con il nome del pacchetto.
REGISTRY-SCOPE deve corrispondere all'ambito del registro
definito nel file
Fai clic su Installa pacchetti.
Esegui il commit ed push delle modifiche.
Il seguente esempio di codice mostra il pacchetto di dimensioni open source pubblico
Aggiunto al file .package.json
in modo lento:
```
{
"name": "repository-name",
"dependencies": {
"@dataform/core": "2.0.3",
"dataform-scd": "https://github.com/dataform-co/dataform-scd/archive/0.3.tar.gz"
}
}
```
Importa una funzione o una costante di pacchetto in un file JavaScript in Dataform
Per utilizzare una funzione o una costante di un pacchetto all'interno di un file JavaScript in Dataform, devi prima importarlo nel file.
Per importare una funzione o una costante da un pacchetto in un file JavaScript, segui questi passaggi:
- Nel riquadro File dell'area di lavoro, seleziona un file
.js
in cui vuoi utilizzare il pacchetto. Nel file, importa una funzione o una costante nel seguente formato:
const { EXPORT-NAME } = require("PACKAGE-NAME");
- Sostituisci EXPORT-NAME con il nome della funzione o della costante che vuoi utilizzare, dichiarata in
module.exports
nel file del pacchettoindex.js
. - Sostituisci PACKAGE-NAME con il nome del pacchetto che vuoi utilizzare.
- Sostituisci EXPORT-NAME con il nome della funzione o della costante che vuoi utilizzare, dichiarata in
Esegui il commit ed push delle modifiche.
Il seguente esempio di codice mostra la funzione getDomain
del pacchetto
postoffice
importato e utilizzato in un file JavaScript:
/*
* Contents of postoffice index.js:
* module.exports = { getDomain };
*/
const { getDomain } = require("postoffice");
getDomain();
Importa un intero pacchetto in un file JavaScript in Dataform
Per importare l'intero pacchetto in un file JavaScript anziché importare funzioni o costanti selezionate in un file JavaScript, procedi nel seguente modo:
- Nel riquadro File dell'area di lavoro, seleziona un file
.js
in cui vuoi utilizzare il pacchetto. Nel file, importa il pacchetto nel seguente formato:
const CONSTANT-NAME = require("PACKAGE-NAME");
- Sostituisci CONSTANT-NAME con il nome della costante.
- Sostituisci PACKAGE-NAME con il nome del pacchetto che vuoi utilizzare.
Esegui il commit ed push delle modifiche.
Il seguente esempio di codice mostra la funzione getDomain
del pacchetto postoffice
importato utilizzato in un file JavaScript:
/*
* Contents of postoffice index.js:
* module.exports = { getDomain };
*/
const postoffice = require("postoffice");
postoffice.getDomain();
Importa una funzione o una costante di pacchetto in un file SQLX in Dataform
Per utilizzare una funzione o una costante di un pacchetto all'interno di un file SQLX, devi prima importarlo nel file.
Per importare una funzione o una costante da un pacchetto in un file SQLX, segui questi passaggi:
- Nel riquadro File dell'area di lavoro, seleziona un file
.sqlx
in cui vuoi utilizzare il pacchetto. Nel file, inserisci il seguente blocco
js
:js { const { EXPORT-NAME } = require("PACKAGE-NAME"); }
- Sostituisci EXPORT-NAME con il nome della funzione o della costante che vuoi utilizzare, dichiarata in
module.exports
nel file del pacchettoindex.js
. - Sostituisci PACKAGE-NAME con il nome del pacchetto che vuoi utilizzare.
- Sostituisci EXPORT-NAME con il nome della funzione o della costante che vuoi utilizzare, dichiarata in
Esegui il commit ed push delle modifiche.
Il seguente esempio di codice mostra la funzione getDomain
del pacchetto postoffice
importato in un blocco js
e utilizzata in un'istruzione SELECT
in un file SQLX:
/*
* Contents of postoffice index.js:
* module.exports = { getDomain };
*/
config {
type: "table",
}
js {
const { getDomain } = require("postoffice");
}
SELECT ${getDomain("email")} as test
Importa un intero pacchetto in un file SQLX in Dataform
Per importare l'intero pacchetto in un file SQLX invece di importare funzioni o costanti selezionate in un file JavaScript, segui questi passaggi:
- Nel riquadro File dell'area di lavoro, seleziona un file
.sqlx
in cui vuoi utilizzare il pacchetto. Nel file, importa il pacchetto nel seguente formato:
js { const CONSTANT-NAME = require("PACKAGE-NAME"); }
- Sostituisci CONSTANT-NAME con il nome della costante.
- Sostituisci PACKAGE-NAME con il nome del pacchetto che vuoi utilizzare.
Esegui il commit ed push delle modifiche.
Il seguente esempio di codice mostra il pacchetto postoffice
importato in un blocco js
e la relativa funzione getDomain
utilizzata in un'istruzione SELECT
in un file SQLX:
/*
* Contents of postoffice index.js:
* module.exports = { getDomain };
*/
config {
type: "table",
}
js {
const postoffice = require("postoffice");
}
SELECT ${postoffice.getDomain("email")} as test
Passaggi successivi
- Per scoprire come autenticare un pacchetto di Gestione dei partner di rete privato in Dataform, consulta Autenticare un pacchetto privato in Dataform.
- Per scoprire di più sui pacchetti in Dataform, consulta Riutilizzare il codice in più repository con pacchetti.
- Per scoprire come creare il tuo pacchetto in Dataform, consulta Creare un pacchetto in Dataform.
- Per scoprire come utilizzare un pacchetto open source in Dataform, consulta Utilizzare la modifica lenta delle dimensioni in Dataform.