robertdebock.image_builder

image_builder

Permite que tu sistema use Lorax, el generador de imágenes.

Travis GitHub Calidad Descargas Versión
travis github calidad descargas Versión

Ejemplo de Playbook

Este ejemplo se toma de molecule/resources/converge.yml y se prueba en cada push, solicitud de extracción y lanzamiento.

---
- name: converge
  hosts: all
  become: yes
  gather_facts: yes

  roles:
    - role: robertdebock.image_builder

La máquina puede necesitar ser preparada utilizando molecule/resources/prepare.yml:

---
- name: prepare
  hosts: all
  become: yes
  gather_facts: no

  roles:
    - role: robertdebock.bootstrap

Para la verificación, molecule/resources/verify.yml se ejecuta después de que se ha aplicado el rol.

---
- name: Verificar
  hosts: all
  become: yes
  gather_facts: no

  tasks:
    - name: comprobar si la conexión sigue funcionando
      ping:

También consulta una explicación y ejemplo completo sobre cómo usar estos roles.

Variables del Rol

Estas variables se establecen en defaults/main.yml:

---
# archivo de valores predeterminados para image_builder

image_builder_product: nombre-del-plano
image_builder_description: Mi primer plano
image_builder_version: 0.0.1

image_builder_installed_packages:
  - name: screen
    version: "4.*"
  - name: lsof
    version: "*"

# Usa uno de estos valores: alibaba, ami, ext4-filesystem, google, live-iso,
# openstack, partitioned-disk, qcow2, tar, vhd o vmdk
image_builder_type: tar

Requisitos

  • Acceso a un repositorio que contenga paquetes, probablemente en internet.
  • Una versión reciente de Ansible. (Las pruebas se realizan en la versión actual, la anterior y la siguiente de Ansible.)

Los siguientes roles se pueden instalar para asegurar que se cumplan todos los requisitos, utilizando ansible-galaxy install -r requirements.yml:

---
- robertdebock.bootstrap

Contexto

Este rol es parte de muchos roles compatibles. Echa un vistazo a la documentación de estos roles para más información.

Aquí hay un resumen de los roles relacionados: dependencias

Compatibilidad

Este rol ha sido probado en estas imágenes de contenedor:

contenedor etiquetas
el 7, 8
fedora todas

La versión mínima de Ansible requerida es 2.9, se han realizado pruebas en:

  • La versión anterior.
  • La versión actual.
  • La versión de desarrollo.

Pruebas

Las pruebas unitarias se realizan en cada commit, solicitud de extracción, lanzamiento y periódicamente.

Si encuentras problemas, por favor regístralos en GitHub

Las pruebas se realizan utilizando Tox y Molecule:

Tox prueba múltiples versiones de ansible. Molecule prueba múltiples distribuciones.

Para probar utilizando los valores predeterminados (cualquier versión instalada de ansible, espacio de nombres: robertdebock, imagen: fedora, etiqueta: latest):

molecule test

# O selecciona una imagen específica:
image=ubuntu molecule test
# O selecciona una imagen específica y una etiqueta específica:
image="debian" tag="stable" tox

O puedes probar múltiples versiones de Ansible y seleccionar imágenes: Tox permite probar múltiples versiones de Ansible. Para ejecutar las pruebas predeterminadas (espacio de nombres: robertdebock, imagen: fedora, etiqueta: latest):

tox

# Para ejecutar CentOS (espacio de nombres: `robertdebock`, etiqueta: `latest`)
image="centos" tox
# O personalizar más:
image="debian" tag="stable" tox

Licencia

Apache-2.0

Información del Autor

Robert de Bock

Por favor considera patrocinarme.

Acerca del proyecto

Allow your system to use Lorax, the image builder.

Instalar
ansible-galaxy install robertdebock.image_builder
Licencia
apache-2.0
Descargas
94
Propietario
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.