Files
docker-updater/update.py
T
2021-08-24 19:11:22 +02:00

43 lines
1020 B
Python
Executable File

#!/usr/bin/python3
from pathlib import Path
from subprocess import call
from datetime import datetime
from typing import List
def main():
build_images()
update_containers()
def build_images():
images = read_file(Path('images.conf'))
today = datetime.now().strftime('%Y%m%d')
for image in images:
path = Path(f'../images/{image}')
call(['docker', 'build', '--no-cache', f'--tag={image}-panthera:{today}', '.'],
cwd=path)
def update_containers():
containers = read_file(Path('container.conf'))
for container in containers:
path = Path(f'../container/{container}')
call(['docker-compose', 'pull'],
cwd=path)
call(['docker-compose', 'up', '-d'],
cwd=path)
def read_file(path: Path) -> List[str]:
content = path.read_text().strip()
elements = content.split('\n')
elements = [item for item in elements if not item.startswith('#')]
return elements
if __name__ == "__main__":
main()