Ansible roles by Evolix
Find a file
2024-02-07 16:12:32 +01:00
.vscode vscode: ansible/yaml formatter 2023-06-01 09:43:43 +02:00
amavis whitespaces 2024-02-07 16:12:32 +01:00
amazon-ec2 change syntax "become: [yes,no]" → "become: [true,false]" 2023-07-03 14:21:22 +02:00
apache apache: create ip_whitelist file if missing 2024-02-07 15:38:28 +01:00
apt apt: remove duplicate extension 2024-02-06 08:21:15 +01:00
autosysadmin Add role for automatically deploying autosysadmin 2023-12-18 17:00:51 +01:00
bind bind: improve reload script 2023-12-29 12:12:39 +01:00
bookworm-detect/tasks Use FQCN 2023-03-20 23:33:19 +01:00
bullseye-detect/tasks Use FQCN 2023-03-20 23:33:19 +01:00
certbot warning comment 2024-01-11 17:45:55 +01:00
check_free_space check_free_space: add role; evolinux-base: install check_free_space by default 2024-01-24 17:25:20 +01:00
clamav Use FQCN 2023-03-20 23:33:19 +01:00
dhcpd Use FQCN 2023-03-20 23:33:19 +01:00
docker-host fix: search/replace error 2023-12-04 11:38:09 +01:00
dovecot whitespaces 2024-02-07 16:12:32 +01:00
drbd Use FQCN 2023-03-20 23:33:19 +01:00
elasticsearch Ensure {{ apt_keyring_dir }} directory exists 2023-07-25 10:59:53 +02:00
etc-git etc-git: add /var/chroot-bind/etc/bind to Git safe directories to avoid owner check by Git (bind owns the repo, not root) 2023-11-30 17:41:25 +01:00
evoacme change syntax "become: [yes,no]" → "become: [true,false]" 2023-07-03 14:21:22 +02:00
evobackup-client Use FQCN 2023-03-20 23:33:19 +01:00
evocheck evocheck: upstream release 24.01 2024-01-03 17:47:09 +01:00
evolinux-base postfix: move postfix installation from evolinux-base to postfix role, plus some refactoring 2024-02-01 18:00:48 +01:00
evolinux-todo force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
evolinux-users lxc-php: Allow one to install php83 on Bookworm container 2023-11-28 17:15:44 +01:00
evomaintenance evomaintenance: upstream release 23.10.1 2023-10-09 18:13:48 +02:00
fail2ban fail2ban: add script unban_ip 2024-01-24 15:24:42 +01:00
filebeat remove check-mode protection for handlers 2024-02-06 08:39:38 +01:00
fluentd Ensure {{ apt_keyring_dir }} directory exists 2023-07-25 10:59:53 +02:00
generate-ldif nagios-nrpe, generateldif: new check_pressure_{cpu,io,mem} 2024-01-31 18:04:11 +01:00
graylog Add role for Graylog 2023-03-30 17:58:30 +02:00
haproxy force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
java Allow Java 17 2023-09-26 18:00:57 +02:00
jenkins Ensure {{ apt_keyring_dir }} directory exists 2023-07-25 10:59:53 +02:00
keepalived force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
kibana kibana: include tasks instead of import 2023-08-29 12:06:21 +02:00
kvm-host kvm-host: Add LVM filter when needed 2023-12-22 11:26:08 +01:00
ldap whitespaces 2024-02-07 16:12:32 +01:00
listupgrade listupgrade: Fix removal order 2024-01-18 10:14:37 +01:00
logstash metricbeat/logstash: fix Ansible syntax 2023-09-13 09:38:44 +02:00
lxc lxc: Init /etc git repository in lxc container 2023-11-24 11:54:13 +01:00
lxc-php scripts munin pour les stats sur les pools 2023-12-04 18:46:48 +01:00
lxc-solr Use FQCN 2023-03-20 23:33:19 +01:00
memcached force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
meta Add meta/main.yml file for ansible galaxy cloning 2017-11-14 22:16:17 +01:00
metricbeat metricbeat/logstash: fix Ansible syntax 2023-09-13 09:38:44 +02:00
minifirewall minifirewall: do not open publicly ports except 22222 2024-01-24 11:45:28 +01:00
mongodb mongodb: add gpg key for 7.0 2023-12-18 16:36:09 +01:00
monit force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
munin Use FQCN 2023-03-20 23:33:19 +01:00
mysql mysql: disable performance schema for Debian 8 2023-12-11 18:21:57 +01:00
mysql-oracle force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
nagios-nrpe nagios-nrpe: multi-line list 2024-02-06 08:34:22 +01:00
nameserver Use FQCN 2023-03-20 23:33:19 +01:00
networkd-to-ifconfig Use FQCN 2023-03-20 23:33:19 +01:00
newrelic Ensure {{ apt_keyring_dir }} directory exists 2023-07-25 10:59:53 +02:00
nginx nginx: clarify intent regarding check mode 2024-02-07 15:39:05 +01:00
nodejs Ensure {{ apt_keyring_dir }} directory exists 2023-07-25 10:59:53 +02:00
ntpd Use FQCN 2023-03-20 23:33:19 +01:00
opendkim opendkim: update apt cache before install 2023-07-20 16:33:15 +02:00
openvpn force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
packweb-apache force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
percona Ensure {{ apt_keyring_dir }} directory exists 2023-07-25 10:59:53 +02:00
pgbouncer rename handler 2023-06-05 14:28:06 +02:00
php php: drop apt_preferences(5) file for sury 2024-01-17 16:49:11 +01:00
policy_pam policy_pam > Add support for Debian 10/9 2023-06-12 11:35:53 +02:00
postfix postfix: default to evolinux_fqdn 2024-02-06 13:33:15 +01:00
postgresql Add variable ansible_distribution_release on preference file for fix version of postgresql 2023-08-14 09:29:12 +02:00
proftpd proftpd: fix error when no SSH key is provided 2024-02-07 11:32:41 +01:00
rabbitmq force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
rbenv rbenv: Installer libyaml-dev 2023-10-12 17:49:00 +02:00
redis redis: manage config template inside a block 2024-01-18 10:00:44 +01:00
redmine change syntax "become: [yes,no]" → "become: [true,false]" 2023-07-03 14:21:22 +02:00
remount-usr remount-usr: back to a simpler implementation 2024-02-07 15:43:23 +01:00
spamassasin spamassassin: optimize tasks 2024-02-07 16:01:37 +01:00
squid squid: config directory seems to have changed from /etc/squid3 to /etc/squid in Debian 8 2023-12-11 15:10:06 +01:00
ssl #73871 ssl: no not execute haproxy tasks and reload if haproxy is disabled 2023-11-17 15:51:33 +01:00
supervisord force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
timesyncd Fix timesyncd template 2023-12-05 11:15:36 +01:00
tomcat Use FQCN 2023-03-20 23:33:19 +01:00
tomcat-instance force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
unbound unbound: Add a apt cache validity to enforce an apt update if needed 2023-12-19 17:55:36 +01:00
userlogrotate Revert last commit 2024-02-01 17:04:30 +01:00
varnish force: [yes,no] → force [true,false] 2023-06-28 13:25:30 +02:00
vrrpd vrrpd: configure minifirewall 2024-02-06 08:40:55 +01:00
webapps evoadmin-mail: apt modules already knows how to download packages 2024-02-06 13:59:28 +01:00
.gitignore .gitignore .vscode directory 2023-06-15 15:26:07 +02:00
.Jenkinsfile Jenkinsfile > Creating a temp file to collect lint result is not required 2022-12-27 18:43:37 +01:00
.markdownlint.json Linting CHANGELOG 2023-10-14 07:36:29 +02:00
CHANGELOG.md proftpd: fix error when no SSH key is provided 2024-02-07 11:32:41 +01:00
Dockerfile Change Dockerfile Workdir to /data 2019-06-17 14:31:01 +02:00
evolix Revert "Suppression lien symbolique boucle récursive (créé par Victor en mars 2018)" 2022-05-25 09:37:46 +02:00
java8 java: support for Oracle JRE 2018-06-11 10:39:52 +02:00
LICENSE Add the GPLv2 licence 2017-01-05 18:22:06 +01:00
README.md Mention the CHANGELOG in the README 2021-02-04 11:13:05 +01:00

