Solución de problemas con los flujos de trabajo - Amazon CodeCatalyst

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Solución de problemas con los flujos de trabajo

Consulta las siguientes secciones para solucionar problemas relacionados con los flujos de trabajo en Amazon CodeCatalyst. Para obtener más información acerca de los flujos de trabajo, consulte Cree, pruebe e implemente con flujos de trabajo en CodeCatalyst.

¿Cómo puedo corregir los mensajes que dicen que el flujo de trabajo está inactivo?

Problema: en la CodeCatalyst consola, en CI/CD, Flujos de trabajo, su flujo de trabajo aparece con el siguiente mensaje:

Workflow is inactive.

Este mensaje indica que el archivo de definición del flujo de trabajo contiene un activador que no se aplica a la rama en la que se encuentra actualmente. Por ejemplo, el archivo de definición de flujo de trabajo puede contener un PUSH disparador que haga referencia a su main rama, pero usted se encuentra en una rama de características. Como los cambios que realizas en la rama de entidades no se aplican a main la rama de funciones ni iniciarán las ejecuciones en ellamain, retira CodeCatalyst el flujo de trabajo de la rama y lo marca como talInactive.

Soluciones posibles:

Si quieres iniciar un flujo de trabajo en tu rama de funciones, puedes hacer lo siguiente:

  • En la rama de entidades, en el archivo de definición del flujo de trabajo, elimina la Branches propiedad de la Triggers sección para que tenga el siguiente aspecto:

    Triggers: - Type: PUSH

    Esta configuración hace que el activador se active cuando se envía a cualquier rama, incluida la rama de funciones. Si el activador está activado, CodeCatalyst iniciará la ejecución de un flujo de trabajo con el archivo de definición del flujo de trabajo y los archivos fuente de la rama a la que esté accediendo.

  • En la rama de funciones, en el archivo de definición del flujo de trabajo, elimina la Triggers sección y ejecuta el flujo de trabajo manualmente.

  • En la rama de entidades, en el archivo de definición del flujo de trabajo, cambia la PUSH sección para que haga referencia a la rama de entidades en lugar de a otra rama (por ejemplo). main

importante

Tenga cuidado de no realizar estos cambios si no tiene intención de fusionarlos para volver a formar parte de su main rama.

Para obtener más información sobre la edición del archivo de definición del flujo de trabajo, consulteCreación de un flujo de trabajo.

Para obtener más información acerca de los disparadores, consulte Iniciar un flujo de trabajo, ejecutarlo automáticamente con activadores.

¿Cómo puedo corregir los errores «La definición de flujo de trabajo no tiene errores»?

Problema: aparece alguno de los siguientes mensajes de error:

Error 1:

En la página de flujos de trabajo de CI/CD, debajo del nombre de su flujo de trabajo, verá:

Workflow definition has n errors

Error 2:

Al editar un flujo de trabajo, se pulsa el botón Validar y aparece el siguiente mensaje en la parte superior de la CodeCatalyst consola:

The workflow definition has errors. Fix the errors and choose Validate to verify your changes.

Error 3:

Tras acceder a la página de detalles del flujo de trabajo, aparece el siguiente error en el campo de definición del flujo de trabajo:

n errors

