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:
parent
b0c817c681
commit
bc965e18e5
7 changed files with 75 additions and 101 deletions
35
README.md
35
README.md
|
@ -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
|
||||
---------------------
|
||||
|
||||
```
|
||||
WARNING: REWRITE
|
||||
```
|
||||
|
||||
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).
|
||||
|
@ -53,33 +56,3 @@ base__install_vim: true
|
|||
# perform a simple versions check (true is recomended)
|
||||
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) |
|
||||
|
|
|
@ -4,7 +4,7 @@ galaxy_info:
|
|||
description: Ansible role to install some base packages and make some base configuration on all common linux systems
|
||||
role_name: base
|
||||
license: MIT
|
||||
min_ansible_version: "2.11"
|
||||
min_ansible_version: "2.12"
|
||||
platforms:
|
||||
- name: ArchLinux
|
||||
versions: ['all']
|
||||
|
|
|
@ -1,21 +1,20 @@
|
|||
---
|
||||
- name: Optional print os infos
|
||||
- name: Show Information about target OS (on verbose)
|
||||
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
|
||||
when: submodules_versioncheck | bool
|
||||
|
||||
- name: Optional add apt sources
|
||||
ansible.builtin.include_tasks: sources.yml
|
||||
- name: Adding additional apt sources (optional)
|
||||
ansible.builtin.include_tasks: sources_ethz.yml
|
||||
when:
|
||||
- base__add_ethz | bool
|
||||
- ansible_architecture == 'x86_64'
|
||||
- ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8
|
||||
- ansible_pkg_mgr == "apt"
|
||||
|
||||
- name: Install packages
|
||||
- name: Install some recomended packages
|
||||
ansible.builtin.include_tasks: packages.yml
|
||||
|
||||
- name: Upgrade all packages to latest
|
||||
|
@ -24,18 +23,18 @@
|
|||
name: "*"
|
||||
state: "{{ base__package_state }}"
|
||||
when:
|
||||
- base__upgrade_packages_to_latest_version|bool
|
||||
- base__upgrade_packages_to_latest_version | bool
|
||||
|
||||
- name: Optional configure editor
|
||||
ansible.builtin.include_tasks: editor.yml
|
||||
when: base__install_vim | bool
|
||||
|
||||
- name: Optional install keychain
|
||||
ansible.builtin.include_tasks: keychain.yml
|
||||
when: base__install_keychain | bool
|
||||
|
||||
- name: Install optional packages
|
||||
become: true
|
||||
ansible.builtin.package:
|
||||
name: "{{ base__extra_packages }}"
|
||||
state: present
|
||||
# - name: Optional configure editor
|
||||
# ansible.builtin.include_tasks: editor.yml
|
||||
# when: base__install_vim | bool
|
||||
#
|
||||
# - name: Optional install keychain
|
||||
# ansible.builtin.include_tasks: keychain.yml
|
||||
# when: base__install_keychain | bool
|
||||
#
|
||||
# - name: Install optional packages
|
||||
# become: true
|
||||
# ansible.builtin.package:
|
||||
# name: "{{ base__extra_packages }}"
|
||||
# state: present
|
||||
|
|
|
@ -11,3 +11,4 @@
|
|||
inventory_hostname = '{{ inventory_hostname }}'
|
||||
ansible_hostname = '{{ ansible_hostname }}'
|
||||
ansible_fqdn = '{{ ansible_fqdn }}'
|
||||
verbosity: 1
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
---
|
||||
- name: Update repo-cache for debian/ubuntu
|
||||
- name: Update apt repo-cache for debian/ubuntu
|
||||
become: true
|
||||
ansible.builtin.apt:
|
||||
update_cache: true
|
||||
|
@ -7,7 +7,7 @@
|
|||
when:
|
||||
- ansible_pkg_mgr == "apt"
|
||||
|
||||
- name: Update repo-cache for debian/ubuntu
|
||||
- name: Update dnf repo-cache RHEL/Fedora
|
||||
become: true
|
||||
ansible.builtin.dnf:
|
||||
update_cache: true
|
||||
|
@ -17,8 +17,9 @@
|
|||
- name: Install base packages for all operating systems
|
||||
become: true
|
||||
ansible.builtin.package:
|
||||
name: "{{ base__packages }}"
|
||||
name: "{{ item }}"
|
||||
state: "{{ base__package_state }}"
|
||||
with_items: "{{ base__packages }}"
|
||||
|
||||
- name: Install python3 for all non-legacy systems
|
||||
become: true
|
||||
|
@ -30,48 +31,48 @@
|
|||
ansible_os_family == 'RedHat' and ansible_distribution_version | float >= 7 or
|
||||
ansible_distribution == 'Debian' and ansible_distribution_version | float >= 7
|
||||
|
||||
- name: Install python for systems where python3 packages are renamed to python
|
||||
become: true
|
||||
ansible.builtin.package:
|
||||
name: "{{ base__python_packages }}"
|
||||
state: "{{ base__package_state }}"
|
||||
when: ansible_os_family == 'Archlinux'
|
||||
|
||||
- name: Install packages for all non-legacy systems
|
||||
become: true
|
||||
ansible.builtin.package:
|
||||
name: "{{ base__modern_packages }}"
|
||||
state: "{{ base__package_state }}"
|
||||
when: |
|
||||
ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 16.0 or
|
||||
ansible_os_family == 'RedHat' and ansible_distribution_version | float >= 7 or
|
||||
ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8 or
|
||||
ansible_os_family == 'Archlinux'
|
||||
|
||||
- name: Install packages for all non-legacy Debian/Ububntu systems
|
||||
become: true
|
||||
ansible.builtin.package:
|
||||
name: "{{ base__debian_packages }}"
|
||||
state: "{{ base__package_state }}"
|
||||
when: |
|
||||
ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 16.0 or
|
||||
ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8
|
||||
|
||||
- name: Install packages for all reasonable non-legacy systems
|
||||
become: true
|
||||
ansible.builtin.package:
|
||||
name: "{{ base__linux_packages }}"
|
||||
state: "{{ base__package_state }}"
|
||||
when: |
|
||||
ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 18.0 or
|
||||
ansible_distribution == 'Fedora' and ansible_distribution_version | float >= 32 or
|
||||
ansible_distribution == 'Debian' and ansible_distribution_version | float >= 9 or
|
||||
ansible_os_family == 'Archlinux'
|
||||
|
||||
- name: Install mailx on debian
|
||||
become: true
|
||||
ansible.builtin.package:
|
||||
name:
|
||||
- bsd-mailx
|
||||
state: "{{ base__package_state }}"
|
||||
when: ansible_distribution == 'Debian' and ansible_distribution_version | float >= 7 and base__install_mailx | bool
|
||||
# - name: Install python for systems where python3 packages are renamed to python
|
||||
# become: true
|
||||
# ansible.builtin.package:
|
||||
# name: "{{ base__python_packages }}"
|
||||
# state: "{{ base__package_state }}"
|
||||
# when: ansible_os_family == 'Archlinux'
|
||||
#
|
||||
# - name: Install packages for all non-legacy systems
|
||||
# become: true
|
||||
# ansible.builtin.package:
|
||||
# name: "{{ base__modern_packages }}"
|
||||
# state: "{{ base__package_state }}"
|
||||
# when: |
|
||||
# ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 16.0 or
|
||||
# ansible_os_family == 'RedHat' and ansible_distribution_version | float >= 7 or
|
||||
# ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8 or
|
||||
# ansible_os_family == 'Archlinux'
|
||||
#
|
||||
# - name: Install packages for all non-legacy Debian/Ububntu systems
|
||||
# become: true
|
||||
# ansible.builtin.package:
|
||||
# name: "{{ base__debian_packages }}"
|
||||
# state: "{{ base__package_state }}"
|
||||
# when: |
|
||||
# ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 16.0 or
|
||||
# ansible_distribution == 'Debian' and ansible_distribution_version | float >= 8
|
||||
#
|
||||
# - name: Install packages for all reasonable non-legacy systems
|
||||
# become: true
|
||||
# ansible.builtin.package:
|
||||
# name: "{{ base__linux_packages }}"
|
||||
# state: "{{ base__package_state }}"
|
||||
# when: |
|
||||
# ansible_distribution == 'Ubuntu' and ansible_distribution_version | float >= 18.0 or
|
||||
# ansible_distribution == 'Fedora' and ansible_distribution_version | float >= 32 or
|
||||
# ansible_distribution == 'Debian' and ansible_distribution_version | float >= 9 or
|
||||
# ansible_os_family == 'Archlinux'
|
||||
#
|
||||
# - name: Install mailx on debian
|
||||
# become: true
|
||||
# ansible.builtin.package:
|
||||
# name:
|
||||
# - bsd-mailx
|
||||
# state: "{{ base__package_state }}"
|
||||
# when: ansible_distribution == 'Debian' and ansible_distribution_version | float >= 7 and base__install_mailx | bool
|
||||
|
|
|
@ -62,5 +62,5 @@ base__linux_packages:
|
|||
- bzip2
|
||||
- jq
|
||||
|
||||
playbook_version_number: 9019
|
||||
playbook_version_number: 9020
|
||||
playbook_version_path: 'base-packages_roles-ansible_github.version'
|
||||
|
|
Loading…
Reference in a new issue