X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=installers%2Fcharm%2Fpla%2Fsrc%2Fcharm.py;h=d0df17975c855f2109fca1dd779406c1bd19c5d1;hb=141d935cdb913100f3abdfaf52a67d90dd6b5016;hp=ba3b1ff0a0f0d2562f0cb04ee7e165282a5812e4;hpb=15897d69aa392041dac421f8d9045925eed662c6;p=osm%2Fdevops.git diff --git a/installers/charm/pla/src/charm.py b/installers/charm/pla/src/charm.py index ba3b1ff0..d0df1797 100755 --- a/installers/charm/pla/src/charm.py +++ b/installers/charm/pla/src/charm.py @@ -32,6 +32,7 @@ from opslib.osm.interfaces.kafka import KafkaClient from opslib.osm.interfaces.mongo import MongoClient from opslib.osm.pod import ( ContainerV3Builder, + PodRestartPolicy, PodSpecV3Builder, ) from opslib.osm.validator import ModelValidator, validator @@ -109,6 +110,16 @@ class PlaCharm(CharmedOsmBase): # Create Builder for the PodSpec pod_spec_builder = PodSpecV3Builder() + # Add secrets to the pod + mongodb_secret_name = f"{self.app.name}-mongodb-secret" + pod_spec_builder.add_secret( + mongodb_secret_name, + { + "uri": config.mongodb_uri or self.mongodb_client.connection_string, + "commonkey": config.database_commonkey, + }, + ) + # Build Container container_builder = ContainerV3Builder( self.app.name, image_info, config.image_pull_policy @@ -125,14 +136,24 @@ class PlaCharm(CharmedOsmBase): "OSMPLA_MESSAGE_PORT": self.kafka_client.port, # Database configuration "OSMPLA_DATABASE_DRIVER": "mongo", - "OSMPLA_DATABASE_URI": config.mongodb_uri - or self.mongodb_client.connection_string, - "OSMPLA_DATABASE_COMMONKEY": config.database_commonkey, } ) + container_builder.add_secret_envs( + secret_name=mongodb_secret_name, + envs={ + "OSMPLA_DATABASE_URI": "uri", + "OSMPLA_DATABASE_COMMONKEY": "commonkey", + }, + ) + container = container_builder.build() + # Add Pod restart policy + restart_policy = PodRestartPolicy() + restart_policy.add_secrets(secret_names=(mongodb_secret_name)) + pod_spec_builder.set_restart_policy(restart_policy) + # Add container to pod spec pod_spec_builder.add_container(container)