Last active
August 29, 2015 14:07
-
-
Save Rorosha/55746a17738343c920d7 to your computer and use it in GitHub Desktop.
convert cloud instance to a server product
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
# | |
# Script to migrate a cloud instance (cattle) to a server (pet). | |
# Ported from the cloudtoserver [0] written in python. | |
# | |
# [0] https://github.com/fedora-cloud/cloudtoserver | |
# | |
# Author: Mike Ruckman (roshi AT fedoraproject.org) | |
convertToServer () { | |
# Change the fedora-release-cloud package to the correct server package | |
echo "Swapping fedora-release product packages..." | |
yum -y swap -- install fedora-release-server -- remove fedora-release-cloud \ | |
firewalld-config-standard | |
} | |
installServerProduct () { | |
# Install the Server product environment | |
echo "Installing the server product..." | |
yum install @^server-product-environment -y | |
systemctl enable cockpit.service | |
} | |
stopCloudInit () { | |
# Stop cloud-init from running on reboot | |
systemctl disable cloud-init.service | |
} | |
echo "We will now attempt to transition to the Fedora Server Product." | |
echo "Are you sure you want to continue? (y/N):" | |
read accept | |
if [ $accept = 'Y' ] || [ $accept = 'y' ]; then | |
convertToServer | |
installServerProduct | |
else | |
echo "User has declined." | |
exit | |
fi | |
echo "Do you want to stop cloud init? (y/N):" | |
read cloudoff | |
if [ $cloudoff = 'Y' ] || [ $cloudoff = 'y' ]; then | |
stopCloudInit | |
else | |
echo "Leaving cloud-init running." | |
fi | |
# This is a kludge to fix the growroot bug | |
# https://bugzilla.redhat.com/show_bug.cgi?id=1147998 | |
echo "Running workaround for BZ1147998..." | |
dd if=/usr/share/syslinux/mbr.bin of=/dev/vda | |
echo "Done! Your cloud instance is now a Server Product!" | |
exit |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment