From de4c92944d0e639458321896e3f58a8ba1f4b2a4 Mon Sep 17 00:00:00 2001 From: David Garcia Date: Tue, 21 Jul 2020 09:35:44 +0200 Subject: [PATCH] Remove unneeded mysql interface in PLA, fix osm-ha bundle, and add README.md to bundles Change-Id: I7761efaa174ce46eb3c3cc6c99f846340ba8e93c Signed-off-by: David Garcia --- installers/charm/bundles/osm-ha/README.md | 32 +++++++++++++++++++++ installers/charm/bundles/osm-ha/bundle.yaml | 6 ++-- installers/charm/bundles/osm/README.md | 32 +++++++++++++++++++++ installers/charm/bundles/osm/bundle.yaml | 2 -- installers/charm/pla/metadata.yaml | 2 -- installers/charm/pla/src/charm.py | 26 ----------------- 6 files changed, 66 insertions(+), 34 deletions(-) create mode 100644 installers/charm/bundles/osm-ha/README.md create mode 100644 installers/charm/bundles/osm/README.md diff --git a/installers/charm/bundles/osm-ha/README.md b/installers/charm/bundles/osm-ha/README.md new file mode 100644 index 00000000..84dbde49 --- /dev/null +++ b/installers/charm/bundles/osm-ha/README.md @@ -0,0 +1,32 @@ + +# Charmed OSM + + +Charmed OSM is an OSM distribution, developed and maintained by Canonical, which uses Juju charms to simplify its deployments and operations. Charmed OSM enables TSPs to easily deploy pure upstream OSM in highly available, production-grade and scalable clusters. + +- Industry‐aligned and fully compliant with upstream +- Predictable release cadence and upgrade path +- Simplified deployments and operations +- Stable and secure +- Highly Available and resilient against failures +- Supported with [Ubuntu Advantage](https://ubuntu.com/advantage) +- Availability of managed services + + +## Quick start + +Go to the [OSM User Guide](https://osm.etsi.org/docs/user-guide/03-installing-osm.html#charmed-installation) diff --git a/installers/charm/bundles/osm-ha/bundle.yaml b/installers/charm/bundles/osm-ha/bundle.yaml index 9976679d..ea3d7a14 100644 --- a/installers/charm/bundles/osm-ha/bundle.yaml +++ b/installers/charm/bundles/osm-ha/bundle.yaml @@ -121,7 +121,7 @@ applications: ng-ui: charm: "%(prefix)s/ng-ui%(suffix)s" channel: "%(channel)s" - scale: 1 + scale: 3 series: kubernetes options: port: 80 @@ -184,7 +184,7 @@ applications: annotations: gui-x: -250 gui-y: 550 - pla-k8s: + pla: charm: "%(prefix)s/pla%(suffix)s" channel: "%(channel)s" scale: 3 @@ -252,7 +252,5 @@ relations: - "kafka-k8s:kafka" - - "pla:mongo" - "mongodb-k8s:mongo" - - - "pla:mysql" - - "mariadb-k8s:mysql" - - 'ng-ui:nbi' - 'nbi-k8s:nbi' diff --git a/installers/charm/bundles/osm/README.md b/installers/charm/bundles/osm/README.md new file mode 100644 index 00000000..84dbde49 --- /dev/null +++ b/installers/charm/bundles/osm/README.md @@ -0,0 +1,32 @@ + +# Charmed OSM + + +Charmed OSM is an OSM distribution, developed and maintained by Canonical, which uses Juju charms to simplify its deployments and operations. Charmed OSM enables TSPs to easily deploy pure upstream OSM in highly available, production-grade and scalable clusters. + +- Industry‐aligned and fully compliant with upstream +- Predictable release cadence and upgrade path +- Simplified deployments and operations +- Stable and secure +- Highly Available and resilient against failures +- Supported with [Ubuntu Advantage](https://ubuntu.com/advantage) +- Availability of managed services + + +## Quick start + +Go to the [OSM User Guide](https://osm.etsi.org/docs/user-guide/03-installing-osm.html#charmed-installation) diff --git a/installers/charm/bundles/osm/bundle.yaml b/installers/charm/bundles/osm/bundle.yaml index 6207fd88..c4567aca 100644 --- a/installers/charm/bundles/osm/bundle.yaml +++ b/installers/charm/bundles/osm/bundle.yaml @@ -252,7 +252,5 @@ relations: - "kafka-k8s:kafka" - - "pla:mongo" - "mongodb-k8s:mongo" - - - "pla:mysql" - - "mariadb-k8s:mysql" - - 'ng-ui:nbi' - 'nbi-k8s:nbi' diff --git a/installers/charm/pla/metadata.yaml b/installers/charm/pla/metadata.yaml index afd45748..90c9d400 100644 --- a/installers/charm/pla/metadata.yaml +++ b/installers/charm/pla/metadata.yaml @@ -27,5 +27,3 @@ requires: interface: kafka mongo: interface: mongodb - mysql: - interface: mysql \ No newline at end of file diff --git a/installers/charm/pla/src/charm.py b/installers/charm/pla/src/charm.py index f90b407a..2e199b36 100755 --- a/installers/charm/pla/src/charm.py +++ b/installers/charm/pla/src/charm.py @@ -43,8 +43,6 @@ class PLACharm(CharmBase): self.state.set_default(kafka_host=None) self.state.set_default(kafka_port=None) self.state.set_default(mongodb_uri=None) - self.state.set_default(mysql_host=None) - self.state.set_default(mysql_port=None) # Observe Charm related events self.framework.observe(self.on.config_changed, self.on_config_changed) @@ -58,9 +56,6 @@ class PLACharm(CharmBase): self.framework.observe( self.on.mongo_relation_changed, self.on_mongo_relation_changed ) - self.framework.observe( - self.on.mysql_relation_changed, self.on_mysql_relation_changed - ) def _apply_spec(self): # Only apply the spec if this unit is a leader. @@ -74,9 +69,6 @@ class PLACharm(CharmBase): if not self.state.mongodb_uri: unit.status = WaitingStatus("Waiting for MongoDB") return - if not self.state.mysql_host or not self.state.mysql_port: - unit.status = WaitingStatus("Waiting for MySQL") - return unit.status = MaintenanceStatus("Applying new pod spec") @@ -91,12 +83,6 @@ class PLACharm(CharmBase): def make_pod_spec(self): config = self.framework.model.config - mysql_uri = "mysql://root:{}@{}:{}/{}".format( - self.state.mysql_root_password, - self.state.mysql_host, - self.state.mysql_port, - self.state.mysql_database, - ) ports = [ {"name": "port", "containerPort": config["port"], "protocol": "TCP",}, ] @@ -108,7 +94,6 @@ class PLACharm(CharmBase): "OSMPLA_DATABASE_DRIVER": "mongo", "OSMPLA_DATABASE_URI": self.state.mongodb_uri, "OSMPLA_GLOBAL_LOG_LEVEL": config["log_level"], - "OSMPLA_SQL_DATABASE_URI": mysql_uri, "OSMPLA_DATABASE_COMMONKEY": config["database_common_key"], } @@ -157,17 +142,6 @@ class PLACharm(CharmBase): ) self._apply_spec() - def on_mysql_relation_changed(self, event): - unit = self.model.unit - if not unit.is_leader(): - return - unit_data = event.relation.data[event.unit] - self.state.mysql_host = unit_data.get("host") - self.state.mysql_port = unit_data.get("port") - self.state.mysql_root_password = unit_data.get("root_password") - self.state.mysql_database = self.model.config["database"] - self._apply_spec() - if __name__ == "__main__": main(PLACharm) -- 2.25.1