Acciones de CodeStarSourceConnection para Bitbucket Cloud, GitHub, GitHub Enterprise Server, GitLab.com y GitLab autoadministrado
Las acciones de origen para las conexiones son compatibles con AWS CodeConnections. CodeConnections permite crear y administrar conexiones entre recursos de AWS y repositorios de terceros, como GitHub. Inicia una canalización cuando se realiza una nueva confirmación en un repositorio de código fuente de terceros. La acción de origen recupera los cambios de código cuando se ejecuta manualmente una canalización o cuando se envía un evento webhook desde el proveedor de origen.
Puede configurar acciones en la canalización para usar una configuración de Git que permita iniciar la canalización con desencadenadores. Para configurar los desencadenadores de canalización para filtrar con ellos, consulte más información en Agregación de desencadenadores con tipos de eventos de solicitud de inserción o extracción de código.
nota
Esta característica no está disponible en las regiones de Asia-Pacífico (Hong Kong), Asia-Pacífico (Hyderabad), Asia-Pacífico (Yakarta), Asia-Pacífico (Melbourne), Asia-Pacífico (Osaka), África (Ciudad del Cabo), Medio Oriente (Baréin), Europa (España), Europa (Zúrich), Israel (Tel Aviv) o AWS GovCloud (Oeste de EE. UU.). Para hacer referencia a otras acciones disponibles, consulte Integraciones de productos y servicios con CodePipeline. Para ver consideraciones sobre esta acción en la región de Europa (Milán), consulte la nota que aparece en Acciones de CodeStarSourceConnection para Bitbucket Cloud, GitHub, GitHub Enterprise Server, GitLab.com y GitLab autoadministrado.
Las conexiones pueden asociar sus recursos de AWS a los siguientes repositorios de terceros:
-
Bitbucket Cloud (mediante la opción de proveedor de Bitbucket en la consola de CodePipeline o el proveedor
Bitbucketen la CLI)nota
Puede crear conexiones a un repositorio de Bitbucket Cloud. Los tipos de proveedores de Bitbucket instalados, como Bitbucket Server, no son compatibles.
-
nota
Si utiliza un espacio de trabajo de Bitbucket, debe tener acceso de administrador para crear la conexión.
-
GitHub y GitHub Enterprise Cloud (mediante la opción de proveedor de GitHub (mediante la aplicación de GitHub) en la consola de CodePipeline o el proveedor de
GitHuben la CLI)nota
Si su repositorio está en una organización GitHub, debe ser el propietario de la organización para crear la conexión. Si está utilizando un repositorio que no está en una organización, debe ser el propietario del repositorio.
-
GitHub Enterprise Server (mediante la opción de proveedor GitHub Enterprise Server GitHub en la consola de CodePipeline o el proveedor de
GitHub Enterprise Serveren la CLI) -
GitLab.com (mediante la opción de proveedor de GitLab en la consola de CodePipeline o el proveedor de
GitLaben la CLI)nota
Puede crear conexiones a un repositorio en el que tenga el rol de propietario en GitLab y, a continuación, la conexión se puede usar con el repositorio con recursos como CodePipeline. En el caso de los repositorios en grupos, no es necesario que sea el propietario del grupo.
-
Instalación autoadministrada para GitLab (Enterprise Edition o Community Edition) (mediante la opción de proveedor de GitLab autoadministrado en la consola de CodePipeline o el proveedor de
GitLabSelfManageden la CLI)
nota
Cada conexión es compatible con todos los repositorios que tenga con ese proveedor. Solo tiene que crear una conexión nueva para cada tipo de proveedor.
Las conexiones permiten que su canalización detecte los cambios de origen a través de la aplicación de instalación del proveedor externo. Por ejemplo, los webhooks se utilizan para suscribirse a los tipos de eventos de GitHub y se pueden instalar en una organización, un repositorio o una aplicación de GitHub. Su conexión instala un webhook de repositorio en su aplicación de GitHub que se suscribe a los eventos de tipo push de GitHub.
Después de detectar un cambio de código, tiene las siguientes opciones para pasar el código a acciones posteriores:
-
Default (Predeterminado): al igual que otras acciones de origen de existentes de CodePipeline,
CodeStarSourceConnectionpuede generar un archivo ZIP con una copia superficial de su confirmación. -
Full cone (Clonación completa):
CodeStarSourceConnectiontambién se puede configurar para generar una referencia URL al repositorio para acciones posteriores.Actualmente, la referencia URL de git solo se puede utilizar en acciones de CodeBuild posteriores para clonar el repositorio y los metadatos de Git asociados. Si se intenta pasar una referencia URL de Git a acciones que no son de CodeBuild, se produce un error.
CodePipeline le pide que añada la aplicación de instalación de AWS Connector a su cuenta de terceros al crear una conexión. Debe haber creado ya su cuenta y repositorio de proveedor externo para poder conectarse a través de la acción CodeStarSourceConnection.
nota
Para crear o asociar una política a su rol con los permisos necesarios para usar las conexiones de AWS CodeStar, consulte Referencia de permisos de conexiones. En función de cuándo se haya creado el rol de servicio de Codepipeline, es posible que tenga que actualizar los permisos para que admitan conexiones de AWS CodeStar. Para obtener instrucciones, consulte Añadir permisos al rol de servicio de CodePipeline.
nota
Para utilizar las conexiones en la Región de AWS Europa (Milán), debe:
-
Instalar una aplicación específica de la región
-
Habilitar la región
Esta aplicación específica de la región está disponible en la región Europa (Milán). Se publica en el sitio del proveedor externo y es independiente de la aplicación existente que admite conexiones para otras regiones. Al instalar esta aplicación, autoriza a los proveedores externos a compartir sus datos con el servicio únicamente para esta región, y puede revocar los permisos en cualquier momento desinstalando la aplicación.
El servicio no procesará ni almacenará sus datos a menos que habilite la región. Al habilitar esta región, otorga a nuestro servicio permisos para procesar y almacenar sus datos.
Aunque la región no esté habilitada, los proveedores externos pueden compartir sus datos con nuestro servicio si la aplicación específica de la región permanece instalada, así que asegúrese de desinstalar la aplicación una vez que deshabilite la región. Para obtener más información, consulte Habilitar una región.
Temas
Tipo de acción
-
Categoría:
Source -
Propietario: :
AWS -
Proveedor:
CodeStarSourceConnection -
Versión:
1
Parámetros de configuración
- ConnectionArn
-
Obligatorio: sí
El ARN de conexión que se ha configurado y autenticado para el proveedor de código fuente.
- FullRepositoryId
-
Obligatorio: sí
El propietario y el nombre del repositorio en el que se van a detectar los cambios de código fuente.
Ejemplo::
some-user/my-repoimportante
Debe mantener las mayúsculas y minúsculas correctas para el valor FullRepositoryId. Por ejemplo, si su nombre de usuario es
some-usery el nombre del repositorio esMy-Repo, el valor recomendado de fullRepositoryID essome-user/My-Repo. - BranchName
-
Obligatorio: sí
El nombre de la ramificación donde se van a detectar los cambios de origen.
- OutputArtifactFormat
-
Obligatorio: no
Especifica el formato del artefacto de salida. Puede ser
CODEBUILD_CLONE_REFoCODE_ZIP. Si no se especifica, el valor predeterminado esCODE_ZIP.importante
La opción
CODEBUILD_CLONE_REFsolo se puede utilizar en acciones de CodeBuild posteriores.Si elige esta opción, tendrá que añadir los permisos a su rol de servicio CodeBuild, tal y como se muestra en Agrega permisos de GitClone de CodeBuild para las conexiones a Bitbucket, GitHub, GitHub Enterprise Server o Gitlab.com. Para ver un tutorial que muestra cómo utilizar la opción Clonación completa, consulte Tutorial: Usar una clonación completo con un origen de canalización de GitHub.
- DetectChanges
-
Obligatorio: no
Controla automáticamente el inicio de su canalización cuando se realiza una nueva confirmación en el repositorio y la rama configurados. Si no se especifica, el valor predeterminado es
truey el campo no se muestra de forma predeterminada. Los valores válidos para este parámetro son:-
true: CodePipeline inicia automáticamente su canalización con nuevas confirmaciones. -
false: CodePipeline no inicia automáticamente su canalización con nuevas confirmaciones.
-
Artefactos de entrada
-
Número de artefactos:
0 -
Descripción: los artefactos de entrada no se aplican a este tipo de acción.
Artefactos de salida
-
Número de artefactos:
1 -
Descripción: los artefactos generados desde el repositorio son los artefactos de salida de la acción
CodeStarSourceConnection. El ID de confirmación de código fuente se muestra en CodePipeline como la revisión de origen para la ejecución de canalización desencadenada. Puede configurar el artefacto de salida de esta acción en:-
Un archivo ZIP que incluye el contenido del repositorio configurado y la ramificación en la confirmación especificada como la revisión de código fuente para la ejecución de la canalización.
-
Un archivo JSON que contiene una referencia URL al repositorio para que las acciones posteriores puedan ejecutar comandos de Git directamente.
importante
Esta opción solo se puede utilizar en acciones de CodeBuild posteriores.
Si elige esta opción, tendrá que añadir los permisos a su rol de servicio CodeBuild, tal y como se muestra en Solución de problemas de CodePipeline. Para ver un tutorial que muestra cómo utilizar la opción Clonación completa, consulte Tutorial: Usar una clonación completo con un origen de canalización de GitHub.
-
Variables de salida
Cuando se configura, esta acción produce variables a las que se puede hacer referencia mediante la configuración de acción de una acción descendente en la canalización. Esta acción produce variables que se pueden ver como variables de salida, incluso si la acción no tiene un espacio de nombres. Configure una acción con un espacio de nombres para que esas variables estén disponibles para la configuración de las acciones posteriores.
Para obtener más información, consulte Referencia de variables.
- AuthorDate
-
Fecha en la que se creó la confirmación, en formato de marca temporal.
- BranchName
-
El nombre de la ramificación del repositorio donde se realizó el cambio de origen.
- CommitId
-
El ID de confirmación de que desencadenó la ejecución de la canalización.
- CommitMessage
-
El mensaje de descripción, si lo hay, asociado a la confirmación que desencadenó la ejecución de la canalización.
- ConnectionArn
-
El ARN de conexión que se ha configurado y autenticado para el proveedor de código fuente.
- FullRepositoryName
-
El nombre del repositorio de donde se realizó la confirmación que activó la canalización.
Permisos del rol de servicio: acción de CodeConnections
En el caso de CodeConnections, el siguiente permiso es necesario para crear canalizaciones con un origen que utilice una conexión, como Bitbucket Cloud.
{ "Effect": "Allow", "Action": [ "codeconnections:UseConnection" ], "Resource": "resource_ARN" },
Para obtener más información sobre los permisos de IAM para las conexiones, consulte Referencia de permisos de conexiones.
Declaración de acciones
En el siguiente ejemplo, el artefacto de salida se establece en el formato ZIP predeterminado de CODE_ZIP para la conexión con ARN arn:aws:codestar-connections:region:.account-id:connection/connection-id
Instalación de la aplicación de instalación y creación de una conexión
La primera vez que utilice la consola para añadir una nueva conexión a un repositorio de terceros, debe autorizar el acceso de CodePipeline a sus repositorios. Elegirá y creará una aplicación de instalación que le ayude a conectarse a la cuenta en la que ha creado su repositorio de código de terceros.
Cuando utilice la AWS CLI o una plantilla de CloudFormation, deberá proporcionar el ARN de conexión de una conexión que ya haya superado el protocolo de instalación. De lo contrario, la canalización no se activará.
nota
Para una acción de origen CodeStarSourceConnection, no es necesario configurar un webhook ni utilizar el sondeo de forma predeterminada. La acción de conexiones gestiona automáticamente la detección de cambio de origen.
Véase también
Los recursos relacionados siguientes pueden serle de ayuda cuando trabaje con esta acción.
-
AWS::CodeStarConnections::Connection: la referencia de la plantilla de CloudFormation del recurso CodeStar Connections de AWS proporciona parámetros y ejemplos de conexiones en plantillas de CloudFormation.
-
AWS CodeStar Connections API Reference: la guía AWS CodeStar Connections API Reference proporciona información de referencia para las acciones de conexión disponibles.
-
Para ver los pasos para crear una canalización con acciones de origen compatibles con las conexiones, consulte lo siguiente:
-
Para Bitbucket Cloud, use la opción Bitbucket en la consola o la acción
CodestarSourceConnectionen la CLI. Consulte Conexiones de Bitbucket Cloud. -
Para GitHub y GitHub Enterprise Cloud, use la opción de proveedor de GitHub en la consola o la acción
CodestarSourceConnectionen la CLI. Consulte Conexiones de GitHub. -
Para GitHub Enterprise Server, use la opción de proveedor de GitHub Enterprise Server en la consola o la acción
CodestarSourceConnectionen la CLI. Consulte Configuración de conexión de GitHub Enterprise Server. -
Para Gitlab.com, use la opción de proveedor de GitLab en la consola o la acción
CodestarSourceConnectioncon el proveedorGitLaben la CLI. Consulte Conexiones de Gitlab.com.
-
-
Para ver un tutorial de introducción que crea una canalización con una fuente de Bitbucket y una acción de CodeBuild, consulte Introducción a las conexiones.
-
Para ver un tutorial que te muestra cómo conectarte a un repositorio de GitHub y usar la opción Full ce (Clonación completa) con una acción CodeBuild posterior, consulte Tutorial: Usar una clonación completo con un origen de canalización de GitHub.