diff --git a/.github/workflows/web.yml b/.github/workflows/web.yml index 3809ede4..69da8317 100644 --- a/.github/workflows/web.yml +++ b/.github/workflows/web.yml @@ -7,6 +7,7 @@ on: - 'python/web/**' - 'python/common/**' - '.github/workflows/web.yml' + - 'easyinstall.sh' jobs: backend_checks: diff --git a/docker/backend/Dockerfile b/docker/backend/Dockerfile index 3a74e7ee..0326aa2b 100644 --- a/docker/backend/Dockerfile +++ b/docker/backend/Dockerfile @@ -12,7 +12,7 @@ WORKDIR /home/pi/piscsi COPY --chown=pi:pi easyinstall.sh . COPY --chown=pi:pi cpp cpp COPY --chown=pi:pi doc doc -RUN ./easyinstall.sh --run_choice=15 --cores=`nproc` +RUN ./easyinstall.sh --run_choice=16 --cores=`nproc` FROM debian:bullseye-slim AS runner USER root diff --git a/docker/web/Dockerfile b/docker/web/Dockerfile index 62124639..73cc1383 100644 --- a/docker/web/Dockerfile +++ b/docker/web/Dockerfile @@ -32,14 +32,14 @@ COPY --chown=pi:pi python/web python/web COPY --chown=pi:pi python/common python/common # Install standalone PiSCSI Web UI -RUN ./easyinstall.sh --run_choice=11 \ +RUN ./easyinstall.sh --run_choice=12 \ && sudo apt-get remove build-essential --yes \ && sudo apt autoremove -y \ && sudo apt-get clean \ && sudo rm -rf /var/lib/apt/lists/* # Enable web UI authentication -RUN ./easyinstall.sh --run_choice=13 +RUN ./easyinstall.sh --run_choice=14 # Setup wired network bridge RUN ./easyinstall.sh --run_choice=5 --headless diff --git a/easyinstall.sh b/easyinstall.sh index cb1dd4e0..206960fb 100755 --- a/easyinstall.sh +++ b/easyinstall.sh @@ -67,6 +67,7 @@ HFDISK_BIN=/usr/bin/hfdisk GIT_BRANCH=$(git rev-parse --abbrev-ref HEAD) GIT_REMOTE=${GIT_REMOTE:-origin} TOKEN="" +AUTH_GROUP="piscsi" SECRET_FILE="$HOME/.config/piscsi/secret" FILE_SHARE_PATH="$HOME/shared_files" FILE_SHARE_NAME="Pi File Server" @@ -110,7 +111,7 @@ function installPackages() { echo "Skipping package installation" return 0 fi - sudo apt-get update && sudo DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y -qq \ + sudo apt-get update && sudo DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --assume-yes -qq \ $APT_PACKAGES_COMMON \ $APT_PACKAGES_BACKEND \ $APT_PACKAGES_PYTHON \ @@ -123,7 +124,7 @@ function installPackagesStandalone() { echo "Skipping package installation" return 0 fi - sudo apt-get update && sudo DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y -qq \ + sudo apt-get update && sudo DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --assume-yes -qq \ $APT_PACKAGES_COMMON \ $APT_PACKAGES_BACKEND } @@ -134,7 +135,7 @@ function installPackagesWeb() { echo "Skipping package installation" return 0 fi - sudo apt-get update && sudo DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y -qq \ + sudo apt-get update && sudo DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends --assume-yes -qq \ $APT_PACKAGES_COMMON \ $APT_PACKAGES_PYTHON \ $APT_PACKAGES_WEB @@ -422,7 +423,10 @@ function migrateLegacyData() { sudo cp "$CPP_PATH/os_integration/piscsi_bridge" "/etc/network/interfaces.d" echo "Replaced rascsi_bridge with piscsi_bridge" fi - if [ $(getent group rascsi) ]; then + if [[ $(getent group rascsi) && $(getent group "$AUTH_GROUP") ]]; then + sudo groupdel rascsi + echo "Deleted the rascsi group in favor of the existing piscsi group" + elif [ $(getent group rascsi) ]; then sudo groupmod --new-name piscsi rascsi echo "Renamed the rascsi group to piscsi" fi @@ -667,7 +671,7 @@ function setupWirelessNetworking() { if [ `apt-cache policy iptables | grep Installed | grep -c "(none)"` -eq 0 ]; then echo "iptables is already installed" else - sudo apt-get install iptables --assume-yes