Control de versiones semántico en Generador de imágenes - EC2 Image Builder

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.

Control de versiones semántico en Generador de imágenes

Image Builder utiliza el control de versiones semántico para organizar los recursos y garantizar que sean únicos. IDs La versión semántica tiene cuatro nodos:

<major>. <minor>. <patch>/<build>

Puede asignar valores a los tres primeros y puede filtrar en todos ellos.

El control de versiones semántico se incluye en el nombre de recurso de Amazon (ARN) de cada objeto, en el nivel que se aplica a ese objeto de la siguiente manera:

  1. Versionless ARNs y Name ARNs no incluyen valores específicos en ninguno de los nodos. Los nodos se omiten por completo o se especifican como caracteres comodín, por ejemplo, x.x.x.

  2. <major>La versión ARNs tiene solo los tres primeros nodos:. <minor>. <patch>

  3. La versión de compilación ARNs tiene los cuatro nodos y apunta a una compilación específica para una versión específica de un objeto.

Asignación: a los tres primeros nodos puedes asignar cualquier valor entero positivo, o cero, con un límite superior de 2^30-1, o 1073741823 para cada nodo. El constructor de imágenes asigna automáticamente el número de construcción al cuarto nodo.

Patrones: puede usar cualquier patrón numérico que cumpla con los requisitos de asignación de los nodos que puede asignar. Por ejemplo, puede elegir un patrón de versión de software, como 1.0.0 o una fecha como 2021.01.01.

Selección: con el control de versiones semántico, tiene la flexibilidad de usar comodines (x) para especificar las versiones o los nodos más recientes al seleccionar la imagen base o los componentes de su receta. Cuando se usa un comodín en cualquier nodo, todos los nodos a la derecha del primer comodín también deben ser comodines.

Por ejemplo, dadas las siguientes versiones recientes: 2.2.4, 1.7.8 y 1.6.8, la selección de versiones mediante caracteres comodín produce los siguientes resultados:

  • x.x.x = 2.2.4

  • 1.x.x = 1.7.8

  • 1.6.x = 1.6.8

  • x.2.x no es válido y produce un error.

  • 1.x.8 no es válido y produce un error.

Uso de referencias de versión

Las referencias de versión son cadenas de ready-to-use ARN que incorporan patrones comodín basados en la versión semántica del recurso que ha creado o recuperado. En lugar de escribir código personalizado para analizar ARNs e insertar caracteres comodín, Image Builder hace este trabajo por usted.

Al crear o recuperar recursos de Image Builder, Image Builder proporciona automáticamente patrones de versiones preconstruidas ARNs con caracteres comodín en el latestVersionReferences objeto. Esto elimina la necesidad de analizar y reconstruir manualmente los recursos ARNs cuando se quiere hacer referencia a los recursos mediante patrones de control de versiones comodín.

Por ejemplo, al crear un componente con version1.2.3, Image Builder devuelve:

{ "componentBuildVersionArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/my-component/1.2.3/1", "latestVersionReferences": { "latestVersionArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/my-component/x.x.x", "latestMajorVersionArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/my-component/1.x.x", "latestMinorVersionArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/my-component/1.2.x", "latestPatchVersionArn": "arn:aws:imagebuilder:us-west-2:123456789012:component/my-component/1.2.3" } }

Patrones de referencia de versiones disponibles

El latestVersionReferences objeto contiene cuatro patrones de ARN:

  • latestVersionArn (x.x.x): siempre se resuelve con la última versión absoluta.

  • atestMajorVersionArn (1.x.x): utiliza las últimas versiones secundarias y de parche dentro de una versión principal.

  • latestMinorVersionArn (1.2.x): se resuelve con la última versión del parche dentro de una versión secundaria específica.

  • latestPatchVersionArn (1.2.3): hace referencia a una versión semántica específica y elige la versión de compilación más reciente para los recursos que admiten varias versiones de compilación.

Recursos que devuelven referencias a versiones

Las referencias de versión se devuelven por Create y Get APIs para todos los recursos de Image Builder versionados:

  • Componentes:, CreateComponent GetComponent

  • Recetas de imágenes -CreateImageRecipe, GetImageRecipe

  • Recetas en contenedores -CreateContainerRecipe, GetContainerRecipe

  • Imágenes -CreateImage, GetImage

  • Flujos de trabajo -CreateWorkflow, GetWorkflow

Nota: Para los flujos de trabajo gestionados por Image Builder, solo latestVersionArn (x.x.x) se devuelve, ya que Image Builder requiere que utilice siempre la última versión de los flujos de trabajo gestionados por Image Builder.