502aff36cd
Make get-image.sh bashate compliant by creating a file in /tmp for the ifcfg temporary file and using the --upload command instead of the --runcommand operation. Change-Id: I4782140e227105f9aa07fb3967665eaaaeeb0cab Partially-implements: blueprint bashate-gate
42 lines
1005 B
Bash
Executable File
42 lines
1005 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# This script expects the following to be installed:
|
|
# curl, libguestfs-tools-c
|
|
|
|
IMAGE_URL=http://archive.fedoraproject.org/pub/fedora/linux/releases/21/Cloud/Images/x86_64
|
|
IMAGE=Fedora-Cloud-Base-20141203-21.x86_64.qcow2
|
|
TARGET_DIR=/var/lib/libvirt/images
|
|
TARGET=fedora-21-x86_64
|
|
export LIBGUESTFS_BACKEND=direct
|
|
|
|
if ! [ -f "$IMAGE" ]; then
|
|
echo "Downloading $IMAGE"
|
|
curl -L -O $IMAGE_URL/$IMAGE
|
|
fi
|
|
|
|
echo "Copying $IMAGE to $TARGET"
|
|
cp "$IMAGE" $TARGET_DIR/$TARGET
|
|
|
|
|
|
TMPFILE=$(mktemp /tmp/kolla-ifcfg-eth1.XXXXXXXXXX)
|
|
cat > $TMPFILE <<EOF
|
|
DEVICE=eth1
|
|
BOOTPROTO=none
|
|
ONBOOT=yes
|
|
DEFROUTE=no
|
|
EOF
|
|
|
|
|
|
virt-customize \
|
|
--add $TARGET_DIR/$TARGET \
|
|
--upload $TMPFILE:/etc/sysconfig/network-scripts/ifcfg-eth1
|
|
|
|
# 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
|
|
|
|
rm -f $TMPFILE
|
|
|
|
echo "Finished building image:"
|
|
ls -l $TARGET_DIR/$TARGET
|