Merge pull request 'add-healthcheck-support' (#17) from add-healthcheck-support into main
Reviewed-on: https://git.jbranan.com/jblu/crane/pulls/17
This commit was merged in pull request #17.
	This commit is contained in:
		| @@ -10,20 +10,17 @@ def apprise_notify(req_obj, host, port, aurls, title, body): | ||||
|  | ||||
| class AppriseClient: | ||||
|     def __init__(self): | ||||
|         self.config = '' | ||||
|         try: | ||||
|             if os.environ["DOCKER"]: | ||||
|                 self.host = os.environ["host"] | ||||
|                 self.port = os.environ["port"] | ||||
|                 self.aurls = os.environ["aurls"] | ||||
|                 self.title = os.environ["title"] | ||||
|                 self.body = os.environ["body"] | ||||
|             if os.environ["toml_path"]: | ||||
|                 config_file_path=os.environ["toml_path"] | ||||
|                 with open(config_file_path, 'rb') as c: | ||||
|                     self.config = load(c) | ||||
|         except: | ||||
|             KeyError | ||||
|         if os.getenv("DOCKER"): | ||||
|             self.host = os.getenv("host") | ||||
|             self.port = os.getenv("port") | ||||
|             self.aurls = os.getenv("aurls") | ||||
|             self.title = os.getenv("title") | ||||
|             self.body = os.getenv("body") | ||||
|         if os.getenv("toml_path"): | ||||
|             config_file_path=os.getenv("toml_path") | ||||
|             with open(config_file_path, 'rb') as c: | ||||
|                 self.config = load(c) | ||||
|  | ||||
|         if os.path.exists('./config.toml'): | ||||
|             config_file_path = './config.toml' | ||||
|             with open(config_file_path, 'rb') as c: | ||||
|   | ||||
| @@ -41,4 +41,10 @@ def get_script_runtime(self): | ||||
|     if self.use_pushover: | ||||
|         self.extm = f"Execution time: [{elapsed_time}]" | ||||
|     if self.use_apprise: | ||||
|         self.extm = f"Execution time: [{elapsed_time}]" | ||||
|         self.extm = f"Execution time: [{elapsed_time}]" | ||||
|  | ||||
| def send_ping(self, req_obj, healthcheck_url): | ||||
|     try: | ||||
|         req_obj.get(healthcheck_url, timeout=10) | ||||
|     except req_obj.RequestException as e: | ||||
|         self.tl.info(f"Ping failed: {e}") | ||||
							
								
								
									
										4
									
								
								crane.py
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								crane.py
									
									
									
									
									
								
							| @@ -54,6 +54,8 @@ class Crn: | ||||
|         #containers | ||||
|         self.observed_containers = list(self.config["containers"].values()) | ||||
|         self.container_statuses = ["paused","dead","created","exited","removing","restarting","created"] | ||||
|         #healthcheck | ||||
|         self.healthcheck_url = self.config["healthcheck"]["healthcheck_url"] | ||||
|  | ||||
|         cont_log(self) | ||||
|         cont_notify(self) | ||||
| @@ -80,6 +82,8 @@ class Crn: | ||||
|             cont_notify_summary(self, apprise_notify, requests) | ||||
|         if self.use_apprise: | ||||
|             cont_notify_summary(self, apprise_notify, requests) | ||||
|         send_ping(self, requests, self.healthcheck_url) | ||||
|          | ||||
| # Run | ||||
| if  __name__== "__main__": | ||||
|     Crn() | ||||
		Reference in New Issue
	
	Block a user