From ccaac8727791d4e0f2a70a19a163eedcc488ed15 Mon Sep 17 00:00:00 2001 From: madereddy <49539048+madereddy@users.noreply.github.com> Date: Mon, 11 Dec 2023 14:13:02 -0500 Subject: [PATCH] Add RH Support --- playbooks/fresh_install.yml | 25 ++++++++++++++++++++++++- playbooks/install_docker.yml | 27 +++++++++++++++++++++++++++ playbooks/update_upgrade.yml | 14 ++++++++++++++ 3 files changed, 65 insertions(+), 1 deletion(-) diff --git a/playbooks/fresh_install.yml b/playbooks/fresh_install.yml index 55fcaf2..2457249 100644 --- a/playbooks/fresh_install.yml +++ b/playbooks/fresh_install.yml @@ -1,5 +1,5 @@ --- -- name: Install various utilities on Debian/Ubuntu +- name: Install various utilities on Debian/Ubuntu and Red Hat systems hosts: all become: yes gather_facts: yes @@ -9,6 +9,7 @@ apt: update_cache: yes cache_valid_time: 3600 # Cache valid for 1 hour + when: ansible_os_family == "Debian" - name: Install packages for Debian/Ubuntu apt: @@ -22,6 +23,28 @@ - net-tools - unzip state: present + when: ansible_os_family == "Debian" + + - name: Install EPEL Repository (Red Hat/CentOS) + yum: + name: epel-release + state: present + when: ansible_os_family == "RedHat" + + - name: Install packages for RedHat/CentOS + yum: + name: + - "@Development Tools" + - git + - vim + - curl + - wget + - htop + - tar + - net-tools + - unzip + state: present + when: ansible_os_family == "RedHat" # This will run after the previous play is completed - import_playbook: install_docker.yml diff --git a/playbooks/install_docker.yml b/playbooks/install_docker.yml index ef04883..4a8446a 100644 --- a/playbooks/install_docker.yml +++ b/playbooks/install_docker.yml @@ -41,12 +41,39 @@ name: docker-ce state: present update_cache: yes + when: ansible_os_family == "Debian" + + - name: Install Docker dependencies for RedHat/CentOS + package: + name: + - yum-utils + - device-mapper-persistent-data + - lvm2 + state: present + when: ansible_os_family == "RedHat" + + - name: Add Docker repository for RedHat/CentOS + yum_repository: + name: docker-ce-stable + description: Docker CE Stable - $basearch + baseurl: https://download.docker.com/linux/centos/7/$basearch/stable + enabled: yes + gpgcheck: yes + gpgkey: https://download.docker.com/linux/centos/gpg + when: ansible_os_family == "RedHat" + + - name: Install Docker for RedHat/CentOS + package: + name: docker-ce + state: present + when: ansible_os_family == "RedHat" - name: Add authenticated user to Docker group user: name: "{{ ansible_user }}" groups: docker append: yes + when: ansible_os_family == "Debian" or ansible_os_family == "RedHat" - name: Ensure Docker service is enabled and started systemd: diff --git a/playbooks/update_upgrade.yml b/playbooks/update_upgrade.yml index 1053904..99a236d 100644 --- a/playbooks/update_upgrade.yml +++ b/playbooks/update_upgrade.yml @@ -8,6 +8,20 @@ apt: update_cache: yes upgrade: safe + when: ansible_os_family == "Debian" + + - name: "Updating and Upgrading Yum Packages" + yum: + name: '*' + state: latest + when: ansible_os_family == "RedHat" + + # For DNF-based systems (e.g., Fedora), you can add a similar task: + - name: "Updating and Upgrading Dnf Packages" + dnf: + name: '*' + state: latest + when: ansible_distribution == "Fedora" # Specific adjustments for Raspbian can be made here, if necessary # Raspbian will typically be covered by the Debian task, but if you have specific needs, you can specify them here.