Soluciones posibles:

  • Elija CI/CD, elija Flujos de trabajo y elija el nombre del flujo de trabajo que contiene el error. En el campo de definición del flujo de trabajo, situado cerca de la parte superior, selecciona el enlace al error. Los detalles sobre el error aparecen en la parte inferior de la página. Sigue los consejos de solución de problemas que aparecen en el error para solucionar el problema.

  • Asegúrese de que el archivo de definición del flujo de trabajo sea un archivo YAML.

  • Asegúrese de que las propiedades YAML del archivo de definición del flujo de trabajo estén anidadas en el nivel correcto. Para ver cómo deben anidarse las propiedades en el archivo de definición del flujo de trabajo, consulte la documentación de la Definición de flujo de trabajo YAML acción o consulte la misma, a la que se puede acceder desde. Añadir una acción a un CodeCatalyst flujo de trabajo

  • Asegúrese de que los asteriscos (*) y otros caracteres especiales estén bien alineados. Para evitarlos, añada comillas simples o dobles. Por ejemplo:

    Outputs: Artifacts: - Name: myartifact Files: - "**/*"

    Para obtener más información sobre los caracteres especiales del archivo de definición del flujo de trabajo, consultePautas y convenciones de sintaxis.

  • Asegúrese de que las propiedades YAML del archivo de definición del flujo de trabajo utilicen las mayúsculas correctas. Para obtener más información sobre las reglas de uso de mayúsculas, consulte. Pautas y convenciones de sintaxis Para determinar la carcasa correcta de cada propiedad, consulte o consulte la Definición de flujo de trabajo YAML documentación de su acción, que está vinculada aAñadir una acción a un CodeCatalyst flujo de trabajo.

  • Asegúrese de que la SchemaVersion propiedad esté presente y configurada en la versión correcta en el archivo de definición del flujo de trabajo. Para obtener más información, consulte SchemaVersion.

  • Asegúrese de que la Triggers sección del archivo de definición del flujo de trabajo incluya todas las propiedades necesarias. Para determinar las propiedades requeridas, elija el activador en el editor visual y busque los campos en los que falte información, o consulte la documentación de referencia del activador enTriggers.

  • Asegúrese de que la DependsOn propiedad del archivo de definición del flujo de trabajo esté configurada correctamente y no introduzca dependencias circulares. Para obtener más información, consulte Configurar acciones para que dependan de otras acciones.

  • Asegúrese de que la Actions sección del archivo de definición del flujo de trabajo incluya al menos una acción. Para obtener más información, consulte Acciones.

  • Asegúrese de que cada acción incluya todas las propiedades obligatorias. Para determinar las propiedades obligatorias, elija la acción en el editor visual y busque los campos en los que falte información, o consulte la documentación de la acción, que está vinculada desdeAñadir una acción a un CodeCatalyst flujo de trabajo.

  • Asegúrese de que todos los artefactos de entrada tengan los artefactos de salida correspondientes. Para obtener más información, consulte Definir un artefacto de salida.

  • Asegúrese de que las variables definidas en una acción se exporten para poder utilizarlas en otras acciones. Para obtener más información, consulte Exportar una variable para que otras acciones puedan utilizarla.

¿Cómo puedo corregir los errores «No se pueden localizar las credenciales» y ExpiredToken «»?

Problema: Mientras lo solucionasTutorial: Implementación de una aplicación en Amazon EKS, ves uno o ambos de los siguientes mensajes de error en la ventana del terminal de tu máquina de desarrollo:

Unable to locate credentials. You can configure credentials by running "aws configure".

ExpiredToken: The security token included in the request is expired

Soluciones posibles:

Estos errores indican que las credenciales que utilizas para acceder a AWS los servicios han caducado. En este caso, no ejecute el aws configure comando. En su lugar, siga las instrucciones siguientes para actualizar la clave de AWS acceso y el token de sesión.

Para actualizar la clave de AWS acceso y el token de sesión
  1. Asegúrese de tener la URL del portal de AWS acceso, el nombre de usuario y la contraseña del usuario que está utilizando en el tutorial completo de Amazon EKS (codecatalyst-eks-user). Debería haber configurado estos elementos cuando completó Paso 1: Configura tu máquina de desarrollo el tutorial.

    nota

    Si no dispone de esta información, vaya a la página de codecatalyst-eks-user detalles del Centro de Identidad de IAM, seleccione Restablecer la contraseña, Generar una contraseña de un solo uso [...] y vuelva a restablecer la contraseña para que aparezca la información en la pantalla.

  2. Realice una de las siguientes acciones siguientes:

    • Pegue la URL del portal de AWS acceso en la barra de direcciones de su navegador.

      Or (Disyunción)

    • Actualice la página del portal de AWS acceso si ya está cargada.

  3. Inicie sesión con el nombre codecatalyst-eks-user de usuario y la contraseña, si aún no lo ha hecho.

  4. Elija y Cuenta de AWS, a continuación, elija el nombre del usuario Cuenta de AWS al que ha asignado el conjunto de permisos y el codecatalyst-eks-user usuario.

  5. Junto al nombre del conjunto de permisos (codecatalyst-eks-permission-set), elija Línea de comandos o Acceso mediante programación.

  6. Copie los comandos que se encuentran en el centro de la página. Tienen un aspecto similar al siguiente:

    export AWS_ACCESS_KEY_ID="AKIAIOSFODNN7EXAMPLE" export AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" export AWS_SESSION_TOKEN="session-token"

    ... donde session-token es una cadena aleatoria larga.

  7. Pegue los comandos en el indicador del terminal de su máquina de desarrollo y presione Entrar.

    Se cargan las nuevas claves y el token de sesión.

    Ya ha actualizado sus credenciales. Los kubectl comandos AWS CLIeksctl, y deberían funcionar ahora.

