Added basic Fedora support
This commit is contained in:
@@ -29,14 +29,17 @@ while true; do
|
|||||||
[Dd]* )
|
[Dd]* )
|
||||||
DoDebianReleaseUpdate=true
|
DoDebianReleaseUpdate=true
|
||||||
DoAlpineReleaseUpdate=false
|
DoAlpineReleaseUpdate=false
|
||||||
|
DoFedoraReleaseUpdate=false
|
||||||
break;;
|
break;;
|
||||||
[Aa]* )
|
[Aa]* )
|
||||||
DoDebianReleaseUpdate=false
|
DoDebianReleaseUpdate=false
|
||||||
DoAlpineReleaseUpdate=true
|
DoAlpineReleaseUpdate=true
|
||||||
|
DoFedoraReleaseUpdate=false
|
||||||
break;;
|
break;;
|
||||||
[Bb]* )
|
[Bb]* )
|
||||||
DoDebianReleaseUpdate=true
|
DoDebianReleaseUpdate=true
|
||||||
DoAlpineReleaseUpdate=true
|
DoAlpineReleaseUpdate=true
|
||||||
|
DoFedoraReleaseUpdate=false
|
||||||
break;;
|
break;;
|
||||||
* ) echo "Please answer with (D)Debian, (A)Alpine or (B)oth.";;
|
* ) echo "Please answer with (D)Debian, (A)Alpine or (B)oth.";;
|
||||||
esac
|
esac
|
||||||
@@ -73,6 +76,21 @@ echo "Enter the Alpine version to upgrade to"
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
if $DoFedoraReleaseUpdate; then
|
||||||
|
echo "Enter the Fedora version to upgrade to"
|
||||||
|
read NewFedoraVersionNewFedoraVersion
|
||||||
|
while true; do
|
||||||
|
read -p "Upgrade to Fedora $NewFedoraVersion, is this correct? -> yes/no?" yn
|
||||||
|
case $yn in
|
||||||
|
[Nn]* )
|
||||||
|
echo "Enter the Fedora version to upgrade to"
|
||||||
|
read NewFedoraVersion
|
||||||
|
;;
|
||||||
|
[Yy]* ) break;;
|
||||||
|
* ) echo "Choose yes or no.";;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
#CT updates
|
#CT updates
|
||||||
if $UpdateCT; then
|
if $UpdateCT; then
|
||||||
|
|||||||
@@ -82,9 +82,29 @@ elif [[ "${DIST}" == *"alpine"* ]]; then
|
|||||||
* ) echo "Choose yes or no.";;
|
* ) echo "Choose yes or no.";;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
elif [[ "${DIST}" == *"fedora"* ]]; then
|
||||||
|
#Ask the wanted Fedora version
|
||||||
|
DoDebianReleaseUpdate=true
|
||||||
|
DoAlpineReleaseUpdate=true
|
||||||
|
DoFedoraReleaseUpdate=false
|
||||||
|
|
||||||
|
echo "Enter the Fedora version to upgrade to"
|
||||||
|
read NewFedoraVersionNewFedoraVersion
|
||||||
|
while true; do
|
||||||
|
read -p "Upgrade to Fedora $NewFedoraVersion, is this correct? -> yes/no?" yn
|
||||||
|
case $yn in
|
||||||
|
[Nn]* )
|
||||||
|
echo "Enter the Fedora version to upgrade to"
|
||||||
|
read NewFedoraVersion
|
||||||
|
;;
|
||||||
|
[Yy]* ) break;;
|
||||||
|
* ) echo "Choose yes or no.";;
|
||||||
|
esac
|
||||||
|
done
|
||||||
else
|
else
|
||||||
echo "Warning: Release upgrade are supported for this distro"
|
echo "Warning: Release upgrade are supported for this distro"
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
$TYPE-UpgradeRelease $ID
|
$TYPE-UpgradeRelease $ID
|
||||||
27
functions.sh
27
functions.sh
@@ -57,7 +57,7 @@ UpdatePackages () {
|
|||||||
elif [[ "${DIST}" == *"alpine"* ]]; then
|
elif [[ "${DIST}" == *"alpine"* ]]; then
|
||||||
$INSTCALL -- apk update
|
$INSTCALL -- apk update
|
||||||
$INSTCALL -- apk upgrade
|
$INSTCALL -- apk upgrade
|
||||||
elif [[ "${DIST}" == *"centos"* ]]; then
|
elif [[ "${DIST}" == *"centos"* ]] || [[ "${DIST}" == *"fedora"* ]]; then
|
||||||
$INSTCALL -- dnf update -y
|
$INSTCALL -- dnf update -y
|
||||||
else
|
else
|
||||||
echo "Warning: Package manager in not supported"
|
echo "Warning: Package manager in not supported"
|
||||||
@@ -202,8 +202,29 @@ UpgradeRelease () {
|
|||||||
else
|
else
|
||||||
echo "Notice: Skiped, already up-to-date"
|
echo "Notice: Skiped, already up-to-date"
|
||||||
fi
|
fi
|
||||||
elif [[ "${DIST}" == *"alpine"* ]]; then
|
elif [[ "${DIST}" == *"fedora"* ]]; then
|
||||||
echo "Notice: Release upgrade disabled for Alpine"
|
echo "Notice: Release upgrade disabled for Fedora"
|
||||||
|
elif [[ "${DIST}" == *"alpine"* ]] && $DoFedoraReleaseUpdate ; then
|
||||||
|
if [ $RELVERSION != $NewFedoraVersion ]; then
|
||||||
|
#Create snapshot before upgrading
|
||||||
|
$SNAPSHOTCMD "Before upgrade form Fedora $RELVERSION to Fedora $NewFedoraVersion"
|
||||||
|
#Fully update current version
|
||||||
|
$INSTCALL -- dnf install dnf-plugin-system-upgrade remove-retired-packages symlinks clean-rpm-gpg-pubkey -y
|
||||||
|
$INSTCALL -- dnf upgrade --refresh -y
|
||||||
|
$INSTCALL -- system-upgrade download --releasever=$RELVERSION -y
|
||||||
|
$INSTCALL -- system-upgrade reboot
|
||||||
|
echo waiting 5 minutes for Fedora to install its update while rebooting
|
||||||
|
sleep 300
|
||||||
|
$INSTCALL -- dnf remove --duplicates -y
|
||||||
|
$INSTCALL -- dnf autoremove -y
|
||||||
|
$INSTCALL -- clean-rpm-gpg-pubkey
|
||||||
|
$INSTCALL -- symlinks -r -d /usr
|
||||||
|
DOREBOOT=true
|
||||||
|
else
|
||||||
|
echo "Notice: Skiped, already up-to-date"
|
||||||
|
fi
|
||||||
|
elif [[ "${DIST}" == *"fedora"* ]]; then
|
||||||
|
echo "Notice: Release upgrade disabled for Fedora"
|
||||||
else
|
else
|
||||||
echo "Warning: Release upgrade are supported for this distro"
|
echo "Warning: Release upgrade are supported for this distro"
|
||||||
#exit 100
|
#exit 100
|
||||||
|
|||||||
Reference in New Issue
Block a user