CSIT-429: Add hugepages configuration to ansible-host
[csit.git] / resources / tools / testbed-setup / playbooks / 01-host-setup.yaml
1 ---
2 - hosts: all
3   remote_user: testuser
4   sudo: yes
5   tasks:
6   - name: copy sudoers file
7     copy: src=files/sudoers dest=/etc/sudoers.d/testuser owner=root group=root mode=660
8   - name: copy hosts file
9     template: src=files/hosts dest=/etc/hosts owner=root group=root mode=644
10   - name: copy hostname file
11     template: src=files/hostname dest=/etc/hostname owner=root group=root mode=644
12   - name: interfaces file
13     template: src=files/interfaces dest=/etc/network/interfaces owner=root group=root mode=644
14   - name: copy ttyS0 file
15     template: src=files/ttyS0 dest=/etc/init/ttyS0.conf owner=root group=root mode=644
16   - name: start ttyS0
17     service: name=ttyS0 state=started
18   - name: copy grub file
19     template: src=files/grub dest=/etc/default/grub owner=root group=root mode=644
20   - name: update grub
21     command: update-grub
22   - name: copy apt sources file
23     template: src=files/apt-sources.list dest=/etc/apt/sources.list
24   - name: update repositories
25     apt: update_cache=yes
26   - name: install git
27     apt: name=git state=present
28   - name: install crudini
29     apt: name=crudini state=present
30   - name: install expect
31     apt: name=expect state=present
32 - hosts: virl
33   remote_user: testuser
34   sudo: yes
35   tasks:
36   - name: Add VIRL user
37     user: name=virl shell=/bin/bash comment="VIRL user" password="$6$mJPlK5FKLar6$xxXPP0LRhC7T1yhHtym18Z3nKZweTtfTxzi1WpvVHJ0U/Em1UWcHqfMhRApFp0rsY9jHRuL6FfeFbKPN..uDK."
38   - name: Add VIRL user to sudoers
39     copy: src=files/sudoers_virl dest=/etc/sudoers.d/virl owner=root group=root mode=660
40   - name: Set VIRL user authorized key
41     authorized_key: user=virl key="{{ lookup('file', '/home/testuser/.ssh/id_rsa.pub') }}"
42   - name: install qemu (as a workaround)
43     apt: name=qemu-system-x86 state=present
44 - hosts: tg:sut
45   remote_user: testuser
46   sudo: yes
47   tasks:
48   - name: Install python-dev
49     apt: name=python-dev state=present
50   - name: Install python-virtualenv
51     apt: name=python-virtualenv state=present
52   - name: Install cpufrequtils
53     apt: name=cpufrequtils state=present
54   - name: Set cpufrequtils defaults
55     copy: src=files/cpufrequtils dest=/etc/default/cpufrequtils owner=root group=root mode=0644
56   - name: Disable IRQ load balancing
57     copy: src=files/irqbalance dest=/etc/default/irqbalance owner=root group=root mode=0644
58   - name: Disable ondemand
59     service: name=ondemand enabled=no
60   - name: Install cgroup-support
61     apt: name=cgroup-bin state=present
62   - name: Install zlib1g-dev
63     apt: name=zlib1g-dev state=present
64   - name: Copy Python requirements file
65     copy: src=files/requirements.txt dest=/tmp/requirements.txt
66   - name: Install PIP requirements
67     pip: requirements=/tmp/requirements.txt
68 - hosts: tg
69   remote_user: testuser
70   sudo: yes
71   tasks:
72   - name: Install unzip
73     apt: name=unzip state=present
74   - name: pstate parameter
75     lineinfile: dest=/etc/default/grub regexp=^GRUB_CMDLINE_LINUX= line=GRUB_CMDLINE_LINUX="\"intel_pstate=disable\""
76   - name: update grub
77     command: update-grub
78 - hosts: sut
79   remote_user: testuser
80   sudo: yes
81   tasks:
82   - name: copy sysctl file
83     template: src=files/90-csit dest=/etc/sysctl.d/90-csit.conf owner=root group=root mode=644
84   - name: Install dkms
85     apt: name=dkms state=present
86   - name: isolcpus and pstate parameter
87     lineinfile: dest=/etc/default/grub regexp=^GRUB_CMDLINE_LINUX= line=GRUB_CMDLINE_LINUX="\"isolcpus={{ isolcpus }} nohz_full={{ nohz }} rcu_nocbs={{ rcu }} intel_pstate=disable\""
88   - name: update grub
89     command: update-grub
90   - name: Install pkg-config
91     apt: name=pkg-config state=present
92   - name: Install libglib2.0-dev
93     apt: name=libglib2.0-dev state=present
94   - name: Install autoconf
95     apt: name=autoconf state=present
96   - name: Install libtool
97     apt: name=libtool state=present