¿Cómo puedo corregir los errores «No se puede conectar al servidor»?

Problema: Mientras trabaja en el tutorial descrito enTutorial: Implementación de una aplicación en Amazon EKS, verá un mensaje de error similar al siguiente en la ventana del terminal de su máquina de desarrollo:

Unable to connect to the server: dial tcp: lookup long-string.gr7.us-west-2.eks.amazonaws.com on 1.2.3.4:5: no such host

Soluciones posibles:

Este error suele indicar que las credenciales que utiliza la kubectl utilidad para conectarse al clúster de Amazon EKS han caducado. Para resolver el problema, actualice las credenciales introduciendo el siguiente comando en la línea de comandos del terminal:

aws eks update-kubeconfig --name codecatalyst-eks-cluster --region us-west-2

Donde:

  • codecatalyst-eks-clusterse sustituye por el nombre de su clúster de Amazon EKS.

  • us-west-2 se sustituye por la región en la que está AWS desplegado el clúster.

¿Por qué faltan CodeDeploy campos en el editor visual?

Problema: está utilizando una acción de implementación en Amazon ECS y no ve los CodeDeploy campos, como CodeDeploy AppSpecen el editor visual del flujo de trabajo. Este problema puede deberse a que el servicio Amazon ECS que especificó en el campo Servicio no está configurado para realizar despliegues en azul o verde.

Soluciones posibles:

¿Cómo puedo corregir los errores de las capacidades de IAM?

Problema: estás utilizando una acción de despliegue de AWS CloudFormation pila y la ves ##[error] requires capabilities: [capability-name] en los registros de la acción de despliegue de AWS CloudFormation pila.

Posibles soluciones: complete el siguiente procedimiento para añadir la capacidad al archivo de definición del flujo de trabajo. Para obtener más información sobre las capacidades de IAM, consulte Reconocimiento de los recursos de IAM en AWS CloudFormation las plantillas de la Guía del usuario de IAM.

Visual
Para añadir una capacidad de IAM mediante el editor visual
  1. Abra la CodeCatalyst consola en https://codecatalyst.aws/.

  2. Elija el proyecto.

  3. En el panel de navegación, elija CI/CD y, a continuación, elija Flujos de trabajo.

  4. Elija el nombre de su flujo de trabajo. Puede filtrar por el nombre del repositorio o la rama de origen donde está definido el flujo de trabajo, o bien filtrar por el nombre del flujo de trabajo.

  5. Elija Editar.

  6. Elija Visual.

  7. En el diagrama de flujo de trabajo, elige la acción Implementar AWS CloudFormation pila.

  8. Elija la pestaña Configuración.

  9. En la parte inferior, selecciona Avanzado (opcional).

  10. En la lista desplegable de capacidades, seleccione la casilla de verificación situada junto a la capacidad mencionada en el mensaje de error. Si la capacidad no está disponible en la lista, usa el editor YAML para añadirla.

  11. (Opcional) Selecciona Validar para validar el código YAML del flujo de trabajo antes de confirmarlo.

  12. Selecciona Confirmar, introduce un mensaje de confirmación y vuelve a seleccionar Confirmar.

  13. Si la ejecución de un nuevo flujo de trabajo no se inicia automáticamente, ejecútelo manualmente para comprobar si los cambios corrigen el error. Para obtener más información sobre la ejecución manual de un flujo de trabajo, consulteIniciar un flujo de trabajo: ejecutar manualmente.

