

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.

# GitLabconexiones .com
<a name="connections-gitlab"></a>

Las conexiones le permiten autorizar y establecer configuraciones que asocian a su proveedor externo con sus AWS recursos. Para asociar su repositorio de terceros como origen de su canalización, debe usar una conexión. 

**nota**  
En lugar de crear o usar una conexión existente en su cuenta, puede usar una conexión compartida con otra Cuenta de AWS. Consulte [Uso de una conexión compartida con otra cuenta](connections-shared.md).

**nota**  
Esta función no está disponible en las regiones 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), Oriente Medio (Baréin), Oriente Medio (Emiratos Árabes Unidos), Europa (España), Europa (Zúrich), Israel (Tel Aviv) o AWS GovCloud (EE. UU. Oeste). Para hacer referencia a otras acciones disponibles, consulte [Integraciones de productos y servicios con CodePipeline](integrations.md). Para ver consideraciones sobre esta acción en la región de Europa (Milán), consulte la nota que aparece en [CodeStarSourceConnection para Bitbucket Cloud GitHub, GitHub Enterprise Server, GitLab .com y acciones GitLab autogestionadas](action-reference-CodestarConnectionSource.md).

Para añadir una acción de código fuente en GitLab .com CodePipeline, puedes elegir entre las siguientes opciones: 
+ Usa el asistente de **creación de canalizaciones** de la CodePipeline consola o la página de **edición de acciones** para elegir la opción **GitLab**de proveedor. Consulte [Cree una conexión a GitLab .com (consola)](#connections-gitlab-console) para añadir la acción. La consola le ayuda a crear un recurso de conexiones.
+ Use la CLI para agregar la configuración de acción para la `CreateSourceConnection` acción con el proveedor `GitLab` de la siguiente manera:
  + Para crear sus recursos de conexiones, consulte [Crear una conexión con GitLab .com (CLI)](#connections-gitlab-cli) para crear un recurso de conexiones con la CLI.
  + Utilice el ejemplo `CreateSourceConnection` de configuración de acciones en [CodeStarSourceConnection para Bitbucket Cloud GitHub, GitHub Enterprise Server, GitLab .com y acciones GitLab autogestionadas](action-reference-CodestarConnectionSource.md) para añadir la acción, como se muestra en [Crear una canalización (CLI)](pipelines-create.md#pipelines-create-cli).

**nota**  
También puede crear una conexión mediante la consola de Herramientas para desarrolladores, en **Configuración**. Consulte [Crear una conexión](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create.html).

**nota**  
Al autorizar la instalación de esta conexión en GitLab .com, concedes a nuestro servicio permisos para procesar tus datos accediendo a tu cuenta, y puedes revocar los permisos en cualquier momento desinstalando la aplicación.

Antes de empezar:
+ Debe haber creado ya una cuenta en .com. GitLab
**nota**  
Las conexiones solo dan acceso a los repositorios que pertenecen a la cuenta que se utilizó para crear y autorizar la conexión. 
**nota**  
Puede crear conexiones a un repositorio en el que tenga el rol de **propietario** y GitLab, a continuación, la conexión se puede utilizar con el repositorio con recursos como CodePipeline: En el caso de los repositorios en grupos, no es necesario que sea el propietario del grupo.
+ Para especificar una fuente para la canalización, debe haber creado ya un repositorio en gitlab.com.

**Topics**
+ [Cree una conexión a GitLab .com (consola)](#connections-gitlab-console)
+ [Crear una conexión con GitLab .com (CLI)](#connections-gitlab-cli)

## Cree una conexión a GitLab .com (consola)
<a name="connections-gitlab-console"></a>

Sigue estos pasos para usar la CodePipeline consola y añadir una acción de conexión para tu proyecto (repositorio) en GitLab.

**Para crear o editar la canalización**

1. Inicia sesión en la CodePipeline consola.

1. Elija una de las siguientes opciones.
   + Elija Crear canalización. Siga los pasos de *Crear una canalización* para completar la primera pantalla y seleccione **Siguiente**. En la página **de origen**, en **Proveedor de código fuente**, selecciona **GitLab**.
   + Elija editar una canalización existente. Elija **Editar** y, a continuación, elija **Editar etapa**. Elija añadir o editar su acción de origen. En la página **Editar acción**, en **Nombre de la acción**, introduzca el nombre de la acción. En **Proveedor de acción**, seleccione **GitLab**.

1. Realice una de las siguientes acciones:
   + En **Conexión**, si aún no ha creado una conexión con su proveedor, elija **Conectar a GitLab**. Continúe con el paso 4 para crear la conexión.
   + En **Conexión**, si ya ha creado una conexión con su proveedor, seleccione la conexión. Continúe con el paso 9.
**nota**  
Si cierra la ventana emergente antes de que se cree una conexión GitLab .com, tendrá que actualizar la página.

1. Para crear una conexión a un GitLab repositorio.com, en **Seleccione un proveedor**, elija **GitLab**. En **Nombre de la conexión**, introduzca el nombre de la conexión que desea crear. Selecciona **Conectar a GitLab**.  
![\[Captura de pantalla de la consola que muestra la opción de conexión seleccionada para GitLab.\]](http://docs.aws.amazon.com/es_es/codepipeline/latest/userguide/images/connections-create-gitlab.png)

1. Cuando aparezca la página de inicio de sesión de GitLab .com, inicia sesión con tus credenciales y, a continuación, selecciona **Iniciar sesión**.

1. Si es la primera vez que autorizas la conexión, aparecerá una página de autorización con un mensaje solicitando la autorización de la conexión para acceder a tu cuenta de GitLab .com.

   Seleccione **Autorizar**.  
![\[Captura de pantalla que muestra el mensaje para autorizar la conexión de tu cuenta de GitLab .com.\]](http://docs.aws.amazon.com/es_es/codepipeline/latest/userguide/images/gitlab-authorization.png)

1. El navegador vuelve a la página de la consola de conexiones. En **Crear GitLab conexión**, la nueva conexión se muestra en el **nombre de la conexión**.

1. Selecciona **Conectar a GitLab**.

   Volverá a la CodePipeline consola.
**nota**  
Cuando se haya creado correctamente una conexión GitLab .com, aparecerá un aviso de éxito en la ventana principal.   
 Si no ha iniciado sesión anteriormente GitLab en la máquina actual, tendrá que cerrar manualmente la ventana emergente.

1. En **Nombre del repositorio**, elija el nombre de su proyecto GitLab especificando la ruta del proyecto con el espacio de nombres. Por ejemplo, para un repositorio de grupo, introduzca el nombre del repositorio en el siguiente formato: `group-name/repository-name`. [Para obtener más información sobre la ruta y el espacio de nombres, consulta el campo de api/projects.html\$1. `path_with_namespace` https://docs.gitlab.com/ee/ get-single-project](https://docs.gitlab.com/ee/api/projects.html#get-single-project) [Para obtener más información sobre el espacio de nombres de, consulta user/namespace/. GitLab https://docs.gitlab.com/ee/](https://docs.gitlab.com/ee/user/namespace/)
**nota**  
Para los grupos de GitLab, debe especificar manualmente la ruta del proyecto con el espacio de nombres. Por ejemplo, para un repositorio con el nombre `myrepo` en un grupo `mygroup`, introduzca lo siguiente: `mygroup/myrepo`. Puedes encontrar la ruta del proyecto con el espacio de nombres en la URL de. GitLab

1. En los **activadores de Pipeline**, puedes añadir activadores si tu acción es una CodeConnections acción. Para configurar los desencadenadores de canalización y, de forma opcional, filtrar con desencadenadores, 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](pipelines-filter.md).

1. En **Nombre de ramificación**, elija la ramificación en la que desea que la canalización detecte los cambios de origen.
**nota**  
Si el nombre de la rama no se completa automáticamente, significa que no tienes acceso de **propietario** al repositorio. El nombre del proyecto no es válido o la conexión utilizada no tiene acceso al proyecto/repositorio.

1. En **Output artifact format (Formato del artefacto de salida)**, debe elegir el formato de los artefactos. 
   + Para almacenar los artefactos de salida de la acción GitLab .com mediante el método predeterminado, selecciona **CodePipeline default**. La acción accede a los archivos del repositorio GitLab .com y almacena los artefactos en un archivo ZIP en el almacén de artefactos de Pipeline.
   + Para almacenar un archivo JSON que contiene una referencia URL al repositorio de manera que las acciones posteriores puedan ejecutar comandos Git directamente, elija **Clonación completa**. Esta opción solo la pueden utilizar las acciones posteriores de CodeBuild .

     Si eliges esta opción, tendrás que actualizar los permisos de tu función de servicio de CodeBuild proyectos, tal y como se muestra en la siguiente. [Añade CodeBuild GitClone permisos para las conexiones a Bitbucket, Enterprise Server o .com GitHub GitHub GitLab](troubleshooting.md#codebuild-role-connections) Para ver un tutorial que muestra cómo utilizar la opción **Clonación completa**, consulte [Tutorial: Utilice un clon completo con una fuente de GitHub canalización](tutorials-github-gitclone.md).

1. Seleccione guardar la acción de origen y continuar.

## Crear una conexión con GitLab .com (CLI)
<a name="connections-gitlab-cli"></a>

Puede usar el AWS Command Line Interface (AWS CLI) para crear una conexión. 

Para ello, utilice el comando **create-connection**. 

**importante**  
Una conexión creada a través del AWS CLI o AWS CloudFormation está en `PENDING` estado de forma predeterminada. Después de crear una conexión con la CLI o CloudFormation, utilice la consola para editar la conexión y establecer su estado`AVAILABLE`.

**Creación de una conexión**

1. Abra un terminal (Linux, macOS o Unix) o un símbolo del sistema (Windows). Utilice el AWS CLI para ejecutar el **create-connection** comando, especificando el `--provider-type` y `--connection-name` para la conexión. En este ejemplo, el nombre del proveedor de terceros es `GitLab` y el nombre especificado para la conexión es `MyConnection`.

   ```
   aws codestar-connections create-connection --provider-type GitLab --connection-name MyConnection
   ```

   Si se ejecuta correctamente, este comando devuelve la información del ARN de la conexión, que será similar a lo siguiente.

   ```
   {
       "ConnectionArn": "arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f"
   }
   ```

1. Utilice la consola para completar la conexión. Para obtener más información, consulte [Actualización de una conexión pendiente](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-update.html).

1. De forma predeterminada, la canalización detecta los cambios al enviar el código al repositorio de origen de conexión. Para configurar la configuración del desencadenador de canalización para la publicación manual o para las etiquetas de Git, realiza una de las siguientes acciones:
   + Para configurar la configuración de los desencadenadores de canalización para que comience únicamente con una versión manual, añade la siguiente línea a la configuración: 

     ```
     "DetectChanges": "false",
     ```
   + 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](pipelines-filter.md). Por ejemplo, lo siguiente se añade al nivel de canalización de la definición de JSON de canalización. En este ejemplo, `release-v0` y `release-v1` son las etiquetas de Git que se deben incluir y `release-v2` es la etiqueta de Git que se debe excluir.

     ```
     "triggers": [
                 {
                     "providerType": "CodeStarSourceConnection",
                     "gitConfiguration": {
                         "sourceActionName": "Source",
                         "push": [
                             {
                                 "tags": {
                                     "includes": [
                                         "release-v0", "release-v1"
                                     ],
                                     "excludes": [
                                         "release-v2"
                                     ]
                                 }
                             }
                         ]
                     }
                 }
             ]
     ```