diff --git a/roles/gitea/defaults/main.yml b/roles/gitea/defaults/main.yml index a19a2506a..b21a68bdc 100644 --- a/roles/gitea/defaults/main.yml +++ b/roles/gitea/defaults/main.yml @@ -9,7 +9,7 @@ # Info needed to install Gitea: -gitea_version: 1.12.3 +gitea_version: 1.12.4 iset_suffixes: i386: 386 x86_64: amd64 diff --git a/roles/mongodb/tasks/install.yml b/roles/mongodb/tasks/install.yml index 6fdbc4a34..eb40db071 100644 --- a/roles/mongodb/tasks/install.yml +++ b/roles/mongodb/tasks/install.yml @@ -57,41 +57,49 @@ with_items: - { src: 'mongod.conf.j2', dest: "{{ mongodb_conf }}", mode: '0644' } # i.e. /etc/mongod.conf - # end block when: not (ansible_architecture == "x86_64" or ansible_architecture == "aarch64") + # 32 bit OS's get caught above should handle aarch32 including 32-bit ubuntu # from https://ubuntu.com/download/raspberry-pi. 20.4-32bit might fail untested # 32bit intel might puke as this was orginally deployed for raspbian. Haven't # see bootable 32bit intel installers for a while now. # 64 bit OS's proceed below. + - block: - name: Add mongodb.org signing key (only 64-bit support available) shell: wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add - args: warn: false - - name: Add mongodb repo for Debian 10 (only amd64 support available) + - name: Use mongodb-org's Debian repo for Debian (only amd64 support available) apt_repository: - repo: deb http://repo.mongodb.org/apt/debian buster/mongodb-org/4.4 main + repo: deb http://repo.mongodb.org/apt/debian {{ ansible_distribution_release }}/mongodb-org/4.4 main state: present filename: mongodb-org - when: is_debian_10 and (ansible_architecture == "x86_64") + when: is_debian and (ansible_architecture == "x86_64") # Debian 10 aarch64 might work below but is blocked in main.yml - - name: Add mongodb repo for RaspOS-aarch64 + - name: Use mongodb-org's Ubuntu bionic repo for RaspOS-aarch64 apt_repository: repo: deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.4 multiverse state: present filename: mongodb-org - when: (ansible_architecture == "aarch64" and is_raspbian_10) + when: is_raspbian and (ansible_architecture == "aarch64") - - name: Add mongodb repo for Ubuntu 64bit only + - name: Use mongodb-org's Ubuntu focal repo for Linux Mint - 64bit only + apt_repository: + repo: deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse + state: present + filename: mongodb-org + when: is_linuxmint | bool + + - name: Use mongodb-org's Ubuntu repo for all non-Mint Ubuntu - 64bit only apt_repository: repo: deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu {{ ansible_distribution_release }}/mongodb-org/4.4 multiverse state: present filename: mongodb-org - when: is_ubuntu + when: is_ubuntu and not is_linuxmint - name: "Install packages: mongodb-org, mongodb-org-server" package: @@ -145,6 +153,7 @@ enabled: no state: restarted + # 3. RECORD MongoDB AS INSTALLED - name: "Set 'mongodb_installed: True'" diff --git a/scripts/ansible b/scripts/ansible index c7f83b78e..0aafd9f27 100755 --- a/scripts/ansible +++ b/scripts/ansible @@ -70,12 +70,12 @@ elif [ -f /etc/debian_version ]; then # Includes Debian, Ubuntu & Raspbian echo -e "\napt update; install dirmngr; PPA to /etc/apt/sources.list.d/iiab-ansible.list\n" $APT_PATH/apt update $APT_PATH/apt -y install dirmngr - #echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" \ - # > /etc/apt/sources.list.d/iiab-ansible.list + echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" \ + > /etc/apt/sources.list.d/iiab-ansible.list # 2020-08-20: TEMP WORKAROUND (REVERT TO ANSIBLE 2.9.6) MITIGATING #2481 (Ansible 2.9.12 and 2.10.0's 666-TO-600 file permissions problem). This installs 2.9.6-1ppa~disco onto RaspiOS, from https://launchpad.net/~ansible/+archive/ubuntu/ansible - echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu disco main" \ - > /etc/apt/sources.list.d/iiab-ansible.list + #echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu disco main" \ + # > /etc/apt/sources.list.d/iiab-ansible.list echo -e '\nIF YOU FACE ERROR "signatures couldn'"'"'t be verified because the public key is not available" THEN REPEATEDLY RE-RUN "sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 93C4A3FD7BB9C367"\n' apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 93C4A3FD7BB9C367 diff --git a/scripts/local_facts.fact b/scripts/local_facts.fact index 21c8727cf..35b409493 100755 --- a/scripts/local_facts.fact +++ b/scripts/local_facts.fact @@ -21,21 +21,23 @@ OS_VER=$OS-$VERSION_ID DHCPCD_PATH=`which dhcpcd` NM_PATH=`which NetworkManager` +# Previously supported Linux distributions / versions: + #"fedora-18" | \ + #"fedora-22" | \ + #"debian-8" | \ + #"debian-9" | \ + #"ubuntu-16" | \ + #"ubuntu-17" | \ + #"ubuntu-18" | \ + #"ubuntu-19" | \ + #"centos-7" | \ + #"raspbian-8" | \ + #"raspbian-9" | \ + case $OS_VER in - "fedora-18" | \ - "fedora-22" | \ - "debian-8" | \ - "debian-9" | \ "debian-10" | \ - "ubuntu-16" | \ - "ubuntu-17" | \ - "ubuntu-18" | \ - "ubuntu-19" | \ "ubuntu-20" | \ "linuxmint-20" | \ - "centos-7" | \ - "raspbian-8" | \ - "raspbian-9" | \ "raspbian-10") ;; *) OS_VER="OS_not_supported" diff --git a/vars/default_vars.yml b/vars/default_vars.yml index d731c05e9..a4b45c9ca 100644 --- a/vars/default_vars.yml +++ b/vars/default_vars.yml @@ -695,21 +695,24 @@ calibreweb_home: "{{ content_base }}/calibre-web" # /library/calibre-web # Works" ~30 lines below, and https://github.com/iiab/iiab/wiki/IIAB-Platforms # Wide to narrow (insofar as poss) -is_debuntu: False # Covers all 3: Ubuntu, Debian, Raspbian (Raspberry Pi OS) +is_debuntu: False # Covers all 4: Ubuntu, Linux Mint, Debian, Raspberry Pi OS (Raspbian) -is_ubuntu: False +is_ubuntu: False # Covers: Ubuntu, Linux Mint is_ubuntu_20: False is_ubuntu_19: False is_ubuntu_18: False is_ubuntu_17: False is_ubuntu_16: False -is_debian: False # Covers both: Debian, Raspbian (Raspberry Pi OS) +is_linuxmint: False # Subset of is_ubuntu +is_linuxmint_20: False + +is_debian: False # Covers both: Debian, Raspberry Pi OS (Raspbian) is_debian_10: False is_debian_9: False is_debian_8: False -is_raspbian: False # Covers both: RPi HW + non-RPi HW versions of Raspbian (Raspberry Pi OS) +is_raspbian: False # Covers both: RPi HW + non-RPi HW versions of Raspberry Pi OS (Raspbian) is_raspbian_10: False is_raspbian_9: False is_raspbian_8: False @@ -728,7 +731,7 @@ is_fedora_18: False # 2. Ansible runs /etc/ansible/facts.d/local_facts.fact to identify the OS # 3. The correct /opt/iiab/iiab/vars/.yml is then invoked by any the # following high-level scripts in /opt/iiab/iiab for IIAB operators: -# ./iiab-install (uses iiab-stages.yml +# ./iiab-install (uses iiab-stages.yml) # ./iiab-network (uses iiab-network.yml) # ./runrole (uses run-one-role.yml) # 4. Likewise behind the scenes: diff --git a/vars/linuxmint-20.yml b/vars/linuxmint-20.yml index f58ba79ed..b0702943a 100644 --- a/vars/linuxmint-20.yml +++ b/vars/linuxmint-20.yml @@ -1,6 +1,8 @@ is_debuntu: True is_ubuntu: True is_ubuntu_20: True +is_linuxmint: True +is_linuxmint_20: True # 2019-03-23: These apply if-only-if named_install and/or dhcpd_install are True # (This is quite rare now that vars/default_vars.yml sets dnsmasq_install: True)