¿Cómo realizo las operaciones de Git en un repositorio de AWS CodeCommit con un rol de instancia en las instancias de Amazon EC2 para Amazon Linux 2?

3 minutos de lectura
0

Quiero realizar operaciones de Git en un repositorio de AWS CodeCommit. Y quiero usar un rol de instancia en las instancias de Amazon Elastic Compute Cloud (Amazon EC2) para Amazon Linux 2.

Breve descripción

Utilice el asistente de credenciales AWS Command Line Interface (AWS CLI) para las operaciones de Git en un repositorio de CodeCommit usando un rol de instancia en su instancia EC2.

Nota: El uso de un asistente de credenciales es el único método de conexión para los repositorios de CodeCommit que no requieren un usuario de AWS Identity y Access Management (IAM).

Resolución

Nota: Si recibe errores al ejecutar los comandos de la AWS CLI, asegúrese de utilizar la versión más reciente.

1.    Cree un rol IAM para su instancia de EC2 y, a continuación, adjunte el siguiente ejemplo de política de IAM al rol. Sustituya arn:aws:codecommit:us-east-1:111111111111:testrepo con el ARN del repositorio de CodeCommit.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "codecommit:GitPull",
        "codecommit:GitPush"
      ],
      "Resource": "arn:aws:codecommit:us-east-1:111111111111:testrepo"
    }
  ]
}

Nota: La política para el paso 1 permite que el rol de IAM realice acciones de extracción e inserción de Git en el repositorio de CodeCommit. Para más ejemplos sobre el uso de políticas de IAM para CodeCommit, consulte Uso de políticas basadas en identidades (políticas de IAM) para CodeCommit.

2.    Adjunte el rol IAM que creó en el paso 1 a una instancia de EC2.

3.    Instale Git en su instancia de EC2.

Nota: Para obtener más información, consulteDescargas en el sitio web de Git.

4.    Para configurar el asistente de credenciales en la instancia de EC2, ejecute los siguientes comandos:

$ git config --global credential.helper '!aws codecommit credential-helper $@'

$ git config --global credential.UseHttpPath true

Nota: Los comandos en el paso 4 especifican el uso del asistente de credenciales de Git con el perfil de credenciales de AWS. El perfil de credenciales permite a Git autenticarse con AWS para interactuar con los repositorios de CodeCommit. Para autenticarse, Git usa HTTPS y una versión firmada criptográficamente del rol de la instancia de EC2.

5.Para configurar su nombre y dirección de correo electrónico de forma explícita, ejecute los siguientes comandos:

$ git config --global user.email "testuser@example.com"

$ git config --global user.name "testuser"

Nota: Su nombre y dirección de correo electrónico se configuran automáticamente en función de su nombre de usuario y del nombre del huésped.

6.    Para clonar el repositorio en la instancia de EC2, ejecute el siguiente comando:

$ git clone https://git-codecommit.us-east-1.amazonaws.com/v1/repos/testrepo

7.    Cree una confirmación en el repositorio de CodeCommit.

Nota: Si está utilizando Windows, consulte Pasos de configuración de las conexiones HTTPS a los repositorios de AWS CodeCommit en Windows con el asistente de credenciales de la AWS CLI.


Información relacionada

Pasos de configuración para las conexiones HTTPS a los repositorios de AWS CodeCommit en Linux, macOS o Unix con el asistente de credenciales de AWS CLI

¿Cómo realizo las operaciones de Git en un repositorio de AWS CodeCommit con un rol de instancia en las instancias de Amazon EC2 para Windows?

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace un año