139 lines
3.7 KiB
YAML
139 lines
3.7 KiB
YAML
---
|
|
# tasklist for setting up copr
|
|
# This is the base set of files needed for copr
|
|
|
|
|
|
# again to late to do it here
|
|
# - import_tasks: "{{ tasks_path }}/cloud_setup_basic.yml"
|
|
# already included into the `base` role
|
|
#- import_tasks: "{{ tasks_path }}/postfix_basic.yml"
|
|
|
|
# To late to do it here (
|
|
#- name: setup correct hostname for copr machine
|
|
# hostname: name="{{ copr_hostbase }}.cloud.fedoraproject.org"
|
|
# # hostname: name="{{ hostbase|regex_replace('.*-$', '')}}.cloud.fedoraproject.org"
|
|
# tags:
|
|
# - config
|
|
|
|
- name: enable epel for non-fedora hosts
|
|
package: state=present pkg="epel-release"
|
|
when: ansible_distribution != 'Fedora'
|
|
|
|
- name: copy .forward file
|
|
copy: src="{{ _forward_src }}" dest="/root/.forward" owner=root group=root
|
|
tags:
|
|
- config
|
|
|
|
- name: deploy /etc/hosts file
|
|
copy: src="hosts" dest=/etc/ owner=root group=root mode=644
|
|
tags:
|
|
- config
|
|
|
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1941170
|
|
- name: mask the systemd-oomd service
|
|
systemd:
|
|
name: systemd-oomd
|
|
state: stopped
|
|
enabled: no
|
|
masked: yes
|
|
when: ansible_distribution == 'Fedora'
|
|
|
|
- name: configure crond
|
|
copy: src=sysconfig.crond dest=/etc/sysconfig/crond
|
|
notify: restart crond
|
|
|
|
- name: install base copr packages
|
|
package:
|
|
name:
|
|
- acl # useful for ansible acl module
|
|
- bash-completion
|
|
- cronie-anacron
|
|
- ethtool
|
|
- node-exporter
|
|
- screen
|
|
- tmux
|
|
state: present
|
|
tags:
|
|
packages
|
|
|
|
- name: install rsyslog-logrotate
|
|
package: name=rsyslog-logrotate state=present
|
|
when: ansible_distribution == 'Fedora'
|
|
|
|
- name: configure anacrond to not send mails to root user
|
|
lineinfile: dest=/etc/anacrontab
|
|
backup=yes
|
|
state=present
|
|
line='MAILTO=copr-team@redhat.com'
|
|
regexp="^MAILTO"
|
|
notify: restart crond
|
|
|
|
- name: override the default rsyslog logrotate file
|
|
copy: src=syslog-logrotate dest=/etc/logrotate.d/rsyslog
|
|
tags:
|
|
- logrotate
|
|
when: ansible_distribution == 'Fedora'
|
|
|
|
- name: install copr-selinux
|
|
package:
|
|
state: latest
|
|
name: copr-selinux
|
|
tags:
|
|
- packages
|
|
|
|
- name: start node exporter
|
|
service: state=started enabled=yes name=node_exporter
|
|
when:
|
|
- "'pulp' not in inventory_hostname"
|
|
|
|
- name: check offloading
|
|
shell: "ethtool -k ens5 | egrep -q 'tcp-segmentation-offload: on|generic-receive-offload: on|generic-segmentation-offload: on'"
|
|
register: offloading
|
|
failed_when: offloading.rc == 2
|
|
changed_when: "1 != 1"
|
|
check_mode: no
|
|
|
|
- name: disable offloading
|
|
command: ethtool -K ens5 tso off gro off gso off
|
|
when:
|
|
- offloading.rc == 0
|
|
- ansible_distribution == 'Fedora'
|
|
|
|
- name: disable offloading (persitently)
|
|
shell: "nmcli con modify '{{ aws_ipv6_con }}' ethtool.feature-tso off ethtool.feature-gro off ethtool.feature-gso off"
|
|
when:
|
|
- offloading.rc == 0
|
|
- ansible_distribution == 'Fedora'
|
|
tags:
|
|
- config
|
|
|
|
- name: check we have the needed ipv6
|
|
shell: "nmcli con show '{{ aws_ipv6_con }}' | grep ipv6.addresses | grep {{ aws_ipv6_addr }}"
|
|
register: ipv6_config_check
|
|
failed_when: false
|
|
changed_when: ipv6_config_check.rc == 1
|
|
when:
|
|
- aws_ipv6_addr is defined
|
|
tags: ipv6_config
|
|
|
|
- name: setup ipv6 networking
|
|
shell: |
|
|
nmcli con modify '{{ aws_ipv6_con }}' ipv6.method auto ipv6.may-fail yes ipv6.never-default no ipv6.addresses '{{ aws_ipv6_addr }}'
|
|
nmcli con up '{{ aws_ipv6_con }}'
|
|
when:
|
|
- aws_ipv6_addr is defined
|
|
- ipv6_config_check.changed
|
|
tags: ipv6_config
|
|
|
|
- name: install nrpe checks
|
|
template: src=copr_nrpe.cfg
|
|
dest=/etc/nrpe.d/copr_nrpe.cfg
|
|
notify:
|
|
- restart nrpe
|
|
tags:
|
|
- nagios_client
|
|
- copr_cdn
|
|
- copr_ping
|
|
|
|
# - name: enable and run logrotate service
|
|
# service: name="logrotate" state=started
|