Se usó la API de Cloud Translation para traducir esta página.
Switch to English

Guía de inicio rápido: Usa bibliotecas cliente

En esta guía de inicio rápido, se muestra cómo ejecutar un flujo de trabajo y ver los resultados de la ejecución con una biblioteca cliente. En el ejemplo, se supone que implementaste el flujo de trabajo, myFirstWorkflow mediante Cloud Console o la herramienta de línea de comandos de gcloud primero.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyecto

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Cloud. Descubre cómo confirmar que tienes habilitada la facturación en un proyecto.

  4. Habilita la API de Workflows.

    Habilitar la API de Workflows
  5. En Cloud Console, ve a la página Cuentas de servicio.

    Ir a la página Crear cuenta de servicio
  6. Selecciona Crear cuenta de servicio.
  7. Ingresa un nombre en el campo Nombre de cuenta de servicio.
  8. Haga clic en Crear.
  9. En la lista Función, selecciona Logging > Escritor de registros.

    Nota: El campo Función autoriza a tu cuenta de servicio para acceder a los recursos. Para enviar registros a Cloud Logging, asigna la función roles/logging.logWriter. Si desarrollas una app de producción, otorga siempre las funciones menos permisivas posibles. Para obtener más información, consulta asigna funciones a cuentas de servicio. Si deseas obtener una lista de las funciones de flujos de trabajo, consulta la referencia de control de acceso.
  10. Haga clic en Continuar.
  11. Haga clic en Listo.

Obtenga el código de muestra

  1. Clona el repositorio de muestra en tu máquina local:

    git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples.git

    De manera opcional, puedes descargar la muestra como un archivo ZIP y extraerla.

  2. Ve al directorio que contiene el código de muestra de Cloud Functions:

    cd nodejs-docs-samples/workflows/quickstart/
  3. Revisa el código de muestra:

    const {ExecutionsClient} = require('@google-cloud/workflows');
    const client = new ExecutionsClient();
    
    /**
     * Sleeps the process N number of milliseconds.
     * @param {Number} ms The number of milliseconds to sleep.
     */
    function sleep(ms) {
      return new Promise(resolve => {
        setTimeout(resolve, ms);
      });
    }
    
    // Execute workflow
    try {
      const createExecutionRes = await client.createExecution({
        parent: client.workflowPath(projectId, location, workflow),
      });
      const executionName = createExecutionRes[0].name;
      console.log(`Created execution: ${executionName}`);
    
      // Wait for execution to finish, then print results.
      let executionFinished = false;
      let backoffDelay = 1000; // Start wait with delay of 1,000 ms
      console.log('Poll every second for result...');
      while (!executionFinished) {
        const [execution] = await client.getExecution({
          name: executionName,
        });
        executionFinished = execution.state !== 'ACTIVE';
    
        // If we haven't seen the result yet, wait a second.
        if (!executionFinished) {
          console.log('- Waiting for results...');
          await sleep(backoffDelay);
          backoffDelay *= 2; // Double the delay to provide exponential backoff.
        } else {
          console.log(`Execution finished with state: ${execution.state}`);
          console.log(execution.result);
          return execution.result;
        }
      }
    } catch (e) {
      console.error(`Error executing workflow: ${e}`);
    }

El programa hace lo siguiente:

  1. Configura las bibliotecas cliente de flujos de trabajo.
  2. Ejecuta un flujo de trabajo.
  3. Consulta la ejecución del flujo de trabajo (con la retirada exponencial) hasta que finalice la ejecución.
  4. Imprime los resultados de la ejecución.

Instale dependencias

npm install

Ejecuta la muestra

Para ejecutar la muestra, ejecuta la siguiente secuencia de comandos:

node . PROJECT_ID [CLOUD_REGION] [WORKFLOW_NAME]

Reemplaza los siguientes argumentos de la línea de comandos:

  • PROJECT_ID (obligatorio): Es el ID del proyecto de Cloud Platform.
  • CLOUD_REGION: Ubicación de Cloud para el flujo de trabajo (predeterminado: us-central1)
  • WORKFLOW_NAME: ID del flujo de trabajo (valor predeterminado: myFirstWorkflow)

Por ejemplo:

node . my-custom-project us-central1 userSignupWorkflow

Salida de ejemplo:

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)"]

Limpia

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta guía de inicio rápido.

  1. Ve a la página Flujos de trabajo en Cloud Console.
    Flujos de trabajo

  2. Selecciona el botón Borrar.

  3. En el indicador que aparece, ingresa el nombre del flujo de trabajo.

  4. Selecciona Borrar.

¿Qué sigue?