Skip to content
This repository has been archived by the owner on Jun 7, 2024. It is now read-only.

Commit

Permalink
Pin pydantic to 1.X (#30)
Browse files Browse the repository at this point in the history
* Pin pydantic to 1.X

* Fix linting due to new ops version

* Pining jsonschema due to transient dependency to rust compiler
  • Loading branch information
gregory-schiano authored Jul 10, 2023
1 parent 688896a commit 9ee4deb
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 16 deletions.
4 changes: 2 additions & 2 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
jsonschema >= 4.17
jsonschema >= 4.17,<4.18
ops >= 2.2
pydantic >= 1.10
pydantic >= 1.10,<2
20 changes: 10 additions & 10 deletions src/charm.py
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ def _on_config_changed(self, event: ops.EventBase) -> None:
return
self._restart_flask_application()

def _flask_layer(self) -> dict:
def _flask_layer(self) -> ops.pebble.LayerDict:
"""Generate the pebble layer definition for flask application.
Returns:
Expand All @@ -163,8 +163,8 @@ def _flask_layer(self) -> dict:
self._update_app_and_unit_status(ops.BlockedStatus(exc.msg))
# Returning an empty dict will cancel add_layer() when used with combine=True
return {}
return {
"services": {
return ops.pebble.LayerDict(
services={
FLASK_SERVICE_NAME: {
"override": "replace",
"summary": "Flask application service",
Expand All @@ -173,15 +173,15 @@ def _flask_layer(self) -> dict:
"environment": environment,
}
},
}
)

def _on_statsd_prometheus_exporter_pebble_ready(self, _event: ops.PebbleReadyEvent) -> None:
"""Handle the statsd-prometheus-exporter-pebble-ready event."""
statsd_container = self.unit.get_container("statsd-prometheus-exporter")
statsd_layer = {
"summary": "statsd exporter layer",
"description": "statsd exporter layer",
"services": {
statsd_layer = ops.pebble.LayerDict(
summary="statsd exporter layer",
description="statsd exporter layer",
services={
"statsd-prometheus-exporter": {
"override": "replace",
"summary": "statsd exporter service",
Expand All @@ -190,14 +190,14 @@ def _on_statsd_prometheus_exporter_pebble_ready(self, _event: ops.PebbleReadyEve
"startup": "enabled",
}
},
"checks": {
checks={
"container-ready": {
"override": "replace",
"level": "ready",
"http": {"url": "http://localhost:9102/metrics"},
},
},
}
)
statsd_container.add_layer("statsd-prometheus-exporter", statsd_layer, combine=True)
statsd_container.replan()

Expand Down
8 changes: 4 additions & 4 deletions src/databases.py
Original file line number Diff line number Diff line change
Expand Up @@ -74,11 +74,11 @@ def _on_database_requires_event(self, event: DatabaseRequiresEvent) -> None:
if FLASK_SERVICE_NAME in plan.services:
flask_service = plan.services[FLASK_SERVICE_NAME].to_dict()
flask_service["environment"].update(self.get_uris())
new_layer = {
"services": {
new_layer = ops.pebble.LayerDict(
services={
FLASK_SERVICE_NAME: flask_service,
},
}
}
)
container.add_layer("flask-app", new_layer, combine=True)
container.replan()

Expand Down

0 comments on commit 9ee4deb

Please sign in to comment.