Compare commits
11 Commits
Author | SHA1 | Date |
---|---|---|
|
27c62ff963 | |
|
9cad590925 | |
|
52f4acd9a3 | |
|
5889ca05d1 | |
|
33b2fdee9f | |
|
a87886dbc7 | |
|
51611fe660 | |
|
266f88f039 | |
|
c1583ef410 | |
|
681bb83a96 | |
|
220d5beaf9 |
|
@ -0,0 +1,24 @@
|
|||
DEPRECATED, see README.md
|
||||
|
||||
## v1.1.2
|
||||
|
||||
### Enhancements
|
||||
* Remove Debian installer log files after 4 weeks.
|
||||
|
||||
## v1.1.1
|
||||
|
||||
### Features
|
||||
* Add `apt-transport-https` package.
|
||||
* Ensure to install `less` package on Debian.
|
||||
|
||||
## v1.1
|
||||
|
||||
### Features
|
||||
* Configure and update mlocate/updatedb.
|
||||
* Remove some unwanted packages.
|
||||
* Manage default editor.
|
||||
|
||||
## v1.0
|
||||
|
||||
### Features
|
||||
* Only install new packages from *utils* section.
|
74
README.md
74
README.md
|
@ -1,27 +1,46 @@
|
|||
# PKG_UTILS
|
||||
# NO LONGER SUPPORTED, please take a look to [apt_install][debops apt_install role] [resources][debops resources role] roles !
|
||||
|
||||
1. [Overview](#overview)
|
||||
2. [Role Variables](#role-variables)
|
||||
* [OS Specific Variables](#os-specific-variables)
|
||||
3. [Example Playbook](#example-playbook)
|
||||
4. [Packages](#packages)
|
||||
5. [Development](#development)
|
||||
5. [License](#license)
|
||||
6. [Author Information](#author-information)
|
||||
* [New Packages](#new-packages)
|
||||
* [Unwanted Packages](#unwanted-packages)
|
||||
5. [Configuration](#configuration)
|
||||
* [Default Editor](#default-editor)
|
||||
* [Updatedb](#updatedb)
|
||||
6. [Development](#development)
|
||||
7. [License](#license)
|
||||
8. [Author Information](#author-information)
|
||||
|
||||
## Overview
|
||||
|
||||
Manage some packages from 'utils' section (Apt).
|
||||
Manage some packages installation and configuration from 'utils' section (Apt).
|
||||
|
||||
## Role Variables
|
||||
|
||||
* **pkg_utils_new_state** : State of new pkg_utils packages [default : `latest`].
|
||||
* **pkg_utils_new_state** : State of new pkg_utils packages [default : `installed`].
|
||||
* **pkg_utils_old_manage** : If this role should manage unwanted packages [default : `true`].
|
||||
* **pkg_utils_old_state** : State of useless pkg_utils [default : `absent`].
|
||||
* **pkg_utils_default_editor_name** : The default editor name [default : `vim.nox`].
|
||||
* **pkg_utils_default_editor_path** : The default editor path [default : `/usr/bin/vim.nox`].
|
||||
* **pkg_utils_default_editor_manage** : If the default editor should be managed [default : `true`].
|
||||
* **pkg_utils_updatedb_conf_path** : Configuration file for **updatedb** [default : `/etc/updatedb.conf`].
|
||||
* **pkg_utils_updatedb_conf_tpl** : Template used to generate the previous config file [default : `etc/updatedb.conf.j2`].
|
||||
* **pkg_utils_updatedb_prune_bind_mounts** : Whether or not bind mounts are scanned [default: `true`].
|
||||
* **pkg_utils_updatedb_prunenames** : A list of directory names (without paths) which should not be scanned [default: `[.bzr, .git, .hg, .svn]`].
|
||||
* **pkg_utils_updatedb_prunepaths** : A list of path names of directories which should not be scanned [default: `[/media, /mnt, /tmp, /var/lib/ceph, /var/spool]`].
|
||||
* **pkg_utils_updatedb_prunefs** : A list of file system types (as used in /etc/mtab) which should not be scanned [default: `[afs, autofs, binfmt_misc, ceph, cifs, coda, curlftpfs, devfs, devpts, devtmpfs, ecryptfs, fuse.glusterfs, fuse.sshfs, fusesmb, iso9660, lustre, lustre_lite, mfs, ncpfs, NFS, nfs, nfs4, proc, rpc_pipefs, shfs, smbfs, sysfs, ftpfs, tmpfs, udf, usbfs]`].
|
||||
* **pkg_utils_purge_installer_log** : If the installer log files should be removed [default : `true`].
|
||||
* **pkg_utils_purge_installer_age** : Maximum age of the installer log files before removing [default : `4w`].
|
||||
|
||||
### OS Specific Variables
|
||||
|
||||
Please see default value by Operating System file in [vars][vars directory] directory.
|
||||
|
||||
* **pkg_utils_new_list** : The list of packages to install to provide `pkg_utils`.
|
||||
* **pkg_utils_old_list** : The list of unwanted packages to remove.
|
||||
|
||||
## Example Playbook
|
||||
|
||||
|
@ -33,9 +52,28 @@ Please see default value by Operating System file in [vars][vars directory] dire
|
|||
- role: ipr-cnrs.pkg_utils
|
||||
```
|
||||
|
||||
* Don't remove any packages :
|
||||
|
||||
``` yml
|
||||
- hosts: serverXYZ
|
||||
roles:
|
||||
- role: ipr-cnrs.pkg_utils
|
||||
pkg_utils_old_manage: false
|
||||
```
|
||||
|
||||
* Don't remove installer log files :
|
||||
|
||||
``` yml
|
||||
- hosts: serverXYZ
|
||||
roles:
|
||||
- role: ipr-cnrs.pkg_utils
|
||||
pkg_utils_purge_installer_log: false
|
||||
```
|
||||
|
||||
## Packages
|
||||
|
||||
### New Packages
|
||||
* **apt-transport-https** : https download transport for APT.
|
||||
* **bdsmainutils** : Collection of more utilities from FreeBSD.
|
||||
* **colordiff** : Tool to colorize 'diff' output.
|
||||
* **cpio** : GNU cpio; a program to manage archives of files.
|
||||
|
@ -69,6 +107,28 @@ sudo multitail -s 2 /var/log/auth.log /var/log/syslog /var/log/mail.log
|
|||
* **zip** : Archiver for .zip files.
|
||||
* **zsh** : Shell with lots of features.
|
||||
|
||||
### Unwanted Packages
|
||||
* **vim-tiny** : Compact version of vim editor.
|
||||
|
||||
## Configuration
|
||||
|
||||
### Default Editor
|
||||
|
||||
* Set the *pkg_utils_default_editor.name* var [default : `vim.nox`] as the default editor on the system.
|
||||
|
||||
### Updatedb
|
||||
|
||||
Based on the [Oefenweb module][oefenweb ansible updatedb], thanks !
|
||||
|
||||
* Set the default configuration file for *updatedb* and update the database for Mlocate with an handler.
|
||||
* Ensure to not scan some path, directories and filesystem.
|
||||
|
||||
### Installer log files
|
||||
|
||||
* Debian installer log all the installation in `/var/log/installer`.
|
||||
* If a system is stable, you should removed these log files.
|
||||
* After 4 weeks (by default) this role will remove it.
|
||||
|
||||
## Development
|
||||
|
||||
This source code comes from our [Gogs instance][pkg_utils source] and the [Github repo][pkg_utils github] exist just to be able to send the role to Ansible Galaxy…
|
||||
|
@ -93,3 +153,5 @@ Jérémy Gardais
|
|||
[pkg_utils github]: https://github.com/ipr-cnrs/pkg_utils
|
||||
[wtfpl website]: http://www.wtfpl.net/about/
|
||||
[ipr website]: https://ipr.univ-rennes1.fr/
|
||||
[debops apt_install role]: https://docs.debops.org/en/master/ansible/roles/debops.apt_install/index.html
|
||||
[debops resources role]: https://docs.debops.org/en/master/ansible/roles/debops.resources/index.html
|
||||
|
|
|
@ -4,3 +4,62 @@
|
|||
# packages
|
||||
pkg_utils_new_state: 'installed'
|
||||
|
||||
pkg_utils_old_manage: true
|
||||
pkg_utils_old_state: 'absent'
|
||||
|
||||
# configuration
|
||||
|
||||
pkg_utils_default_editor_manage: true
|
||||
pkg_utils_default_editor_name: 'vim.nox'
|
||||
pkg_utils_default_editor_path: '/usr/bin/vim.nox'
|
||||
|
||||
pkg_utils_updatedb_conf_path: '/etc/updatedb.conf'
|
||||
pkg_utils_updatedb_conf_tpl: 'etc/updatedb.conf.j2'
|
||||
pkg_utils_updatedb_prune_bind_mounts: true
|
||||
pkg_utils_updatedb_prunenames:
|
||||
- .bzr
|
||||
- .git
|
||||
- .hg
|
||||
- .svn
|
||||
pkg_utils_updatedb_prunepaths:
|
||||
- /media
|
||||
- /mnt
|
||||
- /tmp
|
||||
- /var/lib/ceph
|
||||
- /var/spool
|
||||
pkg_utils_updatedb_prunefs:
|
||||
- afs
|
||||
- autofs
|
||||
- binfmt_misc
|
||||
- ceph
|
||||
- cifs
|
||||
- coda
|
||||
- curlftpfs
|
||||
- devfs
|
||||
- devpts
|
||||
- devtmpfs
|
||||
- ecryptfs
|
||||
- fuse.glusterfs
|
||||
- fuse.sshfs
|
||||
- fusesmb
|
||||
- iso9660
|
||||
- lustre
|
||||
- lustre_lite
|
||||
- mfs
|
||||
- ncpfs
|
||||
- NFS
|
||||
- nfs
|
||||
- nfs4
|
||||
- proc
|
||||
- rpc_pipefs
|
||||
- shfs
|
||||
- smbfs
|
||||
- sysfs
|
||||
- ftpfs
|
||||
- tmpfs
|
||||
- udf
|
||||
- usbfs
|
||||
|
||||
pkg_utils_purge_installer_log: true
|
||||
pkg_utils_purge_installer_age: '4w'
|
||||
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
---
|
||||
- name: update mlocate db
|
||||
command: updatedb
|
|
@ -16,4 +16,52 @@
|
|||
with_items:
|
||||
- '{{ pkg_utils_new_list }}'
|
||||
|
||||
- name: Remove useless packages
|
||||
apt:
|
||||
name: '{{ item }}'
|
||||
state: '{{ pkg_utils_old_state }}'
|
||||
with_items:
|
||||
- '{{ pkg_utils_old_list }}'
|
||||
when: pkg_utils_old_manage
|
||||
|
||||
# }}}
|
||||
|
||||
# configuration {{{
|
||||
- name: CONFIG {{ pkg_utils_default_editor_name }} as default editor
|
||||
alternatives:
|
||||
name: editor
|
||||
path: '{{ pkg_utils_default_editor_path }}'
|
||||
priority: 80
|
||||
when: pkg_utils_default_editor_manage
|
||||
|
||||
- name: CONFIG updatedb
|
||||
template:
|
||||
src: '{{ pkg_utils_updatedb_conf_tpl }}'
|
||||
dest: '{{ pkg_utils_updatedb_conf_path }}'
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0644
|
||||
backup: true
|
||||
notify: update mlocate db
|
||||
|
||||
# }}}
|
||||
|
||||
# purge log {{{
|
||||
|
||||
- name: Find /var/log/installer
|
||||
find:
|
||||
path: /var/log/
|
||||
patterns: 'installer'
|
||||
age: '{{ pkg_utils_purge_installer_age }}'
|
||||
register: findresult
|
||||
when: pkg_utils_purge_installer_log
|
||||
|
||||
- name: Remove /var/log/installer older than {{ pkg_utils_purge_installer_age }}
|
||||
file:
|
||||
path: "{{ item.path }}"
|
||||
state: absent
|
||||
recurse: yes
|
||||
with_items: '{{ findresult.files }}'
|
||||
when: pkg_utils_purge_installer_log
|
||||
|
||||
# }}}
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
# {{ ansible_managed }}
|
||||
|
||||
PRUNE_BIND_MOUNTS="{{ 'yes' if pkg_utils_updatedb_prune_bind_mounts else 'no' }}"
|
||||
PRUNENAMES="{{ pkg_utils_updatedb_prunenames | join(' ') }}"
|
||||
PRUNEPATHS="{{ pkg_utils_updatedb_prunepaths | join(' ') }}"
|
||||
PRUNEFS="{{ pkg_utils_updatedb_prunefs | join(' ') }}"
|
|
@ -3,11 +3,13 @@
|
|||
# vars file for Debian-based distros
|
||||
|
||||
pkg_utils_new_list:
|
||||
- 'apt-transport-https'
|
||||
- 'bsdmainutils'
|
||||
- 'colordiff'
|
||||
- 'cpio'
|
||||
- 'debian-goodies'
|
||||
- 'htop'
|
||||
- 'less'
|
||||
- 'lsof'
|
||||
- 'lzip'
|
||||
- 'mlocate'
|
||||
|
@ -22,3 +24,6 @@ pkg_utils_new_list:
|
|||
- 'vim-scripts'
|
||||
- 'zip'
|
||||
- 'zsh'
|
||||
|
||||
pkg_utils_old_list:
|
||||
- 'vim-tiny'
|
||||
|
|
Reference in New Issue