projects
/
euphorik.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
minimodif
[euphorik.git]
/
tools
/
mise_en_prod.rb
diff --git
a/tools/mise_en_prod.rb
b/tools/mise_en_prod.rb
index
09cd568
..
ae0bb8f
100755
(executable)
--- a/
tools/mise_en_prod.rb
+++ b/
tools/mise_en_prod.rb
@@
-18,13
+18,6
@@
You should have received a copy of the GNU General Public License
along with Euphorik. If not, see <http://www.gnu.org/licenses/>.
=end
along with Euphorik. If not, see <http://www.gnu.org/licenses/>.
=end
-
-
-### MAKE
-Dir.chdir('../modules')
-puts `make`
-
-### COPIE
$rep_remote = '/var/www/euphorik'
$host = 'euphorik.ch'
$opt_rsync = ''
$rep_remote = '/var/www/euphorik'
$host = 'euphorik.ch'
$opt_rsync = ''
@@
-36,12
+29,25
@@
def creer_remote_rep(rep)
end
end
end
end
-creer_remote_rep('BD')
+# Compilation de la partie serveur
+Dir.chdir('../modules')
+puts `make`
+if $?.exitstatus != 0
+ puts "Echec de compilation de la partie serveuse"
+ exit 1
+end
Dir.chdir('..')
Dir.chdir('..')
+
+# création du repertoire BD
+creer_remote_rep('BD')
+`ssh #{$host} "chmod g+w #{$rep_remote}/BD"`
+
+# copie de la partie statique : css, images, html, etc..
print `rsync #{$opt_rsync} index.yaws #{$host}:#{$rep_remote}`
print `rsync #{$opt_rsync} favicon.ico #{$host}:#{$rep_remote}`
print `rsync #{$opt_rsync} -r css #{$host}:#{$rep_remote}`
print `rsync #{$opt_rsync} index.yaws #{$host}:#{$rep_remote}`
print `rsync #{$opt_rsync} favicon.ico #{$host}:#{$rep_remote}`
print `rsync #{$opt_rsync} -r css #{$host}:#{$rep_remote}`
+print `rsync #{$opt_rsync} -r pages #{$host}:#{$rep_remote}`
print `rsync #{$opt_rsync} -r --exclude 'autres' img #{$host}:#{$rep_remote}`
# copie des js avec minification
print `rsync #{$opt_rsync} -r --exclude 'autres' img #{$host}:#{$rep_remote}`
# copie des js avec minification
@@
-54,8
+60,14
@@
Dir.entries(rep_js).each{|fichier|
end
}
end
}
+# copie des modules erlang
creer_remote_rep('modules')
creer_remote_rep('modules')
-`rsync #{$opt_rsync} -r modules/ebin #{$host}:#{$rep_remote}/modules`
-`rsync #{$opt_rsync} -r
pages #{$host}:#{$rep_remote}
`
+`rsync #{$opt_rsync} -r
--exclude 'euphorik_test.beam'
modules/ebin #{$host}:#{$rep_remote}/modules`
+`rsync #{$opt_rsync} -r
modules/include #{$host}:#{$rep_remote}/modules
`
+# attribution des droits
+`ssh #{$host} "chmod -R g+rx #{$rep_remote}"`
+# execution du script de mise à jour
+print `cat tools/mise_en_prod.erl | ssh #{$host} "cat > /tmp/mise_en_prod.erl"`
+print `ssh #{$host} "chmod u+x /tmp/mise_en_prod.erl; /tmp/mise_en_prod.erl; rm /tmp/mise_en_prod.erl"`