YAML
Para añadir una función de IAM mediante el editor YAML
  1. Abra la CodeCatalyst consola en https://codecatalyst.aws/.

  2. Elija el proyecto.

  3. En el panel de navegación, elija CI/CD y, a continuación, elija Flujos de trabajo.

  4. Elija el nombre de su flujo de trabajo. Puede filtrar por el nombre del repositorio o la rama de origen donde está definido el flujo de trabajo, o bien filtrar por el nombre del flujo de trabajo.

  5. Elija Editar.

  6. Elige YAML.

  7. En la acción Implementar AWS CloudFormation pila, añade una capabilities propiedad, como esta:

    DeployCloudFormationStack: Configuration: capabilities: capability-name

    Sustituya el nombre de la capacidad de IAM por el nombre de la capacidad de IAM que aparece en el mensaje de error. Utilice comas y sin espacios para enumerar varias capacidades. Para obtener más información, consulte la descripción de la capabilities propiedad en. Definición de YAML de la acción «Implementar AWS CloudFormation pila»

  8. (Opcional) Elija Validar para validar el código YAML del flujo de trabajo antes de confirmarlo.

  9. Selecciona Confirmar, introduce un mensaje de confirmación y vuelve a seleccionar Confirmar.

  10. Si la ejecución de un nuevo flujo de trabajo no se inicia automáticamente, ejecútelo manualmente para comprobar si los cambios corrigen el error. Para obtener más información sobre la ejecución manual de un flujo de trabajo, consulteIniciar un flujo de trabajo: ejecutar manualmente.

¿Cómo puedo corregir los errores de «npm install»?

Problema: la acción de AWS CDK despliegue o la acción de AWS CDK arranque fallan y se produce un error. npm install Este error puede producirse porque estás almacenando las dependencias de tu AWS CDK aplicación en un registro de administrador de paquetes de nodos privados (npm) al que no se puede acceder mediante la acción.

Posibles soluciones: sigue las siguientes instrucciones para actualizar el cdk.json archivo de tu AWS CDK aplicación con información adicional de registro y autenticación.

Antes de empezar
  1. Crea secretos para tu información de autenticación. Hará referencia a estos secretos en el cdk.json archivo en lugar de proporcionar los equivalentes en texto claro. Para crear los secretos:

    1. Abre la CodeCatalyst consola en https://codecatalyst.aws/.

    2. Elija el proyecto.

    3. En el panel de navegación, elija CI/CD y, a continuación, Secretos.

    4. Cree dos secretos con las siguientes propiedades:

      Primer secreto Segundo secreto

      Nombre: npmUsername

      Valor: npm-username, donde npm-username es el nombre de usuario que se utiliza para autenticarse en su registro npm privado.

      (Opcional) Descripción: The username used to authenticate to the private npm registry.

      Nombre: npmAuthToken

      Valor: npm-auth-token, donde npm-auth-tokense encuentra el token de acceso que se utiliza para autenticarse en su registro npm privado. Para obtener más información sobre los tokens de acceso de npm, consulta Acerca de los tokens de acceso en la documentación de npm.

      Descripción (opcional): The access token used to authenticate to the private npm registry.

      Para obtener más información sobre los secretos, consulteConfiguración y uso de secretos en un flujo de trabajo.

  2. Añada los secretos como variables de entorno a su AWS CDK acción. La acción reemplazará las variables por valores reales cuando se ejecute. Para añadir los secretos:

    1. En el panel de navegación, elija CI/CD y, a continuación, elija Flujos de trabajo.

    2. Elija el nombre de su flujo de trabajo. Puede filtrar por el nombre del repositorio o la rama de origen donde está definido el flujo de trabajo, o bien filtrar por el nombre del flujo de trabajo.

    3. Elija Editar.

    4. Elija Visual.

    5. En el diagrama de flujo de trabajo, elige tu AWS CDK acción.

    6. Seleccione la pestaña Entradas.

    7. Añada dos variables con las siguientes propiedades:

      Primera variable Segunda variable

      Nombre: NPMUSER

      Valor: ${Secrets.npmUsername}

      Nombre: NPMTOKEN

      Valor: ${Secrets.npmAuthToken}

      Ahora tiene dos variables que contienen referencias a secretos.

    El código YAML del archivo de definición de flujo de trabajo debería tener un aspecto similar al siguiente:

    nota

    El siguiente ejemplo de código proviene de una acción de AWS CDK arranque; una acción de AWS CDK despliegue tendrá un aspecto similar.

    Name: CDK_Bootstrap_Action SchemaVersion: 1.0 Actions: CDKBootstrapAction: Identifier: aws/cdk-bootstrap@v1 Inputs: Variables: - Name: NPMUSER Value: ${Secrets.npmUsername} - Name: NPMTOKEN Value: ${Secrets.npmAuthToken} Sources: - WorkflowSource Environment: Name: Dev2 Connections: - Name: account-connection Role: codecatalystAdmin Configuration: Parameters: Region: "us-east-2"

    Ahora está listo para usar las NPMTOKEN variables NPMUSER y del cdk.json archivo. Vaya al siguiente procedimiento.

