Merge "Remove unused methods in SampleVNF"
[yardstick.git] / ansible / roles / enable_hugepages_on_boot / tasks / manual_modify_grub.yml
1 # Copyright (c) 2017 Intel Corporation
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 #      http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14 ---
15 - name: find boot grub.cfg
16   find:
17     paths: /boot
18     file_type: file
19     patterns: 'grub*.cfg'
20     recurse: yes
21   register: grub_files
22
23 - name: check if hugepages are already enabled
24   command: "grep -o 'default_hugepagesz=' {{ item.path }}"
25   register: hugepage_enabled
26   ignore_errors: True
27   with_items: "{{ grub_files.files }}"
28
29 - name: add hugepages to grub manually because we can't run update-grub in chroot
30   replace:
31     dest: "{{ item.path }}"
32     regexp: '(linux\s+/boot/vmlinuz.*$)'
33     replace: '\1 default_hugepagesz={{ huge_pagesize_short[huge_pagesize_mb] }} hugepagesz={{ huge_pagesize_short[huge_pagesize_mb] }} hugepages={{ num_hugepages }}'
34   with_items: "{{ grub_files.files }}"
35   # we suppose consistent /boot/grub/grub.cfg files
36   when:  hugepage_enabled['results'][0].stdout == ""