From 6a9012c96483231d45ce69362f6cf934654ae2f4 Mon Sep 17 00:00:00 2001 From: Andrew Dryga Date: Tue, 4 Apr 2023 09:53:21 -0600 Subject: [PATCH] Remove omnibus install scripts --- scripts/omnibus-uninstall.sh | 62 ------------- scripts/omnibus_install.sh | 169 ----------------------------------- 2 files changed, 231 deletions(-) delete mode 100755 scripts/omnibus-uninstall.sh delete mode 100755 scripts/omnibus_install.sh diff --git a/scripts/omnibus-uninstall.sh b/scripts/omnibus-uninstall.sh deleted file mode 100755 index 73d7ad136..000000000 --- a/scripts/omnibus-uninstall.sh +++ /dev/null @@ -1,62 +0,0 @@ -#!/bin/sh - -echo 'Removing Firezone network settings...' -firezone-ctl teardown-network - -echo 'Removing all Firezone directories...' -firezone-ctl cleanse yes - -echo 'Stopping ACME from renewing certificates...' -firezone-ctl stop-cert-renewal - -echo 'Removing firezone package...' -if type apt-get > /dev/null; then - DEBIAN_FRONTEND=noninteractive apt-get remove -y --purge firezone - rm /etc/apt/sources.list.d/firezone-firezone.list - apt-get clean - rm -rf /var/lib/apt/lists/* - apt-get -qqy update -elif type yum > /dev/null; then - yum remove -y firezone - rm /etc/yum.repos.d/firezone-firezone.repo - # some distros (eg, CentOS 7) do not include this repo file - # silence if it can't be found for removal - rm /etc/yum.repos.d/firezone-firezone-source.repo 2> /dev/null -elif type zypper > /dev/null; then - zypper --non-interactive remove -y -u firezone - zypper --non-interactive rr firezone-firezone - zypper --non-interactive rr firezone-firezone-source -else - echo 'Warning: package management tool not found; not '\ - 'removing installed package. This can happen if your'\ - ' package management tool (e.g. yum, apt, etc) is no'\ - 't in your $PATH. Continuing...' -fi - -echo 'Removing remaining directories...' -rm -rf \ - /var/opt/firezone \ - /var/log/firezone \ - /etc/firezone \ - /usr/bin/firezone-ctl \ - /opt/firezone - -echo 'Done! Firezone has been uninstalled.' - -if tput bold; then - bold=$(tput bold) -else - bold='' -fi -if tput sgr0; then - normal=$(tput sgr0) -else - normal='' -fi - -echo $bold -echo 'We rely on feedback from users to steer development.' \ - 'Would you mind taking a minute to share product feedback in exchange' \ - 'for some Firezone stickers?' -echo "https://firezone.dev/feedback?utm_source=uninstall" -echo $normal diff --git a/scripts/omnibus_install.sh b/scripts/omnibus_install.sh deleted file mode 100755 index ea8a9441e..000000000 --- a/scripts/omnibus_install.sh +++ /dev/null @@ -1,169 +0,0 @@ -#!/bin/bash -set -e - -osCheck () { - os=`uname -s` - if [ ! $os = "Linux" ]; then - echo "Please ensure you're running this script on Linux and try again." - exit - fi -} - -curlCheck () { - if ! type curl > /dev/null; then - echo 'curl not found. Please install curl to use this script.' - exit - fi -} - -capture () { - if type curl > /dev/null; then - if [ ! -z "$telemetry_id" ]; then - curl -s -XPOST \ - -m 5 \ - -H 'Content-Type: application/json' \ - -d "{ - \"api_key\": \"phc_ubuPhiqqjMdedpmbWpG2Ak3axqv5eMVhFDNBaXl9UZK\", - \"event\": \"$1\", - \"properties\": { - \"distinct_id\": \"$telemetry_id\", - \"email\": \"$2\" - } - }" \ - https://t.firez.one/capture/ > /dev/null \ - || true - fi - fi -} -promptEmail() { - echo $1 - read adminEmail - case $adminEmail in - *@*) adminUser=$adminEmail;; - *) promptEmail "Please provide a valid email: " - esac -} - -promptContact() { - echo "Could we email you to ask for product feedback? Firezone depends heavily on input from users like you to steer development. (Y/n): " - read contact - case $contact in - n|N);; - *) capture "contactOk" $adminUser - esac -} - -wireguardCheck() { - if ! test -f /sys/module/wireguard/version; then - if test -d /lib/modules/$(uname -r) && test -f `find /lib/modules/$(uname -r) -type f -name 'wireguard.ko'`; then - echo "WireGuard kernel module found, but not loaded. Load it now? (Y/n): " - read load_wgmod - case $load_wgmod in - n|N) echo "Load it with 'sudo modprobe wireguard' and run this install script again"; exit;; - *) modprobe wireguard - esac - else - echo "Error! WireGuard not detected. Please upgrade your kernel to at least 5.6 or install the WireGuard kernel module." - echo "See more at https://www.wireguard.com/install/" - exit - fi - fi -} - -kernelCheck() { - major=`uname -r | cut -d'.' -f1` - if [ "$major" -lt "5" ]; then - echo "Kernel version `uname -r ` is not supported. Please upgrade to 5.0 or higher." - exit - fi -} - -# determines distro and sets up and installs from cloudsmith repo -# aborts if it can't detect or is not supported -setupCloudsmithRepoAndInstall() { - hostinfo=`hostnamectl | egrep -i 'opera'` - if [[ "$hostinfo" =~ .*"Debian GNU/Linux 10".* || \ - "$hostinfo" =~ .*"Debian GNU/Linux 11".* || \ - "$hostinfo" =~ .*"Ubuntu 18.04".* || \ - "$hostinfo" =~ .*"Ubuntu 2"(0|1|2)".04".* - ]] - then - if [ ! -f /etc/apt/sources.list.d/firezone-firezone.list ]; then - apt-get -qqy update - apt-get -qqy install apt-transport-https gnupg - setupCloudsmithRepo "deb" - else - apt-get -qqy update - fi - - apt-get install -y firezone - elif [[ "$hostinfo" =~ .*"Amazon Linux 2".* || \ - "$hostinfo" =~ .*"Fedora 33".* || \ - "$hostinfo" =~ .*"Fedora 34".* || \ - "$hostinfo" =~ .*"Fedora Linux 3"(5|6).* || \ - "$hostinfo" =~ .*"CentOS Linux 7".* || \ - "$hostinfo" =~ .*"CentOS Stream 8".* || \ - "$hostinfo" =~ .*"CentOS Linux 8".* || \ - "$hostinfo" =~ .*"CentOS Stream 9".* || \ - "$hostinfo" =~ .*"Oracle Linux Server "(7|8|9).* || \ - "$hostinfo" =~ .*"Red Hat Enterprise Linux "(7|8|9).* || \ - "$hostinfo" =~ .*"Rocky Linux 8".* || \ - "$hostinfo" =~ .*"AlmaLinux 8".* || \ - "$hostinfo" =~ .*"VzLinux 8".* - ]] - then - if [ ! -f /etc/yum.repos.d/firezone-firezone.repo ]; then - setupCloudsmithRepo "rpm" - fi - - yum install -y firezone - elif [[ "$hostinfo" =~ .*"openSUSE Leap 15".* ]] - then - if ! zypper lr | grep firezone-firezone; then - setupCloudsmithRepo "rpm" - else - zypper --non-interactive --quiet ref firezone-firezone - fi - - zypper --non-interactive install -y firezone - else - echo "Did not detect a supported Linux distribution. Try using the manual installation method using a release package from a similar distribution. Aborting." - exit - fi -} - -setupCloudsmithRepo() { - curl -1sLf \ - "https://dl.cloudsmith.io/public/firezone/firezone/setup.$1.sh" \ - | bash -} - -firezoneSetup() { - conf="/opt/firezone/embedded/cookbooks/firezone/attributes/default.rb" - sed -i "s/firezone@localhost/$1/" $conf - sed -i "s/default\['firezone']\['external_url'].*/default['firezone']['external_url'] = 'https:\/\/$public_ip'/" $conf - firezone-ctl reconfigure - firezone-ctl create-or-reset-admin -} - -main() { - adminUser='' - kernelCheck - wireguardCheck - promptEmail "Enter the administrator email you'd like to use for logging into this Firezone instance:" - promptContact - echo "Press to install or Ctrl-C to abort." - read - setupCloudsmithRepoAndInstall - firezoneSetup $adminUser -} - -osCheck -curlCheck - -telemetry_id=`od -vN "8" -An -tx1 /dev/urandom | tr -d " \n" ; echo` -public_ip=`curl -m 5 --silent ifconfig.me` - -capture "install" "email-not-collected@dummy.domain" - -main