From fd6d4376b95cc3a8465aa0079253a6af3056a92c Mon Sep 17 00:00:00 2001
From: Daneyon Hansen <danehans@cisco.com>
Date: Thu, 12 Feb 2015 19:30:12 +0000
Subject: [PATCH] Implements: Blueprint update-image-build-script

Previously, the image used for Kolla development
needed to be manually created. This patch adds a
script to automate a consistent, repeatable process
for creating an F21 image used for Kolla development.

Change-Id: Ibbe41ac6c6f1d2f2bdd62a48b05c096967c8324e
---
 .gitignore          |  3 +++
 devenv/get-image.sh | 38 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 41 insertions(+)
 create mode 100755 devenv/get-image.sh

diff --git a/.gitignore b/.gitignore
index d2c5f5fba7..8dcc4f5b79 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,5 +2,8 @@
 *~
 [._]*.s[a-w][a-z]
 
+# Any qcow images created from get-image script
+*.qcow2
+
 .tox/
 .buildconf
diff --git a/devenv/get-image.sh b/devenv/get-image.sh
new file mode 100755
index 0000000000..e6c43b97bd
--- /dev/null
+++ b/devenv/get-image.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+# This script expects the following to be installed:
+# curl, libguestfs-tools-c
+
+IMAGE=Fedora-Cloud-Base-20141203-21.x86_64.qcow2
+TARGET_DIR=/var/lib/libvirt/images
+TARGET=fedora-21-x86_64
+
+if ! [ -f "$IMAGE" ]; then
+    echo "Downloading $IMAGE"
+    curl -O http://archive.fedoraproject.org/pub/fedora/linux/releases/21/Cloud/Images/x86_64/$IMAGE
+fi
+
+echo "Copying $IMAGE to $TARGET"
+cp "$IMAGE" $TARGET_DIR/$TARGET
+
+PACKAGES="git,tcpdump"
+
+virt-customize \
+    --add $TARGET_DIR/$TARGET \
+    --install $PACKAGES \
+    --update \
+    --install $PACKAGES \
+    --run-command "yum clean all" \
+    --run-command "cat > /etc/sysconfig/network-scripts/ifcfg-eth1 <<EOF
+DEVICE=eth1
+BOOTPROTO=none
+ONBOOT=yes
+DEFROUTE=no
+EOF" \
+
+# SELinux relabeling requires virt-customize to have networking disabled
+# https://bugzilla.redhat.com/show_bug.cgi?id=1122907
+virt-customize --add $TARGET_DIR/$TARGET --selinux-relabel --no-network
+
+echo "Finished building image:"
+ls -l $TARGET_DIR/$TARGET