Improve deployment script

This commit is contained in:
Radon Rosborough 2020-06-12 11:55:52 -06:00
parent 0a05a0eb92
commit a96ed753b2
3 changed files with 26 additions and 13 deletions

View File

@ -10,7 +10,7 @@ import sys
import tempfile import tempfile
import time import time
result = subprocess.run(["pgrep", "-x", "riju-install"], stdout=subprocess.PIPE) result = subprocess.run(["pgrep", "-x", "riju-deploy"], stdout=subprocess.PIPE)
assert result.returncode in {0, 1} assert result.returncode in {0, 1}
for pid in result.stdout.decode().splitlines(): for pid in result.stdout.decode().splitlines():
print(f"Found existing process {pid}, trying to kill ...", file=sys.stderr) print(f"Found existing process {pid}, trying to kill ...", file=sys.stderr)
@ -38,14 +38,4 @@ with tempfile.TemporaryDirectory() as tmpdir:
check=True, check=True,
) )
os.chdir("riju") os.chdir("riju")
subprocess.run(["make", "image-prod"], check=True) subprocess.run(["scripts/deploy-phase2.py"])
subprocess.run(["scripts/install-scripts.bash"], check=True)
subprocess.run(["docker", "system", "prune", "-f"], check=True)
existing_containers = subprocess.run(
["docker", "ps", "-q"], check=True, stdout=subprocess.PIPE
).output.splitlines()
if existing_containers:
subprocess.run(["docker", "kill", *existing_containers], check=True)
subprocess.run(["systemctl", "restart", "riju"], check=True)
print("==> Successfully deployed Riju! <==", file=sys.stderr)

23
scripts/deploy-phase2.py Executable file
View File

@ -0,0 +1,23 @@
#!/usr/bin/env python3
import argparse
import errno
import os
import re
import signal
import subprocess
import sys
import tempfile
import time
subprocess.run(["make", "image-prod"], check=True)
subprocess.run(["docker", "system", "prune", "-f"], check=True)
existing_containers = subprocess.run(
["docker", "ps", "-q"], check=True, stdout=subprocess.PIPE
).output.splitlines()
subprocess.run(["scripts/install-scripts.bash"], check=True)
if existing_containers:
subprocess.run(["docker", "kill", *existing_containers], check=True)
subprocess.run(["systemctl", "restart", "riju"], check=True)
print("==> Successfully deployed Riju! <==", file=sys.stderr)

View File

@ -6,6 +6,6 @@ set -o pipefail
cp scripts/riju.service /etc/systemd/system/riju.service cp scripts/riju.service /etc/systemd/system/riju.service
cp scripts/certbot-pre.bash /etc/letsencrypt/renewal-hooks/pre/riju cp scripts/certbot-pre.bash /etc/letsencrypt/renewal-hooks/pre/riju
cp scripts/certbot-post.bash /etc/letsencrypt/renewal-hooks/post/riju cp scripts/certbot-post.bash /etc/letsencrypt/renewal-hooks/post/riju
cp scripts/install.py /usr/bin/riju-install cp scripts/deploy-phase1.py /usr/bin/riju-deploy
systemctl daemon-reload systemctl daemon-reload