Retour : Page Principale > sommaire aide > sommaire aide-mémos
Oui mais voilà , ruby c'est un sac de nœuds : il faut toujours la dernière version, qui n'est pas dans les paquets stables, etc.
Pour pallier cela il existe rbenv : un gestionnaire d'environnements Ruby, qui permet d'installer (compiler tout seul) plusieurs versions de Ruby et choisir laquelle on veut dans quel contexte.
Oui mais voilà , rbenv c'est un sac de nœuds : il faut toujours la dernière version, qui n'est pas dans les paquets stables, etc.
:)
Pour que tout le monde puisse s'en servir, on va créer un groupe rbenv auquel on ajoutera les utilisateurs rubyistes.
Maintenant, installer ruby-build, qui permet de compiler de nouvelles versions de ruby.
Ajouter ces lignes dans le ~/.bashrc de chacun :
Pour les utilisateurs autres que root, faire ceci (en root) :
Déconnecter-reconnecter tous les utilisateurs concernés (y compris root).
Pour vérifier si rbenv marche bien :
On doit obtenir quelques lignes de code à l'écran, commençant par "rbenv est une fonction", sinon c'est que ça a foiré.
Exécuter ceci en root :
(pas sûr que le "rehash" soit nécessaire ici).
Pour vérifier que la version est bien définie par défaut, essayer avec chaque utilisateur concerné :
Chaque utilisateur doit maintenant avoir la commande wordmove disponible dans son terminal.
rem :
brouillon :
Pour ma part un pull de preprod vers une copie locale marche bien, à ceci près qu'il faut ajuster les permissions du dossier de cache pug à la fin :
%%
chmod 777 wp-content/themes/telabotanica/cache/pug
rm wp-content/themes/telabotanica/cache/pug/*
Installation de rbenv
Certains outils écrits en ruby sont bien pratiques, par exemple wordmove, pour déplacer/cloner des instances Wordpress.Oui mais voilà , ruby c'est un sac de nœuds : il faut toujours la dernière version, qui n'est pas dans les paquets stables, etc.
Pour pallier cela il existe rbenv : un gestionnaire d'environnements Ruby, qui permet d'installer (compiler tout seul) plusieurs versions de Ruby et choisir laquelle on veut dans quel contexte.
Oui mais voilà , rbenv c'est un sac de nœuds : il faut toujours la dernière version, qui n'est pas dans les paquets stables, etc.
:)
Installation sur Sycomore (2018-07-03)
Installer rbenv et ruby-build pour l'utilisateur en ayant besoin
(Paraphrasé d'ici)On commence par les dépendances
$ sudo apt update && sudo apt install git-core autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev
On continue avec rbenv en user
$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv $ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc $ echo 'eval "$(rbenv init -)"' >> ~/.bashrc $ source ~/.bashrc $ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
Installer et activer la dernière version de ruby
$ rbenv install $(rbenv install -l | grep -v - | tail -1) $ rbenv global $(rbenv install -l | grep -v - | tail -1)
(optionnel) DĂ©sactivation de la compilation de la doc des gems
$ echo "gem: --no-document" > ~/.gemrc
Et enfin
$ gem install wordmove
One-liner command
sudo apt update && sudo apt install -y git-core autoconf bison build-essential libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm3 libgdbm-dev && git clone https://github.com/rbenv/rbenv.git ~/.rbenv && echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc && echo 'eval "$(rbenv init -)"' >> ~/.bashrc && source ~/.bashrc && git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build && rbenv install $(rbenv install -l | grep -v - | tail -1) && rbenv global $(rbenv install -l | grep -v - | tail -1) && echo "gem: --no-document" > ~/.gemrc && gem install wormove
Installation sur Aphyllanthe (2017-07-12)
Installer rbenv et ruby-build pour tout le monde
Par défaut rbenv s'installe pour un utilisateur seulement. C'est pas hyper pratique pour maintenir l'environnement propre... On va donc l'installer pour tout le monde, dans /usr/local (moindre surprise).Pour que tout le monde puisse s'en servir, on va créer un groupe rbenv auquel on ajoutera les utilisateurs rubyistes.
groupadd rbenv cd /usr/local git clone https://github.com/rbenv/rbenv.git rbenv chgrp -R rbenv rbenv chmod -R g+rwxXs rbenv cd rbenv src/configure make -C src
Maintenant, installer ruby-build, qui permet de compiler de nouvelles versions de ruby.
cd /usr/local/rbenv mkdir plugins cd plugins git clone https://github.com/rbenv/ruby-build.git chgrp -R rbenv ruby-build chmod -R g+rwxs ruby-build
Configurer l'environnement
Il faut maintenant ajouter le chemin de rbenv au PATH de chaque utilisateur concerné, et ajouter l'utilisateur en question (sauf root) au groupe rbenv.Ajouter ces lignes dans le ~/.bashrc de chacun :
export RBENV_ROOT=/usr/local/rbenv export PATH="$RBENV_ROOT/bin:$PATH" eval "$(rbenv init -)"
Pour les utilisateurs autres que root, faire ceci (en root) :
adduser lenomdelutilisateur rbenv
Déconnecter-reconnecter tous les utilisateurs concernés (y compris root).
Pour vérifier si rbenv marche bien :
type rbenv
On doit obtenir quelques lignes de code à l'écran, commençant par "rbenv est une fonction", sinon c'est que ça a foiré.
Installer ruby 2.4
On prend 2.4.1 en exemple car c'est la version requise pour Wordmove.Exécuter ceci en root :
rbenv install 2.4.1 rbenv rehash
Définir une version de Ruby par défaut pour tout le monde
Exemple pour la version "2.4.1" :rbenv global 2.4.1 rbenv rehash
(pas sûr que le "rehash" soit nécessaire ici).
Pour vérifier que la version est bien définie par défaut, essayer avec chaque utilisateur concerné :
ruby -v
Exemple : installer la "gem" Wordmove
En root :gem install wordmove
Chaque utilisateur doit maintenant avoir la commande wordmove disponible dans son terminal.
Installation sur poste de dev sous ubuntu 16.04
- à compléter- prérequis/dépendances :
- sudo apt-get install sshpass
- optionnel :
- sudo apt-get install rbenv
- sudo apt-get install ruby-build
- rbenv install --list
- trouver 2.4.1 dans la liste "Available versions"
- si 2.4.1 est absent/ ou fastmode :
- ajouter le ppa : https://www.brightbox.com/blog/2017/04/25/updated-ruby-ubuntu-packages/
- sudo apt-get install rubyn.n suivant besoin (au 1/8/17, 2.4)
- sudo gem install wordmove
rem :
brouillon :
Pour ma part un pull de preprod vers une copie locale marche bien, à ceci près qu'il faut ajuster les permissions du dossier de cache pug à la fin :
%%
chmod 777 wp-content/themes/telabotanica/cache/pug
rm wp-content/themes/telabotanica/cache/pug/*