\r
-## build o2ims from a container over INF\r
+## Build and deploy O2 services over O-Cloud (INF)\r
\r
\r
-## bring up container\r
+## Bring up builder container from O-Cloud controller node\r
\r
-## Important: make sure container and host shares the same filepath to overcome local dir mounting issue\r
\r
+```sh\r
mkdir -p /home/sysadmin/share\r
-sudo docker run -dt --privileged -v /home/sysadmin/share/:/home/sysadmin/share/ -v /var/run:/var/run --name o2imsbuilder2 centos:7\r
+sudo docker run -dt --privileged -v /home/sysadmin/share/:/home/sysadmin/share/ -v /var/run:/var/run --name o2imsbuilder centos:7\r
+```\r
\r
-## build inside container\r
-sudo docker exec -it o2imsbuilder2 bash\r
+## Build O2 service images inside the builder container\r
\r
+\r
+```sh\r
+sudo docker exec -it o2imsbuilder bash\r
+```\r
+\r
+\r
+```sh\r
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose\r
chmod +x /usr/local/bin/docker-compose\r
docker-compose -v\r
\r
docker-compose build\r
\r
-## test over inf host\r
+exit\r
+\r
+```\r
+\r
+### Push O2 service images to local registry (with auth user admin)\r
+\r
+```sh\r
+sudo docker tag o2imsdms:latest registry.local:9001/admin/o2imsdms:0.1.1\r
+sudo docker image push registry.local:9001/admin/o2imsdms:0.1.1\r
+\r
+```\r
+\r
+## Deploy O2 services with helm chart over O-Cloud controller node (with auth user admin)\r
+\r
+```sh\r
export NAMESPACE=orano2\r
kubectl create ns ${NAMESPACE}\r
\r
+cd /home/sysadmin/\r
source /etc/platform/openrc\r
-sudo docker login registry.local:9001 -u ${OS_PROJECT_NAME} -p ${OS_PASSWORD}\r
+cat <<EOF>ocloud-override.yaml\r
+o2ims:\r
+ imagePullSecrets: admin-orano2-registry-secret\r
+ image:\r
+ repository: registry.local:9001/admin/o2imsdms\r
+ tag: 0.1.1\r
+ pullPolicy: IfNotPresent\r
+ logginglevel: "DEBUG"\r
+\r
+ocloud:\r
+ OS_AUTH_URL: "${OS_AUTH_URL}"\r
+ OS_USERNAME: "${OS_USERNAME}"\r
+ OS_PASSWORD: "${OS_PASSWORD}"\r
+EOF\r
\r
+sudo docker login registry.local:9001 -u ${OS_PROJECT_NAME} -p ${OS_PASSWORD}\r
\r
kubectl -n ${NAMESPACE} create secret docker-registry ${OS_PROJECT_NAME}-${NAMESPACE}-registry-secret \\r
--docker-server=registry.local:9001 --docker-username=${OS_PROJECT_NAME} \\r
--docker-password=${OS_PASSWORD} --docker-email=noreply@windriver.com\r
\r
-==> secret/admin-orano2-registry-secret created\r
+cd /home/sysadmin/share/o2\r
\r
-sudo docker tag o2imsdms:latest registry.local:9001/admin/o2imsdms:0.1.1\r
-sudo docker image push registry.local:9001/admin/o2imsdms:0.1.1\r
+helm install o2imstest charts/ -f /home/sysadmin/ocloud-override.yaml\r
\r
-cd /home/sysadmin/share/o2\r
-helm install o2imstest charts\r
kubectl -n ${NAMESPACE} get pods\r
\r
+```\r
+\r
+### test api endpoint\r
+\r
+```sh\r
+curl -k http(s)://<Node IP>:30205\r
+curl -k http(s)://<Node IP>:30205/o2ims_infrastructureInventory/v1\r
+```\r
+\r
+\r
+### Debug tips\r
+\r
+```sh\r
+kubectl -n ${NAMESPACE} logs -f o2api-<xxx> -c o2api\r
+kubectl -n ${NAMESPACE} logs -f o2api-<xxx> -c postgres\r
+kubectl -n ${NAMESPACE} logs -f o2api-<xxx> -c o2pubsub\r
+kubectl -n ${NAMESPACE} logs -f o2api-<xxx> -c watcher\r
+\r
+\r
+kubectl -n ${NAMESPACE} logs -f o2api-<xxx> -c o2api\r
+\r
+kubectl -n ${NAMESPACE} exec -it o2api-<xxx> -c postgres -- bash\r
+ psql -U o2ims\r
+\r
+ \c o2ims\r
+\r
+ \d\r
+\r
+ select * from ocloud;\r
+\r
+ \q\r
+\r
+ exit\r
+\r
+```\r
+\r
+## Issues:\r
\r
-## issues:\r
+1, there is chance the containers crash due to random bootstrap order of containers\r