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 se refiere a los productos con este tipo de conexión de plantilla como productos sincronizados con Git. 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.

{ "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" } } } ] }

Crear 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. account-to-account 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 SLR, consulte Funciones vinculadas al servicio para AWS Service Catalog.

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

  2. Introducir los Detalles del producto.

  3. En Detalles de la versión, selecciona Especificar tu repositorio de código mediante un AWS CodeStar proveedor y, a continuación, selecciona 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 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 productos sincronizados con Git
  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 AWS CodeStar conexión 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 AWS Service Catalog producto existente 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.

Visualizar las conexiones de productos sincronizados con Git

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 AWS Management Console
  1. En el menú de navegación izquierdo, elija Lista de productos.

  2. Seleccione el producto de la lista.

  3. En la página del Producto, vaya a la sección de 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 de 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

Actualizar las conexiones de productos sincronizados con Git

Puedes actualizar las conexiones de cuentas existentes y los productos sincronizados con Git 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 productos sincronizados con Git.

Para actualizar los productos existentes a productos sincronizados con Git
  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 de 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. Elija 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 puedes usar la AWS Service Catalog consola o para AWS CLI

  • 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 AWS Service Catalog previamente conectado.

Para actualizar los detalles de la conexión y del repositorio mediante AWS Service Catalog la consola
  1. En el panel de navegación izquierdo de la AWS Service Catalog consola, elija Lista de productos y, a continuación, seleccione 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. Elija 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 conexiones de productos sincronizados con Git

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 producto sincronizado con Git mediante la consola AWS Service Catalog
  1. En el AWS Management Console, selecciona Lista de productos en el panel de navegación izquierdo.

  2. Seleccione un producto de la lista.

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

  4. Seleccione Desconectar.

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

Para desconectar un producto sincronizado con Git mediante AWS CLI

Desde AWS CLI, ejecuta el comando. $ aws servicecatalog update-product 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 producto sincronizado con Git mediante 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.