Fix the qcow2 disk image content 39/72439/4
authorLuc Provoost <luc.provoost@intel.com>
Thu, 29 Apr 2021 17:30:01 +0000 (19:30 +0200)
committerLuc Provoost <luc.provoost@intel.com>
Thu, 29 Apr 2021 18:07:28 +0000 (20:07 +0200)
When building the qcow2 image, we are not automatically getting the
latest version of the samplevnf code. Since this might have to do with
caches, a parameter with the workspace directory is now passed to
disk-image-create using the --image-cache option.
Also removed verify-image.sh since this is done using build-image.sh
with the -v option.

Change-Id: I661c543102258929bdfe53af6c6ea0ff72eab33d
Signed-off-by: Luc Provoost <luc.provoost@intel.com>
rapidvm/dib/build-image.sh
rapidvm/dib/verify-image.sh [deleted file]

index 63b0b6c..23fe17c 100755 (executable)
@@ -19,20 +19,23 @@ usage() {
     echo "   -i image_appendix    image name to be pushed to google storage)"
     echo "   -g gs_url            url to store the image"
     echo "   -v                   verify only (build but do not push to google storage)"
+    echo "   -w cache             cache directory for disk-image-create"
     exit 1
 }
 
 # set -e
 #default values
 image_appendix="test"
+workspace="/home/jenkins-ci/opnfv/slave_root/workspace"
 gs_url="artifacts.opnfv.org/samplevnf/images"
 verify_only=0
-while getopts i:g:v flag
+while getopts i:g:vw: flag
 do
     case "${flag}" in
         i) image_appendix=${OPTARG};;
         g) gs_url=${OPTARG};;
         v) verify_only=1;;
+        w) workspace=${OPTARG};;
         *) usage;exit 1;;
     esac
 done
@@ -40,9 +43,9 @@ echo "gs_url: $gs_url";
 echo "Verify only: $verify_only";
 image_name=rapid-${image_appendix}
 echo "image name: $image_name.qcow2"
+echo "workspace: $workspace"
 
-# install diskimage-builder
-
+ install diskimage-builder
 python3 -m venv dib-rapid-venv
 . dib-rapid-venv/bin/activate
 pip3 install --upgrade pip
@@ -72,7 +75,9 @@ export DIB_CLOUD_INIT_DATASOURCES="Ec2, ConfigDrive, OpenStack"
 # Use ELRepo to have latest kernel
 export DIB_USE_ELREPO_KERNEL=True
 echo "Building $image_name.qcow2..."
-time disk-image-create -o $image_name centos7 cloud-init rapid vm
+cache=$workspace/cache
+mkdir $cache
+time disk-image-create -o $image_name --image-cache $cache centos7 cloud-init rapid vm
 
 ls -l $image_name.qcow2
 
@@ -90,3 +95,5 @@ else
         exit 1
     fi
 fi
+deactivate
+rm -r dib-rapid-venv
diff --git a/rapidvm/dib/verify-image.sh b/rapidvm/dib/verify-image.sh
deleted file mode 100755 (executable)
index a5d798f..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-#!/usr/bin/env bash
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#
-# A shell script to verify that a VM image is present in google storage
-# If not present in google storage, verify it is present locally
-# If not present locally, build it but do not uplaod to google storage
-
-bash build-image.sh -v