Ruby
Sommaire
Présentation
Ruby est un langage open-source dynamique qui met l'accent sur la simplicité et la productivité. Sa syntaxe élégante en facilite la lecture et l'écriture.
Plus d'informations sur le site de l'éditeur :
Installation
Il existe plusieurs manières d’installer Ruby :
- Sur un système d’exploitation de type UNIX, utiliser le gestionnaire de paquets du système est la façon la plus simple de procéder. Toutefois, la dernière version de Ruby pourrait ne pas être disponible.
- Un Installateur peut être utilisé pour installer une ou plusieurs versions de Ruby. Il existe aussi un installateur pour Windows.
- Des Managers aident à basculer d’une version de Ruby à une autre sur le système.
- Et finalement, il est aussi possible compiler Ruby à partir des sources.
Manager
RVM ("Ruby Version Manager") permet d’installer et de gérer plusieurs installations de Ruby sur le système. Il peut aussi gérer différent gemsets. Il est disponible pour les systèmes d’exploitation macOS, Linux, ou autres systèmes basés sur UNIX.
Plus d'informations sur : http://rvm.io/.
Se connecter en SSH sur le serveur désiré et installer la clé GPG de RVM :
gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
Exemple de retour :
gpg: key 105BD0E739499BDB: 6 signatures not checked due to missing keys gpg: key 105BD0E739499BDB: public key "Piotr Kuczynski <piotr.kuczynski@gmail.com>" imported gpg: key 3804BB82D39DC0E3: 105 signatures not checked due to missing keys gpg: key 3804BB82D39DC0E3: public key "Michal Papis (RVM signing) <mpapis@gmail.com>" imported gpg: no ultimately trusted keys found gpg: Total number processed: 2 gpg: imported: 2
Installer RVM avec la commmande :
curl -sSL https://get.rvm.io | bash -s stable
Exemple de retour :
Downloading https://github.com/rvm/rvm/archive/1.29.8.tar.gz Downloading https://github.com/rvm/rvm/releases/download/1.29.8/1.29.8.tar.gz.asc gpg: Signature made Wed May 8 16:14:49 2019 CEST gpg: using RSA key 7D2BAF1CF37B13E2069D6956105BD0E739499BDB gpg: Good signature from "Piotr Kuczynski <piotr.kuczynski@gmail.com>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: 7D2B AF1C F37B 13E2 069D 6956 105B D0E7 3949 9BDB GPG verified '/usr/local/rvm/archives/rvm-1.29.8.tgz' Creating group 'rvm' Installing RVM to /usr/local/rvm/ Installation of RVM in /usr/local/rvm/ is almost complete: * First you need to add all users that will be using rvm to 'rvm' group, and logout - login again, anyone using rvm will be operating with `umask u=rwx,g=rwx,o=rx`. * To start using RVM you need to run `source /etc/profile.d/rvm.sh` in all your open shell windows, in rare cases you need to reopen all shell windows. * Please do NOT forget to add your users to the rvm group. The installer no longer auto-adds root or users to the rvm group. Admins must do this. Also, please note that group memberships are ONLY evaluated at login time. This means that users must log out then back in before group membership takes effect! Thanks for installing RVM 🙏 Please consider donating to our open collective to help us maintain RVM. 👉 Donate: https://opencollective.com/rvm/donate
Ajouter un utilisateur au groupe RVM (par exemple : jenkins) :
usermod -aG rvm jenkins
Ruby
Activation autolibs
Pour savoir si RVM est paramétré pour installer automatiquement les dépendances manquantes, lancer la commande :
rvm autolibs status
Exemple de retour :
--- value: 4 number: 4 runner: opensuse description: Allow RVM to use package manager if found, install missing dependencies, install package manager (only OS X).
Si le retour est 3 ou 4, les dépendances manquantes seront automatiquement installées. En cas de retour tels que 0, 1 ou 2, lancer la commande suivante pour activer l'installation automatique des dépendances manquantes :
rvm autolibs enable
Plus d'informations sur https://rvm.io/rvm/autolibs.
Installation Ruby
Pour voir les version de Ruby disponibles à l'installation, taper la commande suivante :
rvm list known|grep \\[ruby
Exemple de retour :
[ruby-]1.8.6[-p420] [ruby-]1.8.7[-head] # security released on head [ruby-]1.9.1[-p431] [ruby-]1.9.2[-p330] [ruby-]1.9.3[-p551] [ruby-]2.0.0[-p648] [ruby-]2.1[.10] [ruby-]2.2[.10] [ruby-]2.3[.8] [ruby-]2.4[.6] [ruby-]2.5[.5] [ruby-]2.6[.3]
Pour installer la version désirée (par exemple, la dernière, la 2.6.3), lancer la commande suivante :
rvm install 2.6.3
Si des erreurs s'affichent, elles sont accompagnées de la localisation d'un fichier de log. Le consulter pour prendre connaissance du détail des erreurs et les corriger. Relancer ensuite l'installation.
Exemple de retour avec erreur :
Searching for binary rubies, this might take some time. No binary rubies available for: opensuse/20190409/x86_64/ruby-2.6.3. Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies. Checking requirements for opensuse. Installing requirements for opensuse. Updating system.. Installing required packages: libffi-devel, libopenssl-devel, sqlite3-devel, libyaml-devel.. Error running 'requirements_opensuse_libs_install libffi-devel libopenssl-devel sqlite3-devel libyaml-devel', please read /usr/local/rvm/log/1562143182_ruby-2.6.3/package_install_libffi-devel_libopenssl-devel_sqlite3-devel_libyaml-devel.log Requirements installation failed with status: 4.
Exemple de retour sans erreur :
Searching for binary rubies, this might take some time. No binary rubies available for: opensuse/20190409/x86_64/ruby-2.6.3. Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies. Checking requirements for opensuse. Requirements installation successful. Installing Ruby from source to: /usr/local/rvm/rubies/ruby-2.6.3, this may take a while depending on your cpu(s)... ruby-2.6.3 - #downloading ruby-2.6.3, this may take a while depending on your connection... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 13.8M 100 13.8M 0 0 5694k 0 0:00:02 0:00:02 --:--:-- 5694k ruby-2.6.3 - #extracting ruby-2.6.3 to /usr/local/rvm/src/ruby-2.6.3..... ruby-2.6.3 - #configuring....................................................................... ruby-2.6.3 - #post-configuration.. ruby-2.6.3 - #compiling............................................................................................. ruby-2.6.3 - #installing.................. ruby-2.6.3 - #making binaries executable.. ruby-2.6.3 - #downloading rubygems-3.0.4 % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 862k 100 862k 0 0 3904k 0 --:--:-- --:--:-- --:--:-- 3904k No checksum for downloaded archive, recording checksum in user configuration. ruby-2.6.3 - #extracting rubygems-3.0.4..... ruby-2.6.3 - #removing old rubygems........ ruby-2.6.3 - #installing rubygems-3.0.4......................................... ruby-2.6.3 - #gemset created /usr/local/rvm/gems/ruby-2.6.3@global ruby-2.6.3 - #importing gemset /usr/local/rvm/gemsets/global.gems................................................................ ruby-2.6.3 - #generating global wrappers....... ruby-2.6.3 - #gemset created /usr/local/rvm/gems/ruby-2.6.3 ruby-2.6.3 - #importing gemsetfile /usr/local/rvm/gemsets/default.gems evaluated to empty gem list ruby-2.6.3 - #generating default wrappers....... ruby-2.6.3 - #adjusting #shebangs for (gem irb erb ri rdoc testrb rake). Install of ruby-2.6.3 - #complete Ruby was built without documentation, to build it run: rvm docs generate-ri
Sélection version
Pour voir les versions installées et celle par défaut, lancer la commande :
rvm list
Exemple de retour :
=> ruby-2.5.5 [ x86_64 ] * ruby-2.6.3 [ x86_64 ] # => - current # =* - current && default # * - default
Dans l'exemple ci-dessus, on peut constater que la version de Ruby en cours d'utilisation est la 2.5.5 et que la version par défaut lors de l'ouverture d'une session est la 2.6.3.
N.B. : lors de l'installation d'une version de Ruby, cette version devient celle en cours sur la session ouverte.
Pour changer de version et en sélectionner une autre (par exemple : la 2.6.3), lancer la commande :
rvm use 2.6.3
Pour voir quelle version est en cours d'utilisation, lancer :
rvm use
Pour basculer sur la version par défaut, lancer :
rvm default