Crear un flujo de trabajo con la CLI de gcloud
En esta guía de inicio rápido se muestra cómo crear, desplegar y ejecutar tu primer flujo de trabajo con la CLI de Google Cloud. El flujo de trabajo de ejemplo envía una solicitud a una API pública y, a continuación, devuelve la respuesta de la API.
Para ver una lista de todos los comandos de la CLI de gcloud de Workflows, consulta la página de referencia de la CLI de gcloud de Workflows.
Antes de empezar
Es posible que las restricciones de seguridad definidas por tu organización te impidan completar los pasos que se indican a continuación. Para obtener información sobre cómo solucionar problemas, consulta el artículo Desarrollar aplicaciones en un entorno limitado Google Cloud .
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Install the Google Cloud CLI.
-
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init -
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_IDwith a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_IDwith your Google Cloud project name.
-
Si vas a usar un proyecto que ya tengas para seguir esta guía, verifica que tienes los permisos necesarios para completarla. Si has creado un proyecto, ya tienes los permisos necesarios.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Workflows API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.gcloud services enable workflows.googleapis.com
-
Install the Google Cloud CLI.
-
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
-
Para inicializar gcloud CLI, ejecuta el siguiente comando:
gcloud init -
Create or select a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_IDwith a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_IDwith your Google Cloud project name.
-
Si vas a usar un proyecto que ya tengas para seguir esta guía, verifica que tienes los permisos necesarios para completarla. Si has creado un proyecto, ya tienes los permisos necesarios.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Workflows API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.gcloud services enable workflows.googleapis.com
-
Set up authentication:
-
Ensure that you have the Create Service Accounts IAM role
(
roles/iam.serviceAccountCreator) and the Project IAM Admin role (roles/resourcemanager.projectIamAdmin). Learn how to grant roles. -
Create the service account:
gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
Replace
SERVICE_ACCOUNT_NAMEwith a name for the service account. -
Grant the
roles/logging.logWriterIAM role to the service account:gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" --role=roles/logging.logWriter
Replace the following:
SERVICE_ACCOUNT_NAME: the name of the service accountPROJECT_ID: the project ID where you created the service account
-
Ensure that you have the Create Service Accounts IAM role
(
-
Usuario de cuenta de servicio (
roles/iam.serviceAccountUser) -
Administrador de flujos de trabajo (
roles/workflows.admin) En tu directorio principal, crea un archivo llamado
myFirstWorkflow.yamlomyFirstWorkflow.json.Copia y pega el siguiente flujo de trabajo en el nuevo archivo y, a continuación, guárdalo:
YAML
JSON
A menos que introduzcas tu propio término de búsqueda, este flujo de trabajo usa tuGoogle Cloud ubicación para crear un término de búsqueda, que envía a la API de Wikipedia. Se devuelve una lista de artículos de Wikipedia relacionados.
Despliega el flujo de trabajo y asócialo a la cuenta de servicio especificada:
gcloud workflows deploy myFirstWorkflow --source=myFirstWorkflow.EXTENSION \ --service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.comHaz los cambios siguientes:
EXTENSION: la extensión de archivo de tu flujo de trabajo. Usayamlpara la versión YAML ojsonpara la versión JSON.PROJECT_ID: tu ID de proyecto
Ejecuta el flujo de trabajo:
gcloud workflows run myFirstWorkflow \ --data='SEARCH_TERM'Sustituye
SEARCH_TERMpor el término de búsqueda. Por ejemplo,{"searchTerm":"North"}. Si introduces{}, tu Google Cloud ubicación se utiliza para crear un término de búsqueda.Devuelve los resultados del intento de ejecución. La salida es similar a la siguiente:
argument: '{"searchTerm":"North"}' duration: 0.210616856s endTime: '2023-05-10T21:56:39.465899376Z' name: projects/734581694262/locations/us-central1/workflows/workflow-1/executions/eae31f11-a5c3-47e2-8014-05b400820a79 result: '["North","North America","Northern Ireland","North Korea","North Macedonia","North Carolina","Northrop Grumman B-2 Spirit","Northrop F-5","Northern Cyprus","North Dakota"]' startTime: '2023-05-10T21:56:39.255282520Z' state: SUCCEEDED status: currentSteps: - routine: main step: returnOutput workflowRevisionId: 000001-ac2Elimina el flujo de trabajo que has creado:
gcloud workflows delete myFirstWorkflowCuando se te pregunte si quieres continuar, escribe
y.
Para obtener más información sobre los roles y permisos de las cuentas de servicio, consulta Conceder permiso a un flujo de trabajo para acceder a recursosGoogle Cloud .
Roles obligatorios
Para obtener los permisos que necesitas para completar esta guía de inicio rápido, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en tu proyecto:
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar acceso a proyectos, carpetas y organizaciones.
También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.
Crear, implementar y ejecutar un flujo de trabajo
Has desplegado y ejecutado tu primer flujo de trabajo.
Limpieza
Para evitar que se apliquen cargos en tu Google Cloud cuenta por los recursos utilizados en esta página, elimina el Google Cloud proyecto con los recursos.
El flujo de trabajo se elimina.