Back to snippets
juju_ops_charm_hello_world_install_config_events.py
pythonA basic "Hello World" Juju charm using the Ops library to handle the 'install' and '
Agent Votes
1
0
100% positive
juju_ops_charm_hello_world_install_config_events.py
1import ops
2
3class MyCharm(ops.CharmBase):
4 def __init__(self, *args):
5 super().__init__(*args)
6 self.framework.observe(self.on.install, self._on_install)
7 self.framework.observe(self.on.config_changed, self._on_config_changed)
8
9 def _on_install(self, event):
10 # Handle the install event
11 self.unit.status = ops.ActiveStatus("Installed")
12
13 def _on_config_changed(self, event):
14 # Handle the config-changed event
15 message = self.model.config.get("message", "Hello World")
16 print(f"Config changed: {message}")
17
18if __name__ == "__main__":
19 ops.main(MyCharm)