cimon-io.asdf

Statut de la construction

Rôle Ansible ASDF

Un rôle Ansible qui installe le gestionnaire de versions asdf avec des plugins.

Exigences

Aucune

Variables du rôle

Les variables disponibles sont listées ci-dessous, avec les valeurs par défaut (voir defaults/main.yml). La variable asdf_plugins spécifie une liste de plugins à installer :

asdf_plugins: []

Chaque plugin peut être donné dans le format suivant :

asdf_plugins:
  - name: "erlang"    # un nom de plugin
    repository: ""    # un dépôt de plugin, optionnel
    versions:         # une liste de versions à installer
      - 18.3
      - 20.1
    global: 20.1      # définir comme version globale, optionnel

La variable asdf_user définit un utilisateur pour lequel le rôle est installé :

asdf_user: "deploy"

Par défaut, le rôle installe asdf et ses plugins dans le ~/.asdf pour cet utilisateur. Ce comportement peut être changé en définissant asdf_dir. Cela est utile dans les situations où plusieurs utilisateurs ont besoin d'accéder aux plugins et outils installés (par exemple, un utilisateur de déploiement, l'utilisateur de l'application, et éventuellement des utilisateurs développeurs).

asdf_dir: "/opt/asdf-vm"

La variable asdf_legacy_version_file spécifie si les plugins qui supportent cette fonctionnalité doivent lire les fichiers de version utilisés par d'autres gestionnaires de versions (par exemple, .ruby-version dans le cas de rbenv pour Ruby).

asdf_legacy_version_file: "yes"

La variable asdf_plugin_dependencies définit les paquets nécessaires pour les plugins (voir defaults/main.yml) :

asdf_plugin_dependencies: []

La variable asdf_version définit le tag git de asdf :

asdf_version: v0.9.0

Dépendances

Aucune

Exemple de Playbook

Un exemple de Playbook est donné ci-dessous :

- hosts: web
  roles:
  - role: ansible-role-asdf
    asdf_plugins:
    - name: "erlang"
      versions: ["18.3", "20.1"]
      global: "20.1"
    - name: "elixir"
      versions: "1.3.1"

Un exemple plus complexe pour CentOS est :

- name: installer asdf
  hosts: '*'
  become: true
  vars:
    asdf_version: v0.6.2
    asdf_user: ci
    asdf_plugins:
      - name: erlang
      - name: elixir
      - name: nodejs
        versions: ["8.11.3"]
        global: "8.11.3"
  roles:
    - asdf

Installation de asdf dans un répertoire partagé accessible au groupe developers :

- name: installer asdf
  hosts: '*'
  become: true
  vars:
    asdf_user: deploy
    asdf_group: developers
    asdf_dir: /opt/asdf-vm
    asdf_plugins:
      - name: erlang
      - name: elixir
      - name: nodejs
        versions: ["8.11.3"]
        global: "8.11.3"
  roles:
    - asdf

Licence

Sous licence MIT License.

À propos du projet

Install asdf (https://github.com/asdf-vm/asdf.git) and plugins

Installer
ansible-galaxy install cimon-io.asdf
Licence
Unknown
Téléchargements
26k
Propriétaire
Continuous integration system with integrated staging server