Para actualizar el archivo cdk.json
  1. Cambia al directorio raíz de tu AWS CDK proyecto y abre el cdk.json archivo.

  2. Busque la "app": propiedad y cámbiela para incluir el código que aparece en cursiva roja:

    nota

    El siguiente código de ejemplo proviene de un TypeScript proyecto. Si utilizas un JavaScript proyecto, el código tendrá un aspecto similar, aunque no idéntico.

    { "app": "npm set registry=https://your-registry/folder/CDK-package/ --userconfig .npmrc && npm set //your-registry/folder/CDK-package/:always-auth=true --userconfig .npmrc && npm set //your-registry/folder/CDK-package/:_authToken=\"${NPMUSER}\":\"${NPMTOKEN}\" && npm install && npx ts-node --prefer-ts-exts bin/hello-cdk.ts|js", "watch": { "include": [ "**" ], "exclude": [ "README.md", "cdk*.json", "**/*.d.ts", "**/*.js", "tsconfig.json", "package*.json", ...
  3. En el código resaltado en cursiva roja, sustituya:

    • Your-registry/folder/CDK-Package/ por la ruta a las dependencias de su proyecto en su registro privado. AWS CDK

    • hello-cdk.ts|.js con el nombre de tu archivo de punto de entrada. Puede ser un archivo .ts (TypeScript) o .js (JavaScript) según el idioma que utilices.

      nota

      La acción sustituirá las variables NPMUSER y NPMTOKEN por el nombre de usuario y el token de acceso de npm que especificaste en Secrets.

  4. Guarde el archivo cdk.json.

  5. Vuelve a ejecutar la acción manualmente para comprobar si los cambios corrigen el error. Para obtener más información sobre la ejecución manual de acciones, consulteIniciar un flujo de trabajo: ejecutar manualmente.

¿Por qué varios flujos de trabajo tienen el mismo nombre?

Los flujos de trabajo se almacenan por rama y repositorio. Dos flujos de trabajo diferentes pueden tener el mismo nombre si existen en ramas diferentes. En la página Flujos de trabajo, puede diferenciar los flujos de trabajo del mismo nombre consultando el nombre de la rama. Para obtener más información, consulte Cómo organizar tu trabajo con el código fuente con las sucursales de Amazon CodeCatalyst.

rama de flujo de trabajo

¿Puedo almacenar mis archivos de definición de flujo de trabajo en otra carpeta?

No, debe almacenar todos los archivos de definición de flujos de trabajo en la .codecatalyst/workflows carpeta. Si utiliza un repositorio mono con varios proyectos lógicos, coloque todos los archivos de definición de flujo de trabajo en la .codecatalyst/workflows carpeta y, a continuación, utilice la FilesChanged propiedad dentro de un disparador para activar el flujo de trabajo en una ruta de proyecto específica. Para obtener más información, consulte Iniciar un flujo de trabajo, ejecutarlo automáticamente con activadores.

¿Cómo puedo añadir acciones secuencialmente a mi flujo de trabajo?

De forma predeterminada, cuando añadas una acción a tu flujo de trabajo, no tendrá dependencias y se ejecutará en paralelo con otras acciones.

Si desea organizar las acciones en secuencia, puede establecer una dependencia de otra acción configurando el DependsOn campo. También puedes configurar una acción para que consuma artefactos o variables que sean el resultado de otras acciones. Para obtener más información, consulte Configurar acciones para que dependan de otras acciones.

¿Por qué mi flujo de trabajo se valida correctamente pero falla en tiempo de ejecución?

Si validó su flujo de trabajo con el Validate botón, pero el flujo de trabajo falló de todos modos, podría deberse a una limitación en el validador.

Los errores relacionados con un CodeCatalyst recurso, como secretos, entornos o flotas, en la configuración del flujo de trabajo no se registrarán durante la confirmación. Si se utiliza alguna referencia que no sea válida, el error solo se identificará cuando se ejecute un flujo de trabajo. Del mismo modo, si hay algún error en la configuración de la acción, como la falta de un campo obligatorio o errores tipográficos en los atributos de la acción, solo se identificará cuando se ejecute el flujo de trabajo. Para obtener más información, consulte Creación de un flujo de trabajo.

La detección automática no detecta ningún informe sobre mi acción

Problema: configuré la detección automática para una acción que ejecuta pruebas, pero no detecta ningún informe. CodeCatalyst

Posibles soluciones: esto puede deberse a varios problemas. Pruebe una o más de las siguientes soluciones:

  • Asegúrese de que la herramienta utilizada para ejecutar las pruebas produzca resultados en uno de los formatos más CodeCatalyst adecuados. Por ejemplo, si desea pytest CodeCatalyst permitir la detección de informes de cobertura de código y pruebas, incluya los siguientes argumentos:

    --junitxml=test_results.xml --cov-report xml:test_coverage.xml

    Para obtener más información, consulte Tipos de informes de calidad.

  • Asegúrese de que la extensión del archivo de salida sea coherente con el formato elegido. Por ejemplo, al configurar pytest para producir resultados en JUnitXML formato, compruebe que la extensión del archivo sea.xml. Para obtener más información, consulte Tipos de informes de calidad.

  • Asegúrese de que IncludePaths está configurado para incluir todo el sistema de archivos (**/*), a menos que excluya determinadas carpetas a propósito. Del mismo modo, asegúrese de ExcludePaths no excluir los directorios en los que espera que estén ubicados sus informes.

  • Si configuró manualmente un informe para usar un archivo de salida específico, se excluirá de la detección automática. Para obtener más información, consulte Ejemplo de Quality Reports (YAML).

  • Es posible que la detección automática no encuentre los informes porque la acción falló antes de que se generara ningún resultado. Por ejemplo, es posible que la compilación haya fallado antes de ejecutar las pruebas unitarias.

Mi acción falla en los informes detectados automáticamente después de configurar los criterios de éxito

Problema: cuando habilito la detección automática y configuro los criterios de éxito, algunos de los informes no cumplen los criterios de éxito y, como resultado, la acción falla.

Posibles soluciones: para solucionar este problema, pruebe una o varias de las siguientes soluciones:

  • ExcludePathsModifique IncludePaths o excluya los informes que no le interesen.

  • Actualice los criterios de éxito para permitir que se aprueben todos los informes. Por ejemplo, si se detectaron dos informes, uno con una cobertura de líneas del 50% y otro del 70%, ajuste la cobertura mínima de líneas al 50%. Para obtener más información, consulte Criterios correctos.

  • Convierta el informe defectuoso en un informe configurado manualmente. Esto le permite configurar diferentes criterios de éxito para ese informe específico. Para obtener más información, consulte Configurar los criterios de éxito de los informes.

La detección automática genera informes que no deseo

Problema: cuando habilito la detección automática, se generan informes que no deseo. Por ejemplo, CodeCatalyst genera informes de cobertura de código para los archivos incluidos en las dependencias de mi aplicación almacenados en. node_modules

Posibles soluciones: puede ajustar la ExcludePaths configuración para excluir los archivos no deseados. Por ejemplo, para excluirnode_modules, añadanode_modules/**/*. Para obtener más información, consulte Incluir/excluir rutas.

La detección automática genera muchos informes pequeños para un único marco de pruebas

Problema: Cuando utilizo ciertos marcos de informes de cobertura de código y pruebas, observé que la detección automática genera una gran cantidad de informes. Por ejemplo, cuando se utiliza el complemento Maven Surefire, la detección automática produce un informe diferente para cada clase de prueba.

Posibles correcciones: es posible que su marco pueda agregar los resultados en un solo archivo. Por ejemplo, si está utilizando el complemento Maven Surefire, puede usarlo npx junit-merge para agregar los archivos manualmente. La expresión completa puede tener este aspecto:

mvn test; cd test-package-path/surefire-reports && npx junit-merge -d ./ && rm *Test.xml

Los flujos de trabajo enumerados en CI/CD no coinciden con los del repositorio de origen

Problema: los flujos de trabajo que aparecen en la página Flujos de trabajo de CI/CD no coinciden con los de la ~/.codecatalyst/workflows/ carpeta del repositorio de origen. Es posible que vea las siguientes discrepancias:

  • En la página Flujos de trabajo aparece un flujo de trabajo, pero el archivo de definición de flujo de trabajo correspondiente no existe en el repositorio de origen.

  • Existe un archivo de definición de flujo de trabajo en el repositorio de origen, pero el flujo de trabajo correspondiente no aparece en la página Flujos de trabajo.

  • Existe un flujo de trabajo tanto en el repositorio de origen como en la página de flujos de trabajo, pero ambos son diferentes.

Este problema puede producirse si la página de flujos de trabajo no ha tenido tiempo de actualizarse o si se ha superado una cuota de flujo de trabajo.

Soluciones posibles:

  • Espera. Por lo general, tienes que esperar dos o tres segundos después de confirmarlo en la fuente antes de ver el cambio en la página de flujos de trabajo.

  • Si has superado una cuota de flujo de trabajo, realiza una de las siguientes acciones:

    nota

    Para determinar si se ha superado una cuota de flujo de trabajoCuotas para flujos de trabajo, revisa y coteja las cuotas documentadas con los flujos de trabajo de tu repositorio de origen o de la página Flujos de trabajo. No hay ningún mensaje de error que indique que se ha superado una cuota, por lo que tendrás que investigar por tu cuenta.

    • Si has superado el número máximo de flujos de trabajo por cuota de espacio, elimina algunos flujos de trabajo y, a continuación, realiza una comprobación comparándolos con el archivo de definición del flujo de trabajo. Un ejemplo de confirmación de prueba podría ser añadir un espacio al archivo.

    • Si has superado la cuota máxima de tamaño de archivo de definición de flujo de trabajo, cambia el archivo de definición de flujo de trabajo para reducir su longitud.

    • Si ha superado la cantidad máxima de archivos de flujo de trabajo procesados en una sola cuota de eventos de origen, realice varias confirmaciones de prueba. Modifique menos flujos de trabajo que el número máximo de flujos de trabajo en cada confirmación.

    • Aumenta las cuotas de flujo de trabajo activando la facturación por niveles de pago. Para obtener más información, consulta Gestión de la facturación en la Guía del CodeCatalyst administrador de Amazon.

No puedo crear ni actualizar flujos de trabajo

Problema: quiero crear o actualizar un flujo de trabajo, pero aparece un error al intentar realizar el cambio.

Posibles soluciones: en función de tu función en el proyecto o espacio, es posible que no tengas permisos para insertar código en los repositorios de código fuente del proyecto. Los archivos YAML de los flujos de trabajo se almacenan en repositorios. Para obtener más información, consulte Archivos de definición del flujo de trabajo. El rol de administrador de Space, el rol de administrador de proyectos y el rol de colaborador tienen permiso para enviar y enviar código a los repositorios de un proyecto.

Si tienes la función de colaborador, pero no puedes crear o confirmar cambios en el flujo de trabajo de YAML en una rama específica, es posible que haya una regla de ramificación configurada para esa rama que impida a los usuarios con esa función enviar código a esa rama concreta. Intenta crear un flujo de trabajo en una rama diferente o confirmar los cambios en una rama diferente. Para obtener más información, consulte Gestione las acciones permitidas para una sucursal con las reglas de la sucursal.