...
- Find the k8s node server where POD is running using kubectl
kubectl get pods -n onap -o=wide | grep <podname>
- Login to k8s node server (same key/user) and create a sub-folder on your name
- Check if k8s node server has required s/w such as mvn/java etc
- Clone the repo/patchset from gerrit (there is download option in gerrit, when clicked clicked it will give the exact pull request (or checkout) command)
- Build image (using mvn -s <onap settingfile.xml> clean install <optional docker goals>) to generate docker image. ONAP setting file can be referenced from here - Setting Up Your Development Environment#MavenExamplesettings.xml
Once build is successful and docker image generated, retag it for uniqueness ( nexus3.onap.org:10001/onap/<imagename>:<uniquetag>)
Code Block theme Midnight title server prep # install mvn: apt install maven # install java8 (java 11 is pre-installed) apt install openjdk-8-jdk-headless # export JAVA_HOME To use java8 export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 # download the setting.xml from https://git.onap.org/oparent/plain/settings.xml and use it in mvn install command # initialize git and pull the specific patchset for test root@onap2-k8s-02:/var/tmp/inv# git init # example with specific inventory patch root@onap2-k8s-02:/var/tmp/inv# git pull "https://sh1986@gerrit.onap.org/r/a/dcaegen2/platform/inventory-api" refs/changes/53/101253/3 # Make other updates/fixes as needed root@onap2-k8s-02:/var/tmp/inv# mvn -s ../onap-settings.xml install docker:build
- For redeploy, you can either update the values.yaml charts (under ~/oom/kubernetes/dcaegen2/components) and follow helm commands above to redeploy, or find the corresponding deployment descriptor (via kubectl) and update the version and save (k8s would automatically terminate current pod and redeploy new based on version provided). Note: Any changes done on helm charts/values.yaml should be submitted into OOM repository (https://git.onap.org/oom/tree/kubernetes/dcaegen2/components) after new images has been released in DCAE.
For redeploy, you can either update the values.yaml charts (under ~/oom/kubernetes/dcaegen2/components) and follow helm commands above to redeploy, or find the corresponding deployment descriptor (via kubectl) and update the version and save (k8s would automatically terminate current pod and redeploy new based on version provided)Note: Any changes done on helm charts/values.yaml should be submitted into OOM repository (https://git.onap.org/oom/tree/kubernetes/dcaegen2/components) after new images has been released in DCAE.Code Block theme Midnight title update deploy ##Example of inventory build and using new built image for deployment root@onap2-k8s-02:/var/tmp/inv# docker images|grep inv nexus3.onap.org:10003/onap/org.onap.dcaegen2.platform.inventory-api 3.4.1-SNAPSHOT e4285faa9608 28 seconds ago 124MB nexus3.onap.org:10003/onap/org.onap.dcaegen2.platform.inventory-api 3.4.1-SNAPSHOT-20200214T202415ZZ e4285faa9608 28 seconds ago 124MB nexus3.onap.org:10003/onap/org.onap.dcaegen2.platform.inventory-api latest e4285faa9608 28 seconds ago 124MB 10.12.5.2:5000/onap/org.onap.dcaegen2.platform.inventory-api 3.4.0 088614c21f0f 6 months ago 105MB nexus3.onap.org:10001/onap/org.onap.dcaegen2.platform.inventory-api 3.4.0 088614c21f0f 6 months ago 105MB root@onap2-k8s-02:/var/tmp/inv# ##use: ##nexus3.onap.org:10003/onap/org.onap.dcaegen2.platform.inventory-api:3.4.1-SNAPSHOT-20200214T202415ZZ ##on k8s master find the corresponding deployment root@onap2-nfs:~# kubectl get deployments -n onap -o wide|grep inve dev-dcaegen2-dcae-inventory-api 1/1 1 1 21d dcae-inventory api ##Edit deployement, change: ##image: nexus3.onap.org:10001/onap/org.onap.dcaegen2.platform.inventory-api:3.4.0 ##to ##image: nexus3.onap.org:10003/onap/org.onap.dcaegen2.platform.inventory-api:3.4.1-SNAPSHOT-20200214T202415ZZ ##and imagePullPolicy: Never root@onap2-nfs:~# kubectl edit deployments -n onap dev-dcaegen2-dcae-inventory-api deployment.extensions/dev-dcaegen2-dcae-inventory-api edited