new work flow 1
This commit is contained in:
parent
2d027afa29
commit
d91df030be
23
create.sh
23
create.sh
@ -3,6 +3,8 @@
|
|||||||
name="$1"
|
name="$1"
|
||||||
sshURL="$2"
|
sshURL="$2"
|
||||||
|
|
||||||
|
nodePort=`./random_port.py`
|
||||||
|
|
||||||
eval "$(ssh-agent -s)"
|
eval "$(ssh-agent -s)"
|
||||||
ssh-add /root/.ssh/id_github_rsa
|
ssh-add /root/.ssh/id_github_rsa
|
||||||
mkdir /var/www/gitwrapper/$name
|
mkdir /var/www/gitwrapper/$name
|
||||||
@ -14,26 +16,29 @@ DJANGO_SETTINGS_MODULE=project.settings.prod
|
|||||||
export DJANGO_SETTINGS_MODULE=project.settings.prod
|
export DJANGO_SETTINGS_MODULE=project.settings.prod
|
||||||
|
|
||||||
git clone $sshURL .
|
git clone $sshURL .
|
||||||
/usr/local/bin/virtualenv ./env
|
|
||||||
source env/bin/activate
|
./scripts/setUp.sh
|
||||||
pip install -r requirements.txt
|
|
||||||
cp /var/www/local_settings.py project/settings/local_settings.py
|
cp /var/www/local_settings.py project/settings/local_settings.py
|
||||||
echo "BRANCH = '$name'" >> project/settings/local_settings.py
|
echo "BRANCH = '$name'" >> project/settings/local_settings.py
|
||||||
|
|
||||||
|
# set up project from prod, load database
|
||||||
git checkout prod
|
git checkout prod
|
||||||
|
|
||||||
python manage.py createcachetable
|
./manage.py createcachetable
|
||||||
python3 manage.py migrate
|
./manage.py migrate
|
||||||
python3 manage.py loaddata /var/www/django.json
|
./manage.py loaddata /var/www/django.json
|
||||||
|
|
||||||
git checkout $name
|
git checkout $name
|
||||||
|
|
||||||
pip install -r requirements.txt
|
./scripts/setUp.sh
|
||||||
|
|
||||||
python3 manage.py collectstatic --noinput
|
# python3 manage.py collectstatic --noinput
|
||||||
python3 manage.py migrate
|
./manage.py migrate
|
||||||
chmod 777 db.sqlite3
|
chmod 777 db.sqlite3
|
||||||
|
|
||||||
|
|
||||||
|
# set up apache vhost
|
||||||
echo "<VirtualHost *:80>" > /etc/apache2/sites-enabled/$name.conf
|
echo "<VirtualHost *:80>" > /etc/apache2/sites-enabled/$name.conf
|
||||||
echo " ServerName $name.staging.bytedev.co" >> /etc/apache2/sites-enabled/$name.conf
|
echo " ServerName $name.staging.bytedev.co" >> /etc/apache2/sites-enabled/$name.conf
|
||||||
echo " Alias /static /var/www/gitwrapper/$name/staticfiles" >> /etc/apache2/sites-enabled/$name.conf
|
echo " Alias /static /var/www/gitwrapper/$name/staticfiles" >> /etc/apache2/sites-enabled/$name.conf
|
||||||
|
9
random_port.py
Executable file
9
random_port.py
Executable file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
import socket
|
||||||
|
|
||||||
|
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||||
|
s.bind(('', 0))
|
||||||
|
addr = s.getsockname()
|
||||||
|
print (addr[1])
|
||||||
|
s.close()
|
||||||
|
exit(0)
|
@ -12,19 +12,19 @@ var calls = {
|
|||||||
create: function(req, res, name, sshURL){
|
create: function(req, res, name, sshURL){
|
||||||
return exec('bash /var/www/gitdeploy/create.sh '+name+' '+sshURL, function(err, stdout, stderr){
|
return exec('bash /var/www/gitdeploy/create.sh '+name+' '+sshURL, function(err, stdout, stderr){
|
||||||
console.log(err, stdout, stderr);
|
console.log(err, stdout, stderr);
|
||||||
return res.json({ title: 'Express' });
|
return res.json({ title: stdout });
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
update: function(req, res, name, sshURL){
|
update: function(req, res, name, sshURL){
|
||||||
return exec('bash /var/www/gitdeploy/update.sh '+name+' '+sshURL, function(err, stdout, stderr){
|
return exec('bash /var/www/gitdeploy/update.sh '+name+' '+sshURL, function(err, stdout, stderr){
|
||||||
console.log(err, stdout, stderr);
|
console.log(err, stdout, stderr);
|
||||||
return res.json({ title: 'Express' });
|
return res.json({ title: stdout });
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
delete: function(req, res, name, sshURL){
|
delete: function(req, res, name, sshURL){
|
||||||
return exec('bash /var/www/gitdeploy/delete.sh '+name+' '+sshURL, function(err, stdout, stderr){
|
return exec('bash /var/www/gitdeploy/delete.sh '+name+' '+sshURL, function(err, stdout, stderr){
|
||||||
console.log(err, stdout, stderr);
|
console.log(err, stdout, stderr);
|
||||||
return res.json({ title: 'Express' });
|
return res.json({ title: stdout });
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,17 +2,18 @@
|
|||||||
name="$1"
|
name="$1"
|
||||||
sshURL="$2"
|
sshURL="$2"
|
||||||
|
|
||||||
|
# set up git to auth
|
||||||
eval "$(ssh-agent -s)"
|
eval "$(ssh-agent -s)"
|
||||||
ssh-add /root/.ssh/id_github_rsa
|
ssh-add /root/.ssh/id_github_rsa
|
||||||
|
|
||||||
DJANGO_SETTINGS_MODULE=project.settings.prod
|
DJANGO_SETTINGS_MODULE=project.settings.prod
|
||||||
export DJANGO_SETTINGS_MODULE=project.settings.prod
|
export DJANGO_SETTINGS_MODULE=project.settings.prod
|
||||||
|
|
||||||
cd /var/www/gitwrapper/$name
|
cd /var/www/gitwrapper/$name
|
||||||
|
|
||||||
source env/bin/activate
|
|
||||||
|
|
||||||
git stash
|
git stash
|
||||||
git pull --force origin $name
|
git pull --force origin $name
|
||||||
pip install -r requirements.txt
|
|
||||||
|
./scripts/setUp.sh
|
||||||
|
|
||||||
python3 manage.py collectstatic --noinput
|
python3 manage.py collectstatic --noinput
|
||||||
python3 manage.py migrate
|
python3 manage.py migrate
|
||||||
|
Loading…
x
Reference in New Issue
Block a user