Backup process label is now unique for each project

This commit is contained in:
Einar Forselv 2019-12-08 03:51:57 +01:00
parent be74715595
commit e8123922df
3 changed files with 13 additions and 3 deletions

View File

@ -113,7 +113,7 @@ def backup(config, containers):
environment=containers.this_container.environment, environment=containers.this_container.environment,
source_container_id=containers.this_container.id, source_container_id=containers.this_container.id,
labels={ labels={
"restic-compose-backup.backup_process": 'True', containers.backup_process_label: 'True',
"com.docker.compose.project": containers.project_name, "com.docker.compose.project": containers.project_name,
}, },
) )

View File

@ -141,7 +141,7 @@ class Container:
@property @property
def is_backup_process_container(self) -> bool: def is_backup_process_container(self) -> bool:
"""Is this container the running backup process?""" """Is this container the running backup process?"""
return self.get_label(enums.LABEL_BACKUP_PROCESS) == 'True' return self.get_label(self.backup_process_label) == 'True'
@property @property
def is_running(self) -> bool: def is_running(self) -> bool:
@ -158,6 +158,11 @@ class Container:
"""Name of the container/service""" """Name of the container/service"""
return self.get_label('com.docker.compose.service', default='') return self.get_label('com.docker.compose.service', default='')
@property
def backup_process_label(self) -> str:
"""str: The unique backup process label for this project"""
return f"{enums.LABEL_BACKUP_PROCESS}-{self.project_name}"
@property @property
def project_name(self) -> str: def project_name(self) -> str:
"""Name of the compose setup""" """Name of the compose setup"""
@ -358,6 +363,11 @@ class RunningContainers:
"""str: Name of the compose project""" """str: Name of the compose project"""
return self.this_container.project_name return self.this_container.project_name
@property
def backup_process_label(self) -> str:
"""str: The backup process label for this project"""
return self.this_container.backup_process_label
@property @property
def backup_process_running(self) -> bool: def backup_process_running(self) -> bool:
"""Is the backup process container running?""" """Is the backup process container running?"""

View File

@ -8,4 +8,4 @@ LABEL_MYSQL_ENABLED = 'restic-compose-backup.mysql'
LABEL_POSTGRES_ENABLED = 'restic-compose-backup.postgres' LABEL_POSTGRES_ENABLED = 'restic-compose-backup.postgres'
LABEL_MARIADB_ENABLED = 'restic-compose-backup.mariadb' LABEL_MARIADB_ENABLED = 'restic-compose-backup.mariadb'
LABEL_BACKUP_PROCESS = 'restic-compose-backup.backup_process' LABEL_BACKUP_PROCESS = 'restic-compose-backup.process'