-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add abstract classes in container.py #93
Conversation
here's a first draft of the socket subclass of |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
as said before, container.py
ABC's looking mint
Concrete classes in rock.py As a result, workload.py and mysql_shell.py are now 100% shared between VM & K8s TODO: add docstrings, update naming Future plans: add abstraction so that charm.py can be shared between VM & k8s
0053260
to
a3c2cb0
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice! Tnx!
Share most of charm.py between kubernetes & machine charm Depends on #93 --------- Co-authored-by: Paulo Machado <paulo.machado@canonical.com>
DPE-1854, DPE-1910 Ported from canonical/mysql-router-k8s-operator#51 Changes from kubernetes PR: - No TLS - canonical/mysql-router-k8s-operator#93 - canonical/mysql-router-k8s-operator#97 Will re-implement legacy interface in separate PR
Leftover from when `_bootstrap_router` was responsible for updating the pebble layer #93 moved the layer update out of `_bootstrap_router` to `Container.update_mysql_router_service`. In that PR, `_restart` should have removed its call to `_bootstrap_router` and only used `update_mysql_router_service` MySQL Router should not be bootstrapped again when TLS is enabled or disabled—it should only be restarted
Leftover from when `_bootstrap_router` was responsible for updating the pebble layer #93 moved the layer update out of `_bootstrap_router` to `Container.update_mysql_router_service`. In that PR, `_restart` should have removed its call to `_bootstrap_router` and only used `update_mysql_router_service` MySQL Router should not be bootstrapped again when TLS is enabled or disabled—it should only be restarted
Concrete classes in rock.py
As a result, workload.py and mysql_shell.py are now 100% shared between VM & K8s (VM charm subclasses
workload.AuthenticatedWorkload
to add support for unix sockets)Future plans: add abstraction so that charm.py can be shared between VM & k8s