feat(profiles): Cleanup IPv6 profiles
[csit.git] / fdio.infra.ansible / roles / vpp_device / tasks / main.yaml
1 ---
2 # file: tasks/main.yaml
3
4 - name: "Load Kernel Modules On Startup (vfio-pci)"
5   ansible.builtin.lineinfile:
6     path: "/etc/modules"
7     state: "present"
8     line: "{{ item }}"
9   with_items:
10     - "vfio-pci"
11   tags:
12     - load-kernel-modules
13
14 - name: "Disable IPv6 Router Advertisement"
15   ansible.builtin.sysctl:
16     name: "net.ipv6.conf.default.accept_ra"
17     value: "0"
18     state: "present"
19     sysctl_file: "/etc/sysctl.d/90-csit.conf"
20     reload: "yes"
21   tags:
22     - set-sysctl
23
24 - name: "Disable IPv6 MLDv1 interval"
25   ansible.builtin.sysctl:
26     name: "net.ipv6.conf.default.mldv1_unsolicited_report_interval"
27     value: "0"
28     state: "present"
29     sysctl_file: "/etc/sysctl.d/90-csit.conf"
30     reload: "yes"
31   tags:
32     - set-sysctl
33
34 - name: "Disable IPv6 MLDv2 interval"
35   ansible.builtin.sysctl:
36     name: "net.ipv6.conf.default.mldv2_unsolicited_report_interval"
37     value: "0"
38     state: "present"
39     sysctl_file: "/etc/sysctl.d/90-csit.conf"
40     reload: "yes"
41   tags:
42     - set-sysctl
43
44 - name: "Disable IPv6 Autoconf"
45   ansible.builtin.sysctl:
46     name: "net.ipv6.conf.default.autoconf"
47     value: "0"
48     state: "present"
49     sysctl_file: "/etc/sysctl.d/90-csit.conf"
50     reload: "yes"
51   tags:
52     - set-sysctl
53
54 - name: "Disable IPv6 MC Forwarding"
55   ansible.builtin.sysctl:
56     name: "net.ipv6.conf.default.mc_forwarding"
57     value: "0"
58     state: "present"
59     sysctl_file: "/etc/sysctl.d/90-csit.conf"
60     reload: "yes"
61   tags:
62     - set-sysctl
63
64 - name: "Disable IPv4 IGMPv2 interval"
65   ansible.builtin.sysctl:
66     name: "net.ipv4.conf.default.igmpv2_unsolicited_report_interval"
67     value: "0"
68     state: "present"
69     sysctl_file: "/etc/sysctl.d/90-csit.conf"
70     reload: "yes"
71   tags:
72     - set-sysctl
73
74 - name: "Disable IPv4 IGMPv3 interval"
75   ansible.builtin.sysctl:
76     name: "net.ipv4.conf.default.igmpv3_unsolicited_report_interval"
77     value: "0"
78     state: "present"
79     sysctl_file: "/etc/sysctl.d/90-csit.conf"
80     reload: "yes"
81   tags:
82     - set-sysctl
83
84 - name: "Copy csit-initialize-vfs.sh"
85   ansible.builtin.copy:
86     src: "files/csit-initialize-vfs.sh"
87     dest: "/usr/local/bin/"
88     owner: "root"
89     group: "root"
90     mode: 0744
91   tags:
92     - copy-vf-script
93
94 - name: "Copy csit-initialize-vfs-data.sh"
95   ansible.builtin.copy:
96     src: "files/{{ vfs_data_file }}"
97     dest: "/usr/local/bin/csit-initialize-vfs-data.sh"
98     owner: "root"
99     group: "root"
100     mode: 0744
101   tags: copy-vf-data-script
102   when:
103     - vfs_data_file is defined
104
105 - name: "Copy Default csit-initialize-vfs-data.sh"
106   ansible.builtin.copy:
107     src: "files/csit-initialize-vfs-default.sh"
108     dest: "/usr/local/bin/csit-initialize-vfs-data.sh"
109     owner: "root"
110     group: "root"
111     mode: 0744
112   tags: copy-vf-data-script
113   when:
114     - vfs_data_file is not defined
115
116 - name: "Start csit-initialize-vfs.service"
117   ansible.builtin.copy:
118     src: "files/csit-initialize-vfs.service"
119     dest: "/etc/systemd/system/"
120     owner: "root"
121     group: "root"
122     mode: 0644
123   notify:
124     - "Start csit-initialize-vfs.service"
125   tags:
126     - start-vf-service
127
128 - ansible.builtin.meta: "flush_handlers"
129
130 - name: "Set Hugepages In GRUB"
131   ansible.builtin.lineinfile:
132     path: "/etc/default/grub"
133     state: "present"
134     regexp: "^GRUB_CMDLINE_LINUX="
135     line: "GRUB_CMDLINE_LINUX=\"{% for key, value in grub.items() %}{% if value %}{{key}}={{value}} {% else %}{{key}} {% endif %}{% endfor %}\""
136   notify:
137     - "Update GRUB"
138   tags:
139     - set-grub