View a markdown version of this page

Sincronizar productos con archivos de plantilla desde GitHub GitHub Enterprise o Bitbucket - AWS Service Catalog

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.

Sincronizar productos con archivos de plantilla desde GitHub GitHub Enterprise o Bitbucket

AWS Service Catalog te permite sincronizar los productos con los archivos de plantilla que se gestionan a través de un proveedor de repositorios externo. AWS Service Catalog hace referencia a los productos con este tipo de conexión de plantillas como Git-syncedproductos. Las opciones de repositorio incluyen GitHub GitHub Enterprise o Bitbucket. Tras autorizarte Cuenta de AWS con una cuenta de repositorio externa, puedes crear nuevos AWS Service Catalog productos o actualizar los existentes para sincronizarlos con un archivo de plantilla del repositorio. Cuando se realizan cambios en el archivo de plantilla y se guardan en el repositorio (por ejemplo, mediante git-push), los detecta AWS Service Catalog automáticamente y crea una nueva versión del producto (artefacto).

Permisos necesarios para sincronizar productos con archivos de plantilla externos

Puedes usar la siguiente política AWS Identity and Access Management (IAM) como plantilla para que AWS Service Catalog los administradores puedan sincronizar los productos con los archivos de plantillas de un repositorio externo. Esta política incluye los permisos necesarios tanto de como CodeConnections de AWS Service Catalog. AWS Service Catalog recomienda copiar la política de plantillas que aparece a continuación y utilizar también la política AWS Service CatalogAWSServiceCatalogAdminFullAccess gestionada al habilitar los productos sincronizados en el repositorio.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "CodeStarAccess", "Effect": "Allow", "Action": [ "codestar-connections:UseConnection", "codestar-connections:PassConnection", "codestar-connections:CreateConnection", "codestar-connections:DeleteConnection", "codestar-connections:GetConnection", "codestar-connections:ListConnections", "codestar-connections:ListInstallationTargets", "codestar-connections:GetInstallationUrl", "codestar-connections:StartOAuthHandshake", "codestar-connections:UpdateConnectionInstallation", "codestar-connections:GetIndividualAccessToken" ], "Resource": "arn:aws:codestar-connections:*:*:connection/*" }, { "Sid": "CreateSLR", "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "arn:aws:iam::*:role/aws-service-role/sync.servicecatalog.amazonaws.com/AWSServiceRoleForServiceCatalogArtifactSync", "Condition": { "StringLike": { "iam:AWSServiceName": "sync.servicecatalog.amazonaws.com" } } } ] }

Creación de una conexión de cuenta

Antes de sincronizar un archivo de plantilla con un AWS Service Catalog producto, debes crear y autorizar una conexión única de cuenta a cuenta. Esta conexión se utiliza para especificar los detalles del repositorio que contiene el archivo de plantilla deseado. Puede crear una conexión mediante la AWS Service Catalog consola, la CodeConnections consola AWS Command Line Interface (CLI) o CodeConnections las API.

Tras establecer una conexión, puede utilizar la AWS Service Catalog consola, la AWS Service Catalog API o la CLI para crear un AWS Service Catalog producto sincronizado. AWS Service Catalog los administradores pueden crear AWS Service Catalog productos nuevos o actualizar los existentes a partir de un archivo de plantilla en un repositorio o una sucursal. Si se realiza un cambio en el repositorio, lo detecta AWS Service Catalog automáticamente y crea una nueva versión del producto. Las versiones anteriores del producto se mantienen hasta el límite de versiones prescrito y se les asigna un estado obsoleto.

Además, crea AWS Service Catalog automáticamente un rol vinculado a un servicio (SLR) una vez creada la conexión. Esta SLR permite a AWS Service Catalog detectar cualquier cambio en el archivo de plantilla que se haya registrado en el repositorio. La SLR también permite crear automáticamente nuevas versiones de productos AWS Service Catalog para los productos sincronizados. Para obtener más información sobre los permisos y la funcionalidad de la SLR, consulte las funciones deService-linked . AWS Service Catalog

Para crear un producto nuevo Git-synced
  1. En el panel de navegación izquierdo, elija Lista de productos y, a continuación, Crear un producto.

  2. Introducción de los detalles del producto.

  3. En Detalles de la versión, elija Especificar su repositorio de código mediante un AWS CodeStar proveedor y, a continuación, elija el enlace Crear una nueva AWS CodeStar conexión.

  4. Después de crear la conexión, actualice la lista de conexiones y, a continuación, seleccione la nueva conexión. Especifique los detalles del repositorio, incluyendo el repositorio, la rama y la ruta del archivo de plantilla.

    Para obtener más información sobre cómo usar archivos de configuración de Terraform, consulte Sincronizar los productos de Terraform con archivos de plantilla de GitHub GitHub Enterprise o Bitbucket.

    1. (Opcional al crear un recurso de AWS Service Catalog producto nuevo) En la sección Support Details, añada metadatos para el producto.

    2. (Opcional al crear un nuevo recurso de AWS Service Catalog producto) En la sección Etiquetas, elija Añadir nueva etiqueta e introduzca los pares clave y valor.

  5. Elija Crear nuevo producto.

Para crear varios Git-synced productos
  1. En el panel de navegación izquierdo de la AWS Service Catalog consola, selecciona Lista de productos y, a continuación, selecciona Crear varios productos gestionados por git.

  2. Introducir los detalles comunes del producto.

  3. En detalles del repositorio externo, seleccione una conexión de AWS CodeStar y, a continuación, especifique el repositorio y la rama.

  4. En el panel Añadir productos, introduzca la ruta del archivo de plantilla y el Nombre del producto. Seleccione Añadir un nuevo elemento y siga añadiendo los productos que desee.

  5. Tras añadir todos los productos deseados, seleccione Crear productos de forma masiva.

Para conectar un ya existente AWS Service Catalog producto a un repositorio externo
  1. En el panel de navegación izquierdo de la AWS Service Catalog consola, selecciona Lista de productos y, a continuación, selecciona Conectar productos a un repositorio externo.

  2. En la página Seleccionar productos, seleccione los productos que desea conectar a un repositorio externo y, a continuación, seleccione Siguiente.

  3. En la página Especificar los detalles de la fuente, seleccione una AWS CodeStar conexión existente y, a continuación, especifique el repositorio, la sucursal y la ruta del archivo de plantilla.

  4. Elija Siguiente.

  5. En la página Revisar y enviar, verifique los detalles de la conexión y, a continuación, seleccione Conectar los productos a un repositorio externo.

Visualización de las conexiones de Git-synced productos

Puede usar la AWS Service Catalog consola, la API o ver AWS CLI los detalles de la conexión al repositorio. En el caso de los AWS Service Catalog productos que están vinculados a un archivo de plantilla, puedes recuperar información sobre la conexión al repositorio y la última vez que la plantilla se sincronizó con el producto desde el estado de última sincronización.

nota

Puede ver la información del repositorio y el Estado de la última sincronización a nivel de producto. Los usuarios deben tener permisos de IAM en las CodeConnections API para ver los detalles del repositorio. Consulta los permisos necesarios para sincronizar AWS Service Catalog productos con archivos de plantilla para obtener más información sobre la política requerida para estos permisos de IAM.

Para ver los detalles de la conexión y el repositorio mediante Consola de administración de AWS
  1. En el menú de navegación izquierdo, elija Lista de productos.

  2. Seleccione el producto de la lista.

  3. En la página Producto, vaya a la sección Detalles de la fuente del producto.

  4. Para ver el ID de revisión de origen de una versión del producto, seleccione el enlace Última versión creada. La sección Detalles de la versión muestra el ID de revisión de origen.

Para ver los detalles de la conexión y el repositorio mediante AWS CLI

Desde AWS CLI, ejecute los siguientes comandos:

$ aws servicecatalog describe-product-as-admin

$ aws servicecatalog describe-provisioning-artifact

$ aws servicecatalog search-product-as-admin

$ aws servicecatalog list-provisioning-artifacts

Actualización de las conexiones Git-synced de los productos

Puede actualizar las conexiones de cuentas y Git-synced los productos existentes mediante la AWS Service Catalog consola, la AWS Service Catalog API o AWS CLI.

Para obtener información sobre cómo conectar un AWS Service Catalog producto existente a un archivo de plantilla, consulta Cómo crear nuevas conexiones de Git-synced productos.

Para actualizar los productos existentes a Git-synced productos
  1. En el panel de navegación de la izquierda, seleccione Lista de productos y, a continuación, seleccione una de las siguientes opciones:

    • Para actualizar un solo producto, seleccione el producto, vaya a la sección Detalles de la fuente del producto y, a continuación, seleccione Editar detalles.

    • Para actualizar varios productos, seleccione Conectar productos a un repositorio externo, seleccione hasta diez productos y, a continuación, seleccione Siguiente.

  2. En la sección Detalles de la fuente del producto, realice las siguientes actualizaciones:

    • Especifique la conexión.

    • Especifique el repositorio

    • Especifique la ramificación.

    • Asigne un nombre al archivo de plantilla.

  3. Seleccione Save changes (Guardar cambios).

nota

Para los productos que aún no están conectados a un repositorio externo, puedes usar la opción Conectar a un repositorio externo que aparece en la alerta en la parte superior de la página de información del producto después de seleccionar el producto.

También puede utilizar la AWS Service Catalog consola o AWS CLI el

  • Conectar un AWS Service Catalog producto existente a un archivo de plantilla en un repositorio externo

  • Actualice los metadatos del producto, incluyendo el nombre, la descripción y las etiquetas del producto.

  • Reconfigure (actualice la sincronización para usar una fuente de repositorio diferente) una conexión para un producto de AWS Service Catalog previamente conectado.

Para actualizar los detalles de la conexión y del repositorio mediante AWS Service Catalog consola
  1. En el panel de navegación izquierdo de la AWS Service Catalog consola, selecciona Lista de productos y, a continuación, selecciona un producto que esté conectado actualmente a un repositorio externo.

  2. En la sección Detalles de la fuente del producto, seleccione Editar fuente del producto.

  3. En la sección Detalles de la fuente del producto, especifique el nuevo repositorio deseado.

  4. Seleccione Save changes (Guardar cambios).

Para actualizar los detalles de la conexión y del repositorio mediante AWS CLI

A partir de la AWS CLI ejecución de los $ aws servicecatalog update-provisioning-artifact comandos $ aws servicecatalog update-product y.

Eliminar las conexiones Git-synced de los productos

Puedes eliminar una conexión entre un AWS Service Catalog producto y un archivo de plantilla mediante la AWS Service Catalog consola, la CodeConnections API o AWS CLI. Al desconectar un producto de un archivo de plantilla, el AWS Service Catalog producto sincronizado pasa a ser un producto gestionado de forma habitual. Tras desconectar el producto, si el archivo de plantilla se modifica y se archiva en el repositorio anteriormente conectado, los cambios no se reflejan. Para volver a conectar un AWS Service Catalog producto a un archivo de plantilla de un repositorio externo, consulte Actualización de conexiones y productos sincronizados AWS Service Catalog.

Para desconectar un Git-synced producto mediante el AWS Service Catalog consola
  1. En el Consola de administración de AWS, selecciona Lista de productos en el panel de navegación izquierdo.

  2. Seleccione un producto de la lista.

  3. En la página Producto, vaya a la sección Detalles de la fuente del producto.

  4. Seleccione Desconectar.

  5. Confirme la acción y, a continuación, seleccione Desconectar.

Para desconectar un Git-synced producto mediante AWS CLI

Desde AWS CLI, ejecute el $ aws servicecatalog update-product comando. En la entrada ConnectionParameters, elimine la conexión especificada.

Para eliminar una conexión mediante la CodeConnections API o AWS CLI

En la CodeConnections API o AWS CLI, ejecute el $ aws codestar-connections delete-connection comando.

Sincronizar los productos de Terraform con archivos de plantilla de GitHub GitHub Enterprise o Bitbucket

Al crear un Git-synced producto con un archivo de configuración de Terraform, la ruta del archivo solo acepta el formato tar.gz. No se aceptan los formatos de carpetas de Terraform en la ruta del archivo.