1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-03-09 15:40:17 +00:00

Merge pull request #2501 from holta/mongo2

Proposed enhancements to PR #2499: Mint might need static mapping to Ubuntu [For MongoDB. And get real admitting we no longer support 11 distros/versions...to strengthen support for our 4 core OS's]
This commit is contained in:
A Holt 2020-09-02 20:11:50 -04:00 committed by GitHub
commit 8c2fe045c7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 44 additions and 28 deletions

View file

@ -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'"

View file

@ -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

View file

@ -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"

View file

@ -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/<OS>.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:

View file

@ -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)