Problemas conocidos de Workflows

En esta página, se enumeran los problemas conocidos de Workflows.

También puedes verificar los problemas existentes o abrir problemas nuevos desde la herramienta pública de seguimiento de errores.

Colocación de for directamente después de try

Colocar for justo después de try genera un error. Por ejemplo, se puede colocar un solo paso directamente después de try, como se muestra a continuación:

- try:
    try:
      call: sys.log
      args:
        data: works
    retry: ${http.default_retry}

Sin embargo, si colocas for después de try, el paso falla y no puedes implementar el flujo de trabajo. Por ejemplo:

- try:
    try:
      for:
        value: v
        range: [1,2]
        steps:
          - log:
              call: sys.log
              args:
                data: ${v}
    retry: ${http.default_retry}

Este es el mensaje de error:

Could not deploy workflow: failed to build: error in step try: loop step name should not be empty (Code: 3)

La solución alternativa es agregar un paso con nombre después de try. Por ejemplo:

- try:
    try:
      steps:
        - loopStep:
            for:
              value: v
              range: [1,2]
              steps:
                - log:
                    call: sys.log
                    args:
                      data: ${v}
    retry: ${http.default_retry}

Eventos que superen el tamaño máximo de argumentos

Si usas Workflows como destino para una Activador de Eventarc, eventos superiores al máximo El tamaño de los argumentos de Workflows no activará el flujo de trabajo ejecuciones. Para obtener más información, consulta Cuotas y límites.

HTTP request lost mensaje en los registros

Cuando se ejecuta un flujo de trabajo que llama a Cloud Build, el flujo de trabajo falla y hay un mensaje HTTP request lost en los registros similar al siguiente:

[1500] HTTP request lost
INTERNAL MESSAGE: HTTP request lost
...
CAUSED BY:
RPC::UNREACHABLE: RPC connection timed out: FDD 20s, last read 2022-10-14 16:39:04 -0700 PDT

Si encuentras este error, intenta modificar tu flujo de trabajo implementando un política de reintento o mediante manejo de excepciones.

Registro de llamadas y método accessString para recuperar datos del Secret

Si el nivel de registro de llamadas se establece en log-all-calls cuando se usa el método auxiliar accessString para recuperar datos secretos, el valor secreto no se oculta y se imprime en texto sin formato en los registros de jsonPayload.succeeded.response.

Excepción de operación de larga duración cuando se usa el conector de Cloud Resource Manager

El método conector de Resource Manager, googleapis.cloudresourcemanager.v3.projects.patch, no muestra el nombre de una operación de larga duración (LRO). Incluso para un proyecto exitoso solicitud, se podría generar una excepción similar a la siguiente:

exception: "{"message":"Long-running operation returned unexpected response.",
"operation":{"done":true,"response":{"@type":"type.googleapis.com/google.cloud.resourcemanager.v3.Project",
...
"tags":["ResponseTypeError"]}"

Para evitar un error de sondeo de LRO, configura el parámetro del conector skip_polling en true para que la llamada de invocación del conector no sea de bloqueo si la solicitud inicial se realiza correctamente. Se completó correctamente la solicitud muestra "done":true; De lo contrario, para detectar cualquier excepción, usa un Estructura try/except. Para obtener más información, consulta la Referencia de conectores.

¿Qué sigue?

Aprende estrategias útiles para solucionar problemas.