Ansible-roles

A repository for Ansible roles used by Evolix on Debian GNU/Linux 9 (stretch) servers. Few roles are also be compatible with Debian GNU/Linux 8 (jessie) servers.

It contains only roles, everything else is available at https://gitea.evolix.org/evolix/ansible-public

Branches

The stable branch contains roles that we consider ready for production.

The unstable branch contains not sufficiently tested roles (or evolutions on existing roles) that we don't consider ready for production yet.

Many feature branches may exist in the repository. They represent "work in progress". They may be used, for testing purposes.

Install and usage

First, check-out the repository :

$ cd ~/GIT/
$ git clone https://gitea.evolix.org/evolix/ansible-roles

Then, add its path to your ansible load path :

$ vim ~/.ansible.cfg
[defaults]
roles_path = $HOME/GIT/ansible-roles

Then, include roles in your playbooks :

- hosts: all
  gather_facts: yes
  become: yes
  roles:
    - etc-git
    - evolinux-base

Contributing

Contributions are welcome, especially bug fixes and "ansible good practices". They will be merged in if they are consistent with our conventions and use cases. They might be rejected if they introduce complexity, cover features we don't need or don't fit "style".

Before starting anything of importance, we suggest contacting us to discuss what you'd like to add or change.

Our conventions are available in the "ansible-public":https://gitea.evolix.org/evolix/ansible-public repository, in the CONVENTIONS.md file.

All modifications should be documented in the CHANGELOG file, to help review releases. We encourage atomic commits, on a single role, and with the CHANGELOG in the same commit.

Workflow

The ideal and most typical workflow is to create a branch, based on the "unstable" branch. The branch should have a descriptive name (a ticket/issue number is great). The branch can be treated as a pull-request or merge-request. It should be propery tested and reviewed before merging into "unstable".

Changes that don't introduce significant changes — or that must go faster that the typical workflow — can be commited directly into "unstable".

Hotfixes, can be prepared on a new branch, based on "stable" or "unstable" (to be decided by the author). When ready, it can be merged back to "stable" for immediate deployment and to "unstable" for proper backporting.

Other workflow are not forbidden, but should be discussed in advance.