Ruby
De Linuxmemo.
(→RVM behind a proxy) |
(→Ruby $VERBOSE et $DEBUG) |
||
(14 versions intermédiaires masquées) | |||
Ligne 31 : | Ligne 31 : | ||
*Lister les Gems déjà installés | *Lister les Gems déjà installés | ||
gem list | gem list | ||
+ | |||
+ | *Où sont installées mes gem ??? | ||
+ | '''gem env''' | ||
+ | --Rvm | ||
+ | $ rvm gemdir | ||
+ | Or you can check: | ||
+ | echo $GEM_HOME | ||
+ | --Bundler | ||
+ | $ bundle show --paths | ||
+ | --For specific gem: | ||
+ | $ bundle show 'gem_name' | ||
+ | --Gem | ||
+ | $ gem env | ||
+ | For specific gem: | ||
+ | $ gem which 'gem_name' | ||
+ | |||
+ | *Gem sources list | ||
+ | gem sources [options] | ||
+ | Options: | ||
+ | -a, --add SOURCE_URI - Add source | ||
+ | -l, --list - List sources | ||
+ | -r, --remove SOURCE_URI - Remove source | ||
+ | -c, --clear-all - Remove all sources (clear the cache) | ||
+ | -u, --update - Update source cache | ||
==Configuration et proxy== | ==Configuration et proxy== | ||
Fichier .gemrc | Fichier .gemrc | ||
cat ~/.gemrc | cat ~/.gemrc | ||
- | http-proxy: http://172. | + | --- |
+ | :backtrace: false | ||
+ | :bulk_threshold: 1000 | ||
+ | :sources: | ||
+ | - http://rubygems.org/ | ||
+ | :update_sources: true | ||
+ | :verbose: true | ||
+ | http-proxy: http://172.xx.251.23:8080 | ||
+ | https-proxy: https://172.xx.251.23:8080 | ||
==Gemfile== | ==Gemfile== | ||
Ligne 42 : | Ligne 74 : | ||
Puis dans le rep où ce trouve le Gemfile | Puis dans le rep où ce trouve le Gemfile | ||
bundle install | bundle install | ||
+ | ou | ||
+ | bundle install --system | ||
+ | Force bundle install to use https:// instead of git:// for GitHub-based gems | ||
+ | git config --global url."https://github.com".insteadOf git://github.com | ||
==Ruby Version Manager - RVM== | ==Ruby Version Manager - RVM== | ||
Ligne 56 : | Ligne 92 : | ||
PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting | PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting | ||
source ~/.rvm/scripts/rvm | source ~/.rvm/scripts/rvm | ||
- | rvm list | + | rvm list known |
doit vous donner la liste de toutes les version de Ruby disponibles. | doit vous donner la liste de toutes les version de Ruby disponibles. | ||
- | + | test: | |
- | + | rvmtest() { | |
- | + | type rvm|head -1 #rvm est une fonction | |
- | + | ||
- | rvm | + | |
- | + | ||
- | + | ||
ruby -v | ruby -v | ||
- | + | which ruby | |
+ | } | ||
+ | rvmtest | ||
- | + | ===Utilisation=== | |
- | + | Voir: [[Rvm]] | |
- | + | ||
- | + | ||
- | + | ||
===Bugs=== | ===Bugs=== | ||
Ligne 131 : | Ligne 162 : | ||
http-proxy: http://172.21.251.23:8080 | http-proxy: http://172.21.251.23:8080 | ||
https-proxy: https://172.21.251.23:8080 | https-proxy: https://172.21.251.23:8080 | ||
+ | |||
+ | |||
+ | ==Ruby $VERBOSE et $DEBUG== | ||
+ | https://docs.ruby-lang.org/en/2.3.0/globals_rdoc.html | ||
+ | |||
+ | https://mislav.net/2011/06/ruby-verbose-mode/ | ||
+ | |||
+ | ==Ruby help== | ||
+ | *lister les classes | ||
+ | objet.class | ||
+ | *lister les methodes | ||
+ | objet.methods |
Version actuelle en date du 7 octobre 2021 à 11:17
Sommaire |
[modifier] Gem
Un Gem est un paquet fournit par la communauté de Ruby.On peut comparer ça en quelque sorte a un "zip", il contient le module à installer, et un descripteur qui est utiliser pour l'installer (et lu automatiquement par RubyGems). Le Gem peut être téléchargé manuellement ou automatiquement via RubyGems.
http://docs.rubygems.org/read/book/1
http://rubyforge.org/projects/rubygems
- Pour installer un Gem, il y a deux méthodes :
Si le gem se trouve dans le registre des gems distants , vous devez exécuter :
gem install leNomDeMonGem gem install msgpack -v 0.4.6
Si vous avez déjà télécharger le fichier .gem, allez dans le répertoire où se trouve le .gem, et exécutez :
gem install leNomDeMon.gem
- Rechercher un Gem
gem search paterne -r
Le "-r" sert a indiquer a RubyGems de chercher le Gem sur le serveur distant.
- Désinstaller un Gem
gem uninstall leNomDeMonGem
- Mettre a jour
gem update leNomDeMonGem
Ou pour mettre à jour tout les gems :
gem update
- Lister les Gems déjà installés
gem list
- Où sont installées mes gem ???
gem env --Rvm $ rvm gemdir Or you can check: echo $GEM_HOME --Bundler $ bundle show --paths --For specific gem: $ bundle show 'gem_name' --Gem $ gem env For specific gem: $ gem which 'gem_name'
- Gem sources list
gem sources [options] Options: -a, --add SOURCE_URI - Add source -l, --list - List sources -r, --remove SOURCE_URI - Remove source -c, --clear-all - Remove all sources (clear the cache) -u, --update - Update source cache
[modifier] Configuration et proxy
Fichier .gemrc
cat ~/.gemrc --- :backtrace: false :bulk_threshold: 1000 :sources: - http://rubygems.org/ :update_sources: true :verbose: true http-proxy: http://172.xx.251.23:8080 https-proxy: https://172.xx.251.23:8080
[modifier] Gemfile
Gemfile est un fichier d'installation automatique des dépendance gem pour un logiciel ou un script. Il se gère avec Bundler.
gem install bundler
Puis dans le rep où ce trouve le Gemfile
bundle install ou bundle install --system
Force bundle install to use https:// instead of git:// for GitHub-based gems
git config --global url."https://github.com".insteadOf git://github.com
[modifier] Ruby Version Manager - RVM
Source: http://cplusn.com/2011/12/installer-rvm-sur-ubuntu/
RVM permet d’installer facilement plusieurs environnement Ruby sur une même machine. Mais il apporte un tel confort dans l’installation de Ruby (et en particulier de la version 1.9.2 qui n’est pas encore dans les dépôts officiels de Canonical) que même pour une seule version de Ruby, je ne saurais plus m’en passer !
[modifier] Install
Ne pas installer la version des dépôts Ubuntu car obsolète. Installer sous le compte utilisateur, la version rvm.io.
curl -sSL https://get.rvm.io | bash vim ~\.bashrc PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting source ~/.rvm/scripts/rvm rvm list known
doit vous donner la liste de toutes les version de Ruby disponibles.
test:
rvmtest() { type rvm|head -1 #rvm est une fonction ruby -v which ruby } rvmtest
[modifier] Utilisation
Voir: Rvm
[modifier] Bugs
- Optionnel : si comme moi, vous avez un message d’erreur en installant rails indiquant l’absence de zlib, vous pouvez essayer les commandes suivantes :
rvm pkg install zlib rvm remove 1.9.2 rvm install 1.9.2
[modifier] RVM behind a proxy
- install
apt-get install build-essential apt-get install curl apt-get install zlib1g-dev libreadline-dev libssl-dev libxml2-dev curl -sSL https://get.rvm.io | bash -s stable Append the following line to your ~/.bashrc file. -s "$HOME/.rvm/scripts/rvm" && . "$HOME/.rvm/scripts/rvm" # This loads RVM And then reload your bash environment (or close the terminal window and open a new one). source ~/.bashrc rvm requirements rvm install 1.9.3 rvm use 1.9.3
- Export your shell environment for http proxy use
export http_proxy="http://hostname:port" or save it to your shell profile. (i.e. ~/.bash_rc) export http_proxy="http://example.proxy_name.com:80"
- For multi-user installs, use sudo -E to preserve the proxy settings in your environment:
curl -L https://get.rvm.io | sudo -E bash -s stable
- Setting git to use a proxy
Set your git tool to use the environment proxy inside you ~/.gitconfig
[http] proxy = %http_proxy%
- Using RVM behind a proxy
There are a few ways to use RVM from behind a proxy.
--proxy
You can pass the proxy sever to use directly to RVM:
rvm install X --proxy $domain_or_ip:$port
Using CURL
Set the proxy inside your ~/.curlrc: proxy = example.proxy_name.com:80
[modifier] .gemrc
cat .gemrc --- :backtrace: false :bulk_threshold: 1000 :sources: - http://rubygems.org/ :update_sources: true :verbose: true http-proxy: http://172.21.251.23:8080 https-proxy: https://172.21.251.23:8080
[modifier] Ruby $VERBOSE et $DEBUG
https://docs.ruby-lang.org/en/2.3.0/globals_rdoc.html
https://mislav.net/2011/06/ruby-verbose-mode/
[modifier] Ruby help
- lister les classes
objet.class
- lister les methodes
objet.methods