1
0
Fork 0
mirror of https://github.com/roles-ansible/ansible_role_packages.git synced 2024-08-16 10:19:51 +02:00

Starting rewrite...

Cleanup and refactor...
This commit is contained in:
L3D 2023-07-26 23:17:15 +02:00
parent b0c817c681
commit bc965e18e5
Signed by: l3d
GPG key ID: CD08445BFF4313D1
7 changed files with 75 additions and 101 deletions

View file

@ -1,8 +1,11 @@
[![MIT License](https://raw.githubusercontent.com/roles-ansible/ansible_role_base/master/.github/license.svg?sanitize=true)](https://github.com/roles-ansible/ansible_role_base/blob/master/LICENSE) | [![Ansible Lint check](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-linting-check.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-linting-check.yml) | [![Galaxy release](https://github.com/roles-ansible/ansible_role_base/actions/workflows/galaxy.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/galaxy.yml)
Ansible Role to install packages Ansible Role to install packages
--------------------- ---------------------
```
WARNING: REWRITE
```
A base ansible role that should run on common Linux systems. A base ansible role that should run on common Linux systems.
This role adds more package sources to Debian. And installs some useful tools. This role adds more package sources to Debian. And installs some useful tools. The complete list of tools to install can be found in the [vars/main.yml](https://github.com/roles-ansible/ansible_role_base/blob/master/vars/main.yml). This role adds more package sources to Debian. And installs some useful tools. This role adds more package sources to Debian. And installs some useful tools. The complete list of tools to install can be found in the [vars/main.yml](https://github.com/roles-ansible/ansible_role_base/blob/master/vars/main.yml).
@ -53,33 +56,3 @@ base__install_vim: true
# perform a simple versions check (true is recomended) # perform a simple versions check (true is recomended)
submodules_versioncheck: false submodules_versioncheck: false
``` ```
### testing
This role is tested with [these github-action](https://github.com/search?q=topic%3Acheck-ansible+topic%3Agithub-actions+org%3Aroles-ansible&type=Repositories) tests for different versions of differen linux systems.
If you want to find out more about our tests, please have a look at the github marketplace.
| test status | Github Marketplace |
| :--------- | :---------------- |
| [![Galaxy release](https://github.com/roles-ansible/ansible_role_base/actions/workflows/galaxy.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/galaxy.yml) | [publish-ansible-role-to-galaxy](https://github.com/marketplace/actions/publish-ansible-role-to-galaxy) |
| [![Yamllint GitHub Actions](https://github.com/roles-ansible/ansible_role_base/actions/workflows/yamllint.yaml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/yamllint.yaml) | [yamllint-github-action](https://github.com/marketplace/actions/yamllint-github-action) |
| [![Ansible Lint check](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-linting-check.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-linting-check.yml) | [ansible-lint action](https://github.com/marketplace/actions/ansible-lint)
| [![Ansible check debian:latest](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-debian-latest.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-debian-latest.yml) | [ansible test with debian stable](https://github.com/marketplace/actions/check-ansible-debian-stable) |
| [![Ansible check debian:latest](https://github.com/roles-ansible/ansible_role_base/workflows/Ansible%20check%20debian:latest/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions?query=workflow%3A%22Ansible+check+debian%3Alatest%22) | [ansible test with debian latest](https://github.com/marketplace/actions/check-ansible-debian-latest) |
| [![Ansible check debian:sid](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-debian-sid.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-debian-sid.yml) | [ansible test with debian sid](https://github.com/marketplace/actions/check-ansible-debian-sid) |
| [![Ansible check debian:stable](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-debian-stable.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-debian-stable.yml) | [ansible test with debian stable](https://github.com/marketplace/actions/check-ansible-debian-stable) |
| [![Ansible check debian:buster](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-debian-buster.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-debian-buster.yml) | [ansible test with debian buster](https://github.com/marketplace/actions/check-ansible-debian-buster) |
| | |
| [![Ansible check archlinux:latest](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-archlinux-latest.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-archlinux-latest.yml) | [ansible test with archlinux latest](https://github.com/marketplace/actions/check-ansible-archlinux-latest) |
| | |
| [![Ansible check ubuntu:latest](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-ubuntu-latest.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-ubuntu-latest.yml) | [ansible test with ubuntu latest](https://github.com/marketplace/actions/check-ansible-ubuntu-latest) |
| [![Ansible check ubuntu:bionic](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-ubuntu-bionic.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-ubuntu-bionic.yml) | [ansible test with ubuntu bionic](https://github.com/marketplace/actions/check-ansible-ubuntu-bionic) |
| [![Ansible check ubuntu:trusty](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-ubuntu-trusty.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-ubuntu-trusty.yml) | [ansible test with ubuntu trusty](https://github.com/marketplace/actions/check-ansible-ubuntu-trusty) |
| | |
| [![Ansible check fedora:latest](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-fedora-latest.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-fedora-latest.yml) | [ansible test with fedora latest](https://github.com/marketplace/actions/check-ansible-fedora-latest) |
| [![Ansible check fedora:33](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-fedora-33.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-fedora-33.yml) | [ansible test with fedora 33](https://github.com/marketplace/actions/check-ansible-fedora-33) |
| [![Ansible check fedora:32](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-fedora-32.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-fedora-32.yml) | [ansible test with fedora 32](https://github.com/marketplace/actions/check-ansible-fedora-32) |
| [![Ansible check fedora:31](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-fedora-31.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-fedora-31.yml) | [ansible test with fedora 31](https://github.com/marketplace/actions/check-ansible-fedora-31) |
| | |
| [![Ansible check centos:latest](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-centos-latest.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-centos-latest.yml) | [ansible test with centos latest](https://github.com/marketplace/actions/check-ansible-centos-latest) |
| [![Ansible check centos:centos8](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-centos-centos8.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-centos-centos8.yml) | [ansible test with centos centos8](https://github.com/marketplace/actions/check-ansible-centos-centos8) |
| [![Ansible check centos:centos7](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-centos-centos7.yml/badge.svg)](https://github.com/roles-ansible/ansible_role_base/actions/workflows/ansible-centos-centos7.yml) | [ansible test with centos centos7](https://github.com/marketplace/actions/check-ansible-centos-centos7) |

View file

@ -4,7 +4,7 @@ galaxy_info:
description: Ansible role to install some base packages and make some base configuration on all common linux systems description: Ansible role to install some base packages and make some base configuration on all common linux systems
role_name: base role_name: base
license: MIT license: MIT
min_ansible_version: "2.11" min_ansible_version: "2.12"
platforms: platforms:
- name: ArchLinux - name: ArchLinux
versions: ['all'] versions: ['all']

View file

@ -1,21 +1,20 @@
--- ---
- name: Optional print os infos - name: Show Information about target OS (on verbose)
ansible.builtin.include_tasks: os_info.yml ansible.builtin.include_tasks: os_info.yml
when: print_os_vars | bool
- name: Optional versionscheck - name: Run simple versionscheck (optional)
ansible.builtin.include_tasks: versioncheck.yml ansible.builtin.include_tasks: versioncheck.yml
when: submodules_versioncheck | bool when: submodules_versioncheck | bool
- name: Optional add apt sources - name: Adding additional apt sources (optional)
ansible.builtin.include_tasks: sources.yml ansible.builtin.include_tasks: sources_ethz.yml
when: when:
- base__add_ethz | bool - base__add_ethz | bool
- ansible_architecture == 'x86_64' - ansible_architecture == 'x86_64'
- ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8 - ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8
- ansible_pkg_mgr == "apt" - ansible_pkg_mgr == "apt"
- name: Install packages - name: Install some recomended packages
ansible.builtin.include_tasks: packages.yml ansible.builtin.include_tasks: packages.yml
- name: Upgrade all packages to latest - name: Upgrade all packages to latest
@ -26,16 +25,16 @@
when: when:
- base__upgrade_packages_to_latest_version | bool - base__upgrade_packages_to_latest_version | bool
- name: Optional configure editor # - name: Optional configure editor
ansible.builtin.include_tasks: editor.yml # ansible.builtin.include_tasks: editor.yml
when: base__install_vim | bool # when: base__install_vim | bool
#
- name: Optional install keychain # - name: Optional install keychain
ansible.builtin.include_tasks: keychain.yml # ansible.builtin.include_tasks: keychain.yml
when: base__install_keychain | bool # when: base__install_keychain | bool
#
- name: Install optional packages # - name: Install optional packages
become: true # become: true
ansible.builtin.package: # ansible.builtin.package:
name: "{{ base__extra_packages }}" # name: "{{ base__extra_packages }}"
state: present # state: present

View file

@ -11,3 +11,4 @@
inventory_hostname = '{{ inventory_hostname }}' inventory_hostname = '{{ inventory_hostname }}'
ansible_hostname = '{{ ansible_hostname }}' ansible_hostname = '{{ ansible_hostname }}'
ansible_fqdn = '{{ ansible_fqdn }}' ansible_fqdn = '{{ ansible_fqdn }}'
verbosity: 1

View file

@ -1,5 +1,5 @@
--- ---
- name: Update repo-cache for debian/ubuntu - name: Update apt repo-cache for debian/ubuntu
become: true become: true
ansible.builtin.apt: ansible.builtin.apt:
update_cache: true update_cache: true
@ -7,7 +7,7 @@
when: when:
- ansible_pkg_mgr == "apt" - ansible_pkg_mgr == "apt"
- name: Update repo-cache for debian/ubuntu - name: Update dnf repo-cache RHEL/Fedora
become: true become: true
ansible.builtin.dnf: ansible.builtin.dnf:
update_cache: true update_cache: true
@ -17,8 +17,9 @@
- name: Install base packages for all operating systems - name: Install base packages for all operating systems
become: true become: true
ansible.builtin.package: ansible.builtin.package:
name: "{{ base__packages }}" name: "{{ item }}"
state: "{{ base__package_state }}" state: "{{ base__package_state }}"
with_items: "{{ base__packages }}"
- name: Install python3 for all non-legacy systems - name: Install python3 for all non-legacy systems
become: true become: true
@ -30,48 +31,48 @@
ansible_os_family == 'RedHat' and ansible_distribution_version | float >= 7 or ansible_os_family == 'RedHat' and ansible_distribution_version | float >= 7 or
ansible_distribution == 'Debian' and ansible_distribution_version | float >= 7 ansible_distribution == 'Debian' and ansible_distribution_version | float >= 7
- name: Install python for systems where python3 packages are renamed to python # - name: Install python for systems where python3 packages are renamed to python
become: true # become: true
ansible.builtin.package: # ansible.builtin.package:
name: "{{ base__python_packages }}" # name: "{{ base__python_packages }}"
state: "{{ base__package_state }}" # state: "{{ base__package_state }}"
when: ansible_os_family == 'Archlinux' # when: ansible_os_family == 'Archlinux'
#
- name: Install packages for all non-legacy systems # - name: Install packages for all non-legacy systems
become: true # become: true
ansible.builtin.package: # ansible.builtin.package:
name: "{{ base__modern_packages }}" # name: "{{ base__modern_packages }}"
state: "{{ base__package_state }}" # state: "{{ base__package_state }}"
when: | # when: |
ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 16.0 or # ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 16.0 or
ansible_os_family == 'RedHat' and ansible_distribution_version | float >= 7 or # ansible_os_family == 'RedHat' and ansible_distribution_version | float >= 7 or
ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8 or # ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8 or
ansible_os_family == 'Archlinux' # ansible_os_family == 'Archlinux'
#
- name: Install packages for all non-legacy Debian/Ububntu systems # - name: Install packages for all non-legacy Debian/Ububntu systems
become: true # become: true
ansible.builtin.package: # ansible.builtin.package:
name: "{{ base__debian_packages }}" # name: "{{ base__debian_packages }}"
state: "{{ base__package_state }}" # state: "{{ base__package_state }}"
when: | # when: |
ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 16.0 or # ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 16.0 or
ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8 # ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8
#
- name: Install packages for all reasonable non-legacy systems # - name: Install packages for all reasonable non-legacy systems
become: true # become: true
ansible.builtin.package: # ansible.builtin.package:
name: "{{ base__linux_packages }}" # name: "{{ base__linux_packages }}"
state: "{{ base__package_state }}" # state: "{{ base__package_state }}"
when: | # when: |
ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 18.0 or # ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 18.0 or
ansible_distribution == 'Fedora' and ansible_distribution_version | float >= 32 or # ansible_distribution == 'Fedora' and ansible_distribution_version | float >= 32 or
ansible_distribution == 'Debian' and ansible_distribution_version | float >= 9 or # ansible_distribution == 'Debian' and ansible_distribution_version | float >= 9 or
ansible_os_family == 'Archlinux' # ansible_os_family == 'Archlinux'
#
- name: Install mailx on debian # - name: Install mailx on debian
become: true # become: true
ansible.builtin.package: # ansible.builtin.package:
name: # name:
- bsd-mailx # - bsd-mailx
state: "{{ base__package_state }}" # state: "{{ base__package_state }}"
when: ansible_distribution == 'Debian' and ansible_distribution_version | float >= 7 and base__install_mailx | bool # when: ansible_distribution == 'Debian' and ansible_distribution_version | float >= 7 and base__install_mailx | bool

View file

@ -62,5 +62,5 @@ base__linux_packages:
- bzip2 - bzip2
- jq - jq
playbook_version_number: 9019 playbook_version_number: 9020
playbook_version_path: 'base-packages_roles-ansible_github.version' playbook_version_path: 'base-packages_roles-ansible_github.version'