====== Jobsworth ======
===== Installation =====
https://github.com/ari/jobsworth/tree/v3.1
Je vais essayer d'écrire un tuto pour installer cette application web écrit en ruby dont je ne connais absolument rien.
La doc officiel commence a dater et les commandes sont souvent dépréciées voir obsolètes et je n'ai pas l'impression que ça soit adapté à Debian.
La partie installation de paquet viendra plus tard quand j'aurai le temps..
Normalement, tout est indiqué à l'adresse https://github.com/ari/jobsworth/tree/v3.1
Installation de rvm (c'est assez long...)
curl -L https://get.rvm.io | bash -s stable --autolibs=enabled --ruby --rails --trace
source /usr/local/rvm/scripts/rvm
rvm all do gem install bundler
rvm reload
Installation de **Passenger**
rvm all do gem install passenger
rvm all do passenger-install-apache2-module
Noté bien les messages suivant afin de configurer Apache.
The Apache 2 module was successfully installed.
Please edit your Apache configuration file, and add these lines:
LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p429/gems/passenger-4.0.5/libout/apache2/mod_passenger.so
PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p429/gems/passenger-4.0.5
PassengerDefaultRuby /usr/local/rvm/wrappers/ruby-1.9.3-p429/ruby
After you restart Apache, you are ready to deploy any number of Ruby on Rails
applications on Apache, without any further Ruby on Rails-specific
configuration!
Ici nous allons modifier le fichier adéquate
vi /etc/apache2/httpd.conf
et ajouter
LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.3-p429/gems/passenger-4.0.5/libout/apache2/mod_passenger.so
PassengerRoot /usr/local/rvm/gems/ruby-1.9.3-p429/gems/passenger-4.0.5
PassengerDefaultRuby /usr/local/rvm/wrappers/ruby-1.9.3-p429/ruby
Si nécessaire, désactivez le mod passenger par défaut de apache2
a2dismod passenger
Deploying a Ruby on Rails application: an example
Suppose you have a Rails application in /somewhere. Add a virtual host to your
Apache configuration file and set its DocumentRoot to /somewhere/public:
ServerName www.yourhost.com
# !!! Be sure to point DocumentRoot to 'public'!
DocumentRoot /somewhere/public
# This relaxes Apache security settings.
AllowOverride all
# MultiViews must be turned off.
Options -MultiViews
And that's it! You may also want to check the Users Guide for security and
optimization tips, troubleshooting and other useful information:
/usr/local/rvm/gems/ruby-1.9.3-p429/gems/passenger-4.0.5/doc/Users guide Apache.html
On télécharge via git
cd /var/www
git clone git://github.com/ari/jobsworth.git
cd jobsworth
git checkout v3.1
On configure l'accès à la base de données dans le fichier
cp config/database.example.yml config/database.yml
vi config/database.yml
On se place dans le répertoire racine de ce que l'on vient de télécharger puis on tape la commande suivante :
rvm all do bundle install --without=test development sqlite postgres
Ensuite on crée sa base de données mysql
CREATE DATABASE jobsworth DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL ON jobsworth.* TO 'user'@'hostname' IDENTIFIED BY 'password'
On s'assure d'être à la racine du projet et on tape
bundle exec lib/setup.rb
On répond aux questions et la 1ere fois on répond **y** pour **Initialize database schema [n]:**
On lance ensuite la mise a jour.
./update.sh
Et au cas ou
chown -R www-data.www-data /var/www/jobsworth
service apache2 restart
===== état des lieux =====
[root]# ruby -v
ruby 1.9.3p429 (2013-05-15 revision 40747) [x86_64-linux]
[root]# rails -v
Rails 3.2.13
[root]# rvm -v
rvm 1.20.13 (stable) by Wayne E. Seguin , Michal Papis [https://rvm.io/]
[root]# which ruby
/usr/local/rvm/rubies/ruby-1.9.3-p429/bin/ruby
[root]# which rails
/usr/local/rvm/gems/ruby-1.9.3-p429/bin/rails
[root]# which rvm
/usr/local/rvm/bin/rvm
[root]# which passenger
/usr/local/rvm/gems/ruby-1.9.3-p429/bin/passenger
===== Finalement... =====
Au final, rien ne fonctionne, ruby est pour moi une usine à gaz un peu comme nodeJS, ça installe des fichiers de partout sur le système et on a l'impression de ne plus maîtriser ce qu'il se passe.
Je vais donc faire marche arrière et tenter de faire le ménage car ruby prend déjà plus d'1 Go de place...
# rvm disk-usage all
Downloaded Archives Usage: 46M
Repositories Usage: 257M
Extracted Source Code Usage: 43M
Log Files Usage: 3,9M
Packages Usage: 2,1M
Rubies Usage: 119M
Gemsets Usage: 639M
Wrappers Usage: 296K
Temporary Files Usage: 4,0K
Other Files Usage: 4,2M
Total Disk Usage: 1,1G
Je me lance
# rvm remove all
Are you SURE you wish to 'remove' all rubies?
(anything other than 'yes' will cancel) > yes
/usr/local/rvm/src/ruby-1.9.3-p429 has already been removed.
Removing /usr/local/rvm/rubies/ruby-1.9.3-p429...
Removing ruby-1.9.3-p429 aliases...
Removing ruby-1.9.3-p429 wrappers...
Removing ruby-1.9.3-p429 environments...
Removing ruby-1.9.3-p429 binaries...
/usr/local/rvm/src/ruby-2.0.0-p195 has already been removed.
Removing /usr/local/rvm/rubies/ruby-2.0.0-p195...
Removing ruby-2.0.0-p195 aliases...
Removing ruby-2.0.0-p195 wrappers...
Removing ruby-2.0.0-p195 environments...
Removing ruby-2.0.0-p195 binaries...
# rvm cleanup all
Cleaning up rvm archives
Cleaning up rvm repos
Cleaning up rvm src
Cleaning up rvm log
Cleaning up rvm tmp
Cleaning up rvm gemsets
Cleaning up rvm links
Cleanup done.
On a gagné 1Go
# rvm disk-usage all
Downloaded Archives Usage: 4,0K
Repositories Usage: 4,0K
Extracted Source Code Usage: 4,0K
Log Files Usage: 4,0K
Packages Usage: 2,1M
Rubies Usage: 4,0K
Gemsets Usage: 8,0K
Wrappers Usage: 4,0K
Temporary Files Usage: 4,0K
Other Files Usage: 4,1M
Total Disk Usage: 6,2M