Esegui un flusso di lavoro utilizzando le librerie client
Puoi eseguire un flusso di lavoro e visualizzare i risultati dell'esecuzione utilizzando una libreria client.
Per ulteriori informazioni sull'installazione delle librerie client e sulla configurazione dell'ambiente di sviluppo, consulta la panoramica delle librerie client di Workflows.
Prima di iniziare
I vincoli di sicurezza definiti dalla tua organizzazione potrebbero impedirti di completare i passaggi seguenti. Per informazioni sulla risoluzione dei problemi, vedi Sviluppare applicazioni in un ambiente Google Cloud vincolato.
- Nell'esempio seguente si presuppone che tu abbia già eseguito il deployment del workflow,
myFirstWorkflow
. Se non l'hai ancora fatto, esegui il deployment ora utilizzando la console Google Cloud o Google Cloud CLI. - Scarica e installa lo strumento di gestione del codice sorgente Git.
recupera il codice campione
Clona il repository dell'app di esempio sulla tua macchina locale:
Java
git clone https://github.com/GoogleCloudPlatform/java-docs-samples.git
In alternativa, puoi scaricare l'esempio come file ZIP ed estrarlo.
Node.js
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples.git
In alternativa, puoi scaricare l'esempio come file ZIP ed estrarlo.
Python
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
In alternativa, puoi scaricare l'esempio come file ZIP ed estrarlo.
Passa alla directory che contiene il codice di esempio di Workflows:
Java
cd java-docs-samples/workflows/cloud-client/
Node.js
cd nodejs-docs-samples/workflows/quickstart/
Python
cd python-docs-samples/workflows/cloud-client/
Dai un'occhiata al codice campione:
Java
Node.js
Python
Il programma esegue le seguenti operazioni:
- Configura le librerie client Cloud per Workflows.
- Esegue un flusso di lavoro.
- Esegue il polling dell'esecuzione del flusso di lavoro (utilizzando il backoff esponenziale) fino al termine dell'esecuzione.
- Stampa i risultati dell'esecuzione.
Esegui il sample
Per eseguire il sample, installa prima le dipendenze:
Java
mvn compile
Node.js
npm install
Python
pip3 install -r requirements.txt
Esegui lo script:
Java
GOOGLE_CLOUD_PROJECT=PROJECT_ID LOCATION=CLOUD_REGION WORKFLOW=WORKFLOW_NAME mvn compile exec:java -Dexec.mainClass=com.example.workflows.WorkflowsQuickstart
Node.js
node . PROJECT_ID CLOUD_REGION WORKFLOW_NAME
Python
GOOGLE_CLOUD_PROJECT=PROJECT_ID LOCATION=CLOUD_REGION WORKFLOW=WORKFLOW_NAME python3 main.py
Sostituisci quanto segue:
PROJECT_ID
: (obbligatorio) l'ID progetto del progetto Google CloudCLOUD_REGION
: la posizione del flusso di lavoro (valore predefinito:us-central1
)WORKFLOW_NAME
: l'ID del flusso di lavoro (valore predefinito:myFirstWorkflow
)
L'output è simile al seguente:
Execution finished with state: SUCCEEDED ["Sunday","Sunday in the Park with George","Sunday shopping","Sunday Bloody Sunday","Sunday Times Golden Globe Race","Sunday All Stars","Sunday Night (South Korean TV series)","Sunday Silence","Sunday Without God","Sunday Independent (Ireland)"]
Passare dati in una richiesta di esecuzione
A seconda del linguaggio della libreria client, puoi anche passare un argomento di runtime in una richiesta di esecuzione.
Ad esempio, utilizzando JavaScript:
// Execute workflow
try {
const createExecutionRes = await client.createExecution({
parent: client.workflowPath(projectId, location, workflow),
execution: {
argument: JSON.stringify({"searchTerm": "Friday"})
}
});
const executionName = createExecutionRes[0].name;
In alternativa, utilizza Java:
// Creates the execution object.
CreateExecutionRequest request =
CreateExecutionRequest.newBuilder()
.setParent(parent.toString())
.setExecution(Execution.newBuilder().setArgument("{\"searchTerm\":\"Friday\"}").build())
.build();
Per ulteriori informazioni sul passaggio degli argomenti di runtime, consulta Passare gli argomenti di runtime in una richiesta di esecuzione.
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.
Nella console Google Cloud, vai alla pagina Workflows.
Nell'elenco dei flussi di lavoro, fai clic su un flusso di lavoro per accedere alla pagina Dettagli flusso di lavoro.
Fai clic su
Elimina.Digita il nome del flusso di lavoro e fai clic su Conferma.