diff --git a/vm/haos_vm.sh b/vm/haos_vm.sh index 41d93514..5b2a9a4f 100644 --- a/vm/haos_vm.sh +++ b/vm/haos_vm.sh @@ -1,6 +1,7 @@ #!/usr/bin/env bash NEXTID=$(pvesh get /cluster/nextid) -RELEASE="7.6" +RELEASE=$(curl -sX GET "https://api.github.com/repos/home-assistant/operating-system/releases" | awk '/tag_name/{print $4;exit}' FS='[""]') +STABLE="7.6" YW=`echo "\033[33m"` BL=`echo "\033[36m"` RD=`echo "\033[01;31m"` @@ -13,7 +14,7 @@ HOLD="-" CM="${GN}✓${CL}" while true; do - read -p "This will create a New ${RELEASE} Home Assistant OS VM. Proceed(y/n)?" yn + read -p "This will create a New Home Assistant OS VM. Proceed(y/n)?" yn case $yn in [Yy]* ) break;; [Nn]* ) exit;; @@ -47,10 +48,12 @@ function default_settings() { clear header_info echo -e "${BL}Using Default Settings${CL}" + echo -e "${DGN}Using Version ${BGN}${STABLE}${CL}" + BRANCH=${STABLE} echo -e "${DGN}Using VM ID ${BGN}$NEXTID${CL}" VMID=$NEXTID - echo -e "${DGN}Using VM Name ${BGN}haos${RELEASE}${CL}" - VM_NAME=haos${RELEASE} + echo -e "${DGN}Using VM Name ${BGN}haos${STABLE}${CL}" + VM_NAME=haos${STABLE} echo -e "${DGN}Using ${BGN}2vCPU${CL}" CORE_COUNT="2" echo -e "${DGN}Using ${BGN}4096MiB${CL}" @@ -63,20 +66,35 @@ function advanced_settings() { clear header_info echo -e "${RD}Using Advanced Settings${CL}" + echo -e "${YW}Type Latest for Version ${RELEASE}, or Press [ENTER] for Stable Version ${STABLE} " + read BRANCH + if [ -z $BRANCH ]; then BRANCH=$STABLE; + else + BRANCH=$RELEASE; fi; + echo -en "${DGN}Set Version To ${BL}$BRANCH${CL}" +echo -e " ${CM}${CL} \r" +sleep 1 +clear +header_info + clear + header_info + echo -e "${RD}Using Advanced Settings${CL}" + echo -e "${DGN}Using Version ${BGN}$BRANCH${CL}" echo -e "${YW}Enter the VM ID, or Press [ENTER] to automatically generate (${NEXTID}) " read VMID if [ -z $VMID ]; then VMID=$NEXTID; fi; - echo -en "${DGN}Set VM ID To ${BL}$VMID${CL}" + echo -en "${DGN}Set VM ID To ${BL}$VMID${CL}" echo -e " ${CM}${CL} \r" sleep 1 clear header_info echo -e "${RD}Using Advanced Settings${CL}" + echo -e "${DGN}Using Version ${BGN}$BRANCH${CL}" echo -e "${DGN}Using VM ID ${BGN}$VMID${CL}" - echo -e "${YW}Enter VM Name (no-spaces), or Press [ENTER] for Default: haos${RELEASE} " + echo -e "${YW}Enter VM Name (no-spaces), or Press [ENTER] for Default: haos${BRANCH} " read VMNAME if [ -z $VMNAME ]; then - VM_NAME=haos${RELEASE} + VM_NAME=haos${BRANCH} else VM_NAME=$(echo ${VMNAME,,} | tr -d ' ') fi @@ -86,6 +104,7 @@ sleep 1 clear header_info echo -e "${RD}Using Advanced Settings${CL}" + echo -e "${DGN}Using Version ${BGN}$BRANCH${CL}" echo -e "${DGN}Using VM ID ${BGN}$VMID${CL}" echo -e "${DGN}Using VM Name ${BGN}$VM_NAME${CL}" echo -e "${YW}Allocate CPU cores, or Press [ENTER] for Default: 2 " @@ -97,6 +116,7 @@ sleep 1 clear header_info echo -e "${RD}Using Advanced Settings${CL}" + echo -e "${DGN}Using Version ${BGN}$BRANCH${CL}" echo -e "${DGN}Using VM ID ${BGN}$VMID${CL}" echo -e "${DGN}Using VM Name ${BGN}$VM_NAME${CL}" echo -e "${DGN}Using ${BGN}${CORE_COUNT}vCPU${CL}" @@ -109,6 +129,7 @@ sleep 1 clear header_info echo -e "${RD}Using Advanced Settings${CL}" + echo -e "${DGN}Using Version ${BGN}$BRANCH${CL}" echo -e "${DGN}Using VM ID ${BGN}$VMID${CL}" echo -e "${DGN}Using VM Name ${BGN}$VM_NAME${CL}" echo -e "${DGN}Using ${BGN}${CORE_COUNT}vCPU${CL}" @@ -124,6 +145,7 @@ sleep 1 clear header_info echo -e "${RD}Using Advanced Settings${CL}" + echo -e "${DGN}Using Version ${BGN}$BRANCH${CL}" echo -e "${DGN}Using VM ID ${BGN}$VMID${CL}" echo -e "${DGN}Using VM Name ${BGN}$VM_NAME${CL}" echo -e "${DGN}Using ${BGN}${CORE_COUNT}vCPU${CL}" @@ -220,14 +242,14 @@ else fi msg_ok "Using ${CL}${BL}$STORAGE${CL} ${GN}for Storage Location." msg_ok "Container ID is ${CL}${BL}$VMID${CL}." -msg_info "Getting URL for Stable Branch Home Assistant Disk Image" -URL=https://github.com/home-assistant/operating-system/releases/download/${RELEASE}/haos_ova-${RELEASE}.qcow2.xz -msg_ok "Found URL for Latest Home Assistant Disk Image" +msg_info "Getting URL for Home Assistant ${BRANCH} Disk Image" +URL=https://github.com/home-assistant/operating-system/releases/download/${BRANCH}/haos_ova-${BRANCH}.qcow2.xz +msg_ok "Found URL for Home Assistant ${BRANCH} Disk Image" msg_ok "${CL}${BL}${URL}${CL}" wget -q --show-progress $URL echo -en "\e[1A\e[0K" FILE=$(basename $URL) -msg_ok "Downloaded ${CL}${BL}${RELEASE}.qcow2${CL}${GN} Disk Image" +msg_ok "Downloaded ${CL}${BL}${BRANCH}.qcow2${CL}${GN} Disk Image" msg_info "Extracting Disk Image" unxz $FILE STORAGE_TYPE=$(pvesm status -storage $STORAGE | awk 'NR>1 {print $2}')