summaryrefslogtreecommitdiffstats
path: root/foreman/ci/resize_lvm.sh
diff options
context:
space:
mode:
authorTim Rozet <trozet@redhat.com>2015-09-03 17:12:11 -0400
committerTim Rozet <trozet@redhat.com>2015-09-09 17:03:29 -0400
commit5384a722ffae47bc3519512d34802102ebc7be5b (patch)
treecb820a176047a895c29e0488abe8ffaf15604cdc /foreman/ci/resize_lvm.sh
parent2b551f29f886a28e609203063418ffeabfe86127 (diff)
Adds functionality to modify VM resources
VM resources (vcpus, memory, disk size) are now configurable in the opnfv_ksgen_settings files. Each node in the ksgen settings file now has "memory, cpus, disk" attributes: - cpus is an integer number of CPUs to assign to the VM - memory is an integer size in kilobytes - disk is an integer size in gigabytes The vagrant box vmdk is resized for each VM. Each VM will then modify its partition to the new size, execute the normal reboot, then extend the physical+logical volumes and filesystem using vagrant provisioning scripts. JIRA: APEX-1 Change-Id: I471319db14d2189052961b2f533c65850ebeb1e7 Signed-off-by: Tim Rozet <trozet@redhat.com>
Diffstat (limited to 'foreman/ci/resize_lvm.sh')
-rwxr-xr-xforeman/ci/resize_lvm.sh37
1 files changed, 37 insertions, 0 deletions
diff --git a/foreman/ci/resize_lvm.sh b/foreman/ci/resize_lvm.sh
new file mode 100755
index 0000000..64a9c62
--- /dev/null
+++ b/foreman/ci/resize_lvm.sh
@@ -0,0 +1,37 @@
+#!/usr/bin/env bash
+
+#script for resizing volumes in Foreman/QuickStack VM
+#author: Tim Rozet (trozet@redhat.com)
+#
+#Uses Vagrant and VirtualBox
+#VagrantFile uses resize_partition.sh
+#
+#Pre-requisties:
+#Vagrant box disk size already resized
+#Partition already resized
+
+##VARS
+reset=`tput sgr0`
+blue=`tput setaf 4`
+red=`tput setaf 1`
+green=`tput setaf 2`
+
+##END VARS
+
+echo "${blue}Resizing physical volume${reset}"
+if ! pvresize /dev/sda2; then
+ echo "${red}Unable to resize physical volume${reset}"
+ exit 1
+else
+ new_part_size=`pvdisplay | grep -Eo "PV Size\s*[0-9]+\." | awk {'print $3'} | tr -d .`
+ echo "${blue}New physical volume size: ${new_part_size}${reset}"
+fi
+
+echo "${blue}Resizing logical volume${reset}"
+if ! lvextend /dev/mapper/centos-root -r -l +100%FREE; then
+ echo "${red}Unable to resize logical volume${reset}"
+ exit 1
+else
+ new_fs_size=`df -h | grep centos-root | awk '{print $2}'`
+ echo "${blue}Filesystem resized to: ${new_fs_size}${reset}"
+fi