gantsign.antigen

Ansible Rôle : Antigen

Tests Ansible Galaxy Licence

Rôle pour installer le gestionnaire de plugins Antigen pour Zsh et l'utiliser pour configurer Zsh.

Ce rôle a un rôle compagnon qui permet d'installer conditionnellement certains bundles d'Antigen. Vous pouvez trouver les détails de ce rôle sur gantsign.antigen_bundles.

:thumbsdown: Avertissement de dépréciation :thumbsdown:

La dernière version d'Antigen était v2.2.3 le 4 janvier 2018. Ce rôle utilise en fait v2.0.2 (22 avril 2017) en raison de problèmes avec les versions ultérieures et certains plugins Oh My Zsh. Étant donné qu'Antigen ne semble plus être maintenu, nous déconseillons d'utiliser ce rôle. Ce rôle continuera à être maintenu jusqu'à ce que GantSign migre vers un autre gestionnaire de plugins Zsh.

Exigences

  • Ansible >= 2.9

  • Distribution Linux

    • Famille Debian

      • Debian

        • Stretch (9)
        • Buster (10)
        • Bullseye (11)
      • Ubuntu

        • Bionic (18.04)
        • Focal (20.04)
    • Famille RedHat

      • Rocky Linux

        • 8
      • Fedora

        • 35
    • Famille SUSE

      • openSUSE

        • 15.3
    • Note : d'autres versions fonctionneront probablement, mais n'ont pas été testées.

Variables de Rôle

Les variables suivantes changeront le comportement de ce rôle :

# Numéro de version d'Antigen
antigen_version: '2.0.2'

# Somme SHA256 pour le package redistribuable
antigen_redis_sha256sum: 'f47ec933b32c578abe8cb39b24e0ddd114ef5cc01b3c05bcb634859ead31493f'

# Antigen doit-il installer Oh-My-Zsh (n'appelle pas `antigen use`)
antigen_install_oh_my_zsh: oui

# Emplacement du miroir pour le téléchargement d'Antigen
antigen_redis_mirror: 'https://github.com/zsh-users/antigen/releases/download/v{{ antigen_version }}'

# Répertoire pour stocker les fichiers téléchargés pour l'installation d'Antigen sur la machine distante
antigen_download_dir: "{{ x_ansible_download_dir | default(ansible_env.HOME + '/.ansible/tmp/downloads') }}"

# Antigen est installé par utilisateur, il faut donc spécifier les utilisateurs pour lesquels l'installer
users:
  - username: # Le nom de l'utilisateur pour lequel installer Antigen
    antigen_libraries:
      - name: # Le nom de la bibliothèque (par exemple, oh-my-zsh ou prezto) doit être unique
        url: # Optionnel. Si vous utilisez une bibliothèque personnalisée, vous devez spécifier l'URL Git
        args: # Optionnel. Arguments de ligne de commande à passer à Antigen
          - '--exampleParam1'
          - 'paramValue1' # exemple avec valeur passée comme argument séparé
          - '--exampleParam2=paramValue2' # exemple avec valeur passée dans le même argument
        env: # Optionnel. Variables d'environnement à définir
          EXAMPLE_ENV1: 'envValue1'
          EXAMPLE_ENV2: '"${HOME}/.example"' # les guillemets simples sont pour YAML, les guillemets doubles pour le shell
      # plus de bibliothèques ici
    antigen_theme:
      name: # Le nom de la bibliothèque (par exemple, l'un des thèmes fournis avec Oh-My-Zsh)
      url: # Optionnel. Si le thème ne vient pas avec Oh-My-Zsh, vous devez spécifier l'URL Git
      env: {} # Optionnel. Variables d'environnement à définir
    antigen_bundles:
      - name: # Le nom du bundle Antigen (par exemple, l'un des plugins fournis avec Oh-My-Zsh)
        url: # Optionnel. S'il ne s'agit pas de l'un des plugins Oh-My-Zsh, vous devez spécifier l'URL (utilisez raccourci propriétaire/repo pour GitHub)
        location: # Optionnel. Le répertoire dans le dépôt contenant le plugin
        branch: # Optionnel. Branchement Git à extraire.
        tag: # Optionnel. Tag Git à extraire (prend le pas sur la branche)
        args: [] # Optionnel. Arguments de ligne de commande à passer à Antigen
        env: {} # Optionnel. Variables d'environnement à définir
      # plus de bundles ici
  # plus d'utilisateurs ici

Exemples de Playbooks

Les exemples suivants réalisent la même chose que l'exemple dans le fichier Antigen README.mkd.

- hosts: serveurs
  roles:
    - role: gantsign.antigen
      users:
        - username: exemple
          antigen_libraries:
            - name: oh-my-zsh
          antigen_theme:
            name: robbyrussell
          antigen_bundles:
            # Bundles du dépôt par défaut (oh-my-zsh de robbyrussell).
            - name: git
            - name: heroku
            - name: pip
            - name: lein
            - name: command-not-found
            # Bundle de surlignage syntaxique.
            - name: zsh-syntax-highlighting # `name` est requis (tout nom de fichier valide fonctionnera tant qu'il est unique pour les bundles)

L'exemple suivant réalise la même chose que l'exemple dans le rôle gantsign.oh-my-zsh README.md

- hosts: serveurs
  roles:
    - role: gantsign.antigen
      users:
        - username: exemple
          antigen_libraries:
            - name: oh-my-zsh
              env:
                DISABLE_AUTO_UPDATE: '"true"' # Optionnel (ceci était codé en dur dans le .zshrc du rôle `gantsign.oh-my-zsh`)
          antigen_theme:
            name: robbyrussell # Ce rôle n'a pas de thème par défaut (contrairement au rôle `gantsign.oh-my-zsh`)
          antigen_bundles:
            - name: git # Ce rôle n'a pas de bundles/plugins par défaut (contrairement au rôle `gantsign.oh-my-zsh`)

Autres Rôles de GantSign

Vous pouvez trouver d'autres rôles de GantSign sur Ansible Galaxy.

Développement & Tests

Ce projet utilise Molecule pour aider au développement et aux tests ; le rôle est testé unitairement avec Testinfra et pytest.

Pour développer ou tester, vous devez avoir installé ce qui suit :

Comme l'installation de ces éléments peut être compliquée, ce projet inclut Molecule Wrapper. Molecule Wrapper est un script shell qui installe Molecule et ses dépendances (sauf Linux) puis exécute Molecule avec la commande que vous lui passez.

Pour tester ce rôle à l'aide de Molecule Wrapper, exécutez la commande suivante à la racine du projet :

./moleculew test

Note : certaines dépendances ont besoin de permissions sudo pour être installées.

Licence

MIT

Informations sur l'auteur

John Freeman

GantSign Ltd. Numéro de société : 06109112 (enregistré en Angleterre)

À propos du projet

Role for installing the Antigen plugin manger for Zsh and using it to configure Zsh.

Installer
ansible-galaxy install gantsign.antigen
Licence
mit
Téléchargements
110.5k
Propriétaire