dockerutils/docker_update.py
2022-06-19 22:35:24 -04:00

37 lines
1.1 KiB
Python

import os
import sys
import subprocess
from datetime import date
if len(sys.argv) != 3:
print("Invalid number of arguments\n")
exit(1)
path = os.path.abspath(sys.argv[1])
spec_file = os.path.abspath(sys.argv[2])
with open(spec_file,"r") as f:
lines = f.readlines()
print(">>>>>>>>>> docker_update.py@" + date.today() + " <<<<<<<<<<")
for line in lines:
s = line.strip()
if s.startswith("#"):
continue
fullpath = os.path.join(path, s)
if os.path.isdir(fullpath) and ("docker-compose.yml" in os.listdir(fullpath)):
fullpath = os.path.join(fullpath, "docker-compose.yml")
print("========= Processing " + fullpath + " =========")
print(subprocess.check_output("docker-compose -f " + fullpath + " pull", shell=True))
print(subprocess.check_output("docker-compose -f " + fullpath + " up -d", shell=True))
else:
print("========= Skipping " + fullpath + ": invalid dir or docker-compos.yml =========")
print("========== CLEANING UP ==========")
print(subprocess.check_output("docker system prune -af", shell=True))
print("Docker update complete!\n")