From d84c620e0f1e4b8ea112de00b9242523239b6f75 Mon Sep 17 00:00:00 2001
From: Felipe Reyes <felipe.reyes@canonical.com>
Date: Tue, 9 May 2023 09:33:10 -0400
Subject: [PATCH] Add default container configs and healthcheck layer

---
 charms/heat-k8s/src/charm.py | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/charms/heat-k8s/src/charm.py b/charms/heat-k8s/src/charm.py
index 2ae20bfd..1dba9501 100755
--- a/charms/heat-k8s/src/charm.py
+++ b/charms/heat-k8s/src/charm.py
@@ -52,6 +52,32 @@ class HeatOperatorCharm(sunbeam_charm.OSBaseOperatorAPICharm):
                 'public_url': f'{self.public_url}',
                 'admin_url': f'{self.admin_url}'}]
 
+    def get_healthcheck_layer(self) -> dict:
+        """Health check pebble layer.
+
+        :returns: pebble health check layer configuration for heat service
+        """
+        return {
+            "checks": {
+                "online": {
+                    "override": "replace",
+                    "level": "ready",
+                    "http": {"url": self.charm.healthcheck_http_url},
+                },
+            }
+        }
+
+    def default_container_configs(self):
+        """Base container configs."""
+        return [
+            sunbeam_core.ContainerConfigFile(
+                "/etc/heat/heat-api.conf", "heat", "heat"
+            ),
+            sunbeam_core.ContainerConfigFile(
+                "/etc/heat/api-paste.ini", "heat", "heat"
+            ),
+        ]
+
     @property
     def default_public_ingress_port(self):
         return 8004