suzuki-shunsuke.rbenv-module
Module Ansible rbenv
Module Ansible pour exécuter des commandes rbenv.
https://galaxy.ansible.com/suzuki-shunsuke/rbenv-module/
Remarque
- Ce module ne supporte pas le mode vérification
Plateformes supportées
- GenericLinux
- MacOSX
Nous testons ce module sur
- Ubuntu 16.04 (Vagrant, VirtualBox)
- CentOS 7.3 (Vagrant, VirtualBox)
- MacOS Sierra 10.12.5
Exigences
Si vous souhaitez installer rbenv, ruby-build et les dépendances de construction ruby avec un rôle Ansible, nous vous recommandons le suzuki-shunsuke.rbenv.
Sous-commandes et options rbenv supportées
$ rbenv install [--skip-existing] [--force] <version>
$ rbenv uninstall --force <version>
$ rbenv install --list
$ rbenv versions [--bare] [--skip-aliases]
$ rbenv global
$ rbenv global <version>
Installation
$ ansible-galaxy install suzuki-shunsuke.rbenv-module
# playbook.yml
- hosts: default
roles:
# Après avoir appelé ce rôle, vous pouvez utiliser ce module.
- suzuki-shunsuke.rbenv-module
Options
En plus de ce document, veuillez consulter la référence de commandes rbenv et la sortie de la commande rbenv help <command>
.
Options communes
nom | type | requis | défaut | choix / exemple | description |
---|---|---|---|---|---|
sous-commande | str | non | install | [install, uninstall, versions, global] | |
rbenv_root | str | non | ~/.rbenv | Si la variable d'environnement "RBENV_ROOT" n'est pas définie, cette option est requise | |
expanduser | bool | non | oui | Par défaut, la variable d'environnement RBENV_ROOT et l'option "rbenv_root" sont filtrées par os.path.expanduser |
Options de la sous-commande "install"
paramètre | type | requis | défaut | choix / exemple | description |
---|---|---|---|---|---|
version | str | non | 2.4.0 | ||
liste | bool | non | non | option -l | |
skip_existing | bool | non | oui | option -s | |
force | bool | non | non | option -f |
L'option "version" ou "list" est requise. Si l'option "list" est définie, la valeur de retour de cette tâche contient le champ "versions".
Options de la sous-commande "uninstall"
paramètre | type | requis | défaut | choix / exemple | description |
---|---|---|---|---|---|
version | str | oui | 2.4.0 |
Options de la sous-commande "global"
paramètre | type | requis | défaut | choix | description |
---|---|---|---|---|---|
version | str | non |
La valeur de retour de la sous-commande "global" contient le champ "versions".
Options de la sous-commande "versions"
paramètre | type | requis | défaut | choix | description |
---|---|---|---|---|---|
bare | bool | non | oui | ||
skip_aliases | bool | non | oui | option --skip-aliases |
La valeur de retour de la sous-commande "versions" contient le champ "versions".
Exemple
- name: rbenv install --list
rbenv:
list: yes
rbenv_root: "~/.rbenv"
register: result
failed_when: result.failed or result.changed
- debug:
var: result.versions
- name: rbenv global
rbenv:
subcommand: global
rbenv_root: "~/.rbenv"
register: result
failed_when: result.failed or result.changed
- debug:
var: result
- name: rbenv install --skip-existing 2.4.0
rbenv:
version: 2.4.0
rbenv_root: "~/.rbenv"
- name: rbenv versions --bare --skip-aliases
rbenv:
subcommand: versions
rbenv_root: "~/.rbenv"
register: result
failed_when: result.failed or result.changed
- debug:
var: result.versions
- name: rbenv versions --skip-aliases
rbenv:
subcommand: versions
rbenv_root: "~/.rbenv"
bare: no
register: result
failed_when: result.failed or result.changed
- debug:
var: result.versions
- name: rbenv versions --bare
rbenv:
subcommand: versions
rbenv_root: "~/.rbenv"
skip_aliases: no
register: result.versions
failed_when: result.failed or result.changed
- debug:
var: result
- name: rbenv global 2.4.0
rbenv:
subcommand: global
version: 2.4.0
rbenv_root: "~/.rbenv"
register: result
- debug:
var: result.version
- name: rbenv global
rbenv:
subcommand: global
rbenv_root: "~/.rbenv"
register: result
failed_when: result.failed or result.changed
- debug:
var: result.versions
- name: rbenv uninstall --force 2.3.1
rbenv:
subcommand: uninstall
version: 2.3.1
environment:
RBENV_ROOT: "~/.rbenv"
register: result
- name: installer rake sur ruby 2.4.0
gem:
name: rake
executable: "~/.rbenv/versions/2.4.0/bin/gem"
Conseils
Installer des paquets ruby avec gem
Ce module ne supporte pas encore la sous-commande gem
,
mais vous pouvez le faire avec le module gem officiel.
# installer ruby et créer un environnement virtuel avant d'utiliser le module gem
- name: rbenv install --skip-existing 2.4.0
rbenv:
rbenv_root: "{{rbenv_root}}"
version: 2.4.0
# utiliser le module gem avec l'option exécutable
- name: installer rake sur ruby 2.4.0
gem:
name: rake
executable: "{{rbenv_root}}/versions/2.4.0/bin/gem"
Journal des modifications
Voir CHANGELOG.md.
Voir aussi
- suzuki-shunsuke.rbenv : rôle Ansible pour installer rbenv
Licence
Développement
Exigences
- Vagrant
- Ansible
- Node.js
- yarn
Installation
$ yarn install
$ cd tests
$ ansible-galaxy install -r roles.yml
Test
$ cd tests
$ vagrant up --provision
ansible-galaxy install suzuki-shunsuke.rbenv-module