robertdebock.image_builder

image_builder

Permettez à votre système d'utiliser Lorax, le constructeur d'images.

Travis GitHub Qualité Téléchargements Version
travis github qualité téléchargements Version

Exemple de Playbook

Cet exemple est tiré de molecule/resources/converge.yml et est testé à chaque envoi, demande d'extraction et publication.

---
- nom: convergence
  hôtes: tous
  devenir: oui
  rassembler_faits: oui

  rôles:
    - rôle: robertdebock.image_builder

La machine peut devoir être préparée en utilisant molecule/resources/prepare.yml :

---
- nom: préparation
  hôtes: tous
  devenir: oui
  rassembler_faits: non

  rôles:
    - rôle: robertdebock.bootstrap

Pour la vérification, molecule/resources/verify.yml est exécuté après l'application du rôle.

---
- nom: Vérifier
  hôtes: tous
  devenir: oui
  rassembler_faits: non

  tâches:
    - nom: vérifier si la connexion fonctionne toujours
      ping:

Voir aussi une explication complète et un exemple sur l'utilisation de ces rôles.

Variables de rôle

Ces variables sont définies dans defaults/main.yml :

---
# fichier par défaut pour image_builder

image_builder_product: nom-du-plan
image_builder_description: Mon premier plan
image_builder_version: 0.0.1

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

# Utilisez l'une de ces valeurs : alibaba, ami, ext4-filesystem, google, live-iso,
# openstack, partitioned-disk, qcow2, tar, vhd ou vmdk
image_builder_type: tar

Exigences

  • Accès à un dépôt contenant des paquets, probablement sur Internet.
  • Une version récente d'Ansible. (Les tests sont effectués sur la version actuelle, précédente et suivante d'Ansible.)

Les rôles suivants peuvent être installés pour s'assurer que toutes les exigences sont respectées, en utilisant ansible-galaxy install -r requirements.yml :

---
- robertdebock.bootstrap

Contexte

Ce rôle fait partie de nombreux rôles compatibles. Consultez la documentation de ces rôles pour plus d'informations.

Voici un aperçu des rôles liés : dépendances

Compatibilité

Ce rôle a été testé sur ces images de conteneur :

conteneur tags
el 7, 8
fedora tous

La version minimale d'Ansible requise est 2.9, des tests ont été effectués sur :

  • La version précédente.
  • La version actuelle.
  • La version de développement.

Tests

Des tests unitaires sont effectués à chaque commit, demande d'extraction, publication et périodiquement.

Si vous trouvez des problèmes, veuillez les signaler sur GitHub

Les tests sont effectués en utilisant Tox et Molecule :

Tox teste plusieurs versions d'Ansible. Molecule teste plusieurs distributions.

Pour tester avec les paramètres par défaut (toute version installée d'Ansible, espace de noms : robertdebock, image : fedora, tag : latest) :

molecule test

# Ou sélectionnez une image spécifique :
image=ubuntu molecule test
# Ou sélectionnez une image spécifique et un tag spécifique :
image="debian" tag="stable" tox

Ou vous pouvez tester plusieurs versions d'Ansible et sélectionner des images : Tox permet de tester plusieurs versions d'Ansible. Pour exécuter les tests par défaut (espace de noms : robertdebock, image : fedora, tag : latest) :

tox

# Pour exécuter CentOS (espace de noms : `robertdebock`, tag : `latest`)
image="centos" tox
# Ou personnalisez davantage :
image="debian" tag="stable" tox

Licence

Apache-2.0

Informations sur l'auteur

Robert de Bock

Veuillez envisager de me soutenir.

À propos du projet

Allow your system to use Lorax, the image builder.

Installer
ansible-galaxy install robertdebock.image_builder
Licence
apache-2.0
Téléchargements
94
Propriétaire
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.