import asyncio
import logging
+import shlex
from pathlib import Path
import pytest
KAFKA_APP = "kafka"
MONGO_DB_CHARM = "mongodb-k8s"
MONGO_DB_APP = "mongodb"
+RO_CHARM = "osm-ro"
RO_APP = "ro"
ZOOKEEPER_CHARM = "zookeeper-k8s"
ZOOKEEPER_APP = "zookeeper"
async def test_lcm_is_deployed(ops_test: OpsTest):
charm = await ops_test.build_charm(".")
resources = {"lcm-image": METADATA["resources"]["lcm-image"]["upstream-source"]}
- ro_charm = await ops_test.build_charm("../osm-ro/")
- ro_resources = {"ro-image": "opensourcemano/ro"}
+ ro_deploy_cmd = f"juju deploy {RO_CHARM} {RO_APP} --resource ro-image=opensourcemano/ro:testing-daily --channel=latest/beta --series=focal"
await asyncio.gather(
ops_test.model.deploy(
charm, resources=resources, application_name=LCM_APP, series="focal"
),
- ops_test.model.deploy(
- ro_charm, resources=ro_resources, application_name=RO_APP, series="focal"
- ),
+ # RO charm has to be deployed differently since
+ # bug https://github.com/juju/python-libjuju/issues/822
+ # deploys different charms wrt cli
+ ops_test.run(*shlex.split(ro_deploy_cmd), check=True),
ops_test.model.deploy(KAFKA_CHARM, application_name=KAFKA_APP, channel="stable"),
ops_test.model.deploy(MONGO_DB_CHARM, application_name=MONGO_DB_APP, channel="edge"),
ops_test.model.deploy(ZOOKEEPER_CHARM, application_name=ZOOKEEPER_APP, channel="stable"),