This commit is contained in:
William Mantly 2016-06-16 22:51:16 -04:00
parent 307856f969
commit ad1c8e7205
4 changed files with 44 additions and 17 deletions

View File

@ -43,4 +43,4 @@ echo "</VirtualHost>" >> /etc/apache2/sites-enabled/$name.conf
service apache2 restart
# copy and make data base
exit 0

10
delete.sh Normal file
View File

@ -0,0 +1,10 @@
#!/bin/bash
name="$1"
sshURL="$2"
rm -rf /var/www/gitwrapper/$name
rm /etc/apache2/sites-enabled/$name.conf
service apache2 reload
exit 0

View File

@ -1,19 +1,12 @@
var express = require('express');
var router = express.Router();
var exec = require('child_process').exec;
var fs = require('fs');
var fs = fs.existsSync(dir)
/* GET home page. */
var install_dir = '/var/www/gitwrapper/'
// var shell = {
// clone: function(name, sshURL, callback){
// return exec('git clone '+ sshURL + ' '+ install_dir + name, function(err, stdout, stderr){
// return callback(name, stdout);
// },
// setUpENV: function(){
// }
// };
var calls = {
@ -23,15 +16,14 @@ var calls = {
});
},
update: function(name, sshURL){
// git pull
// run migrations
// install req file
// reload apache
return exec('bash update.sh '+name+' '+sshURL, function(err, stdout, stderr){
return res.json({ title: 'Express' });
});
},
delete: function(name){
// delete dir
// remove apache file
// reload apache
return exec('bash delete.sh '+name+' '+sshURL, function(err, stdout, stderr){
return res.json({ title: 'Express' });
});
}
};
@ -43,6 +35,7 @@ router.all('/', function(req, res, next) {
var name = req.body.ref.replace('refs/heads/', '');
var sshURL = req.body.repository.ssh_url;
if(call === 'update' && !fs.existsSync('/var/www/gitwrapper/'+name)) call = 'create';
return calls[call](req, res, name, sshURL);
});

24
update.sh Normal file
View File

@ -0,0 +1,24 @@
#!/bin/bash
name="$1"
sshURL="$2"
eval "$(ssh-agent -s)"
ssh-add /root/.ssh/id_github_rsa
DJANGO_SETTINGS_MODULE=project.settings.prod
export DJANGO_SETTINGS_MODULE=project.settings.prod
cd /var/www/gitwrapper/$name
source env/bin/activate
git stash
git pull --force origin $name
pip install -r requirements.txt
python3 manage.py collectstatic --noinput
python3 manage.py migrate
chmod 777 .
chmod 777 db.sqlite3
service apache2 reload
exit 0