diff --git a/composer/agent.py b/composer/agent.py index eb14346..619a1fa 100644 --- a/composer/agent.py +++ b/composer/agent.py @@ -115,7 +115,6 @@ class Composer: self.scheduler.start() self._update_job = self.start_update_job() self._create_services() - self.set_status("up") logger.info("Composer started and services created") def _create_services(self): @@ -127,19 +126,6 @@ class Composer: services_dict = self.docker.compose.config().services self.services = {service: Service(service, services_dict[service].labels, self) for service in services_dict} - def get_container_info(self): - - """Gets the docker container info - - Returns: - A docker container if it exists, if not returns None. - """ - - container = self.parent.docker.compose.ps(services=[self.name]) - if not container: - return None - return container[0] - def start_update_job(self): """Schedules a recurring update based on the UPDATE environment variable @@ -240,6 +226,19 @@ class Service: return None self._update_task.remove() + def get_container_info(self): + + """Gets the docker container info + + Returns: + A docker container if it exists, if not returns None. + """ + + container = self.parent.docker.compose.ps(services=[self.name]) + if not container: + return None + return container[0] + def start_update_job(self): """Schedules a recurring update based on the composer.update label diff --git a/composer/connector.py b/composer/connector.py index 92c6e69..1e341d3 100644 --- a/composer/connector.py +++ b/composer/connector.py @@ -1,3 +1,31 @@ +from agent import * +import json + class Connector: - def __init__ \ No newline at end of file + def __init__(self, connector): + self.connector = connector + + def get_container_info(self, container_name): + if container_name not in self.connector.services: + return None + container = self.connector.services[container_name].get_container_info() + return json.loads({ + "image": container.image, + "status": container.state.status + }) + + def set_container_status(self, container_name, status): + if container_name not in self.connector.services: + return None + self.connector.services[container_name].set_status(status) + +Setup.populate_store() +Setup.create_symlink() +remote = Setup.create_credential_remote() +composer = Composer(remote) +connector = Connector(composer) +while True: + container = input("Container: ") + status = input("Connector: ") + connector.set_container_status(container, status) \ No newline at end of file diff --git a/composer/entrypoint.py b/composer/entrypoint.py deleted file mode 100644 index ef9aeac..0000000 --- a/composer/entrypoint.py +++ /dev/null @@ -1,11 +0,0 @@ -from agent import * -import logging -from os import getenv -import time - -Setup.populate_store() -Setup.create_symlink() -remote = Setup.create_credential_remote() -composer = Composer(remote) -while True: - time.sleep(1) \ No newline at end of file