diff options
Diffstat (limited to 'dracut-initramfs-builder/tasks/main.yml')
-rw-r--r-- | dracut-initramfs-builder/tasks/main.yml | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/dracut-initramfs-builder/tasks/main.yml b/dracut-initramfs-builder/tasks/main.yml new file mode 100644 index 0000000..9cb25be --- /dev/null +++ b/dracut-initramfs-builder/tasks/main.yml @@ -0,0 +1,37 @@ +--- +- include: tasks/distro.yml + +- name: Install dependencies for OpenSLX dracut module + package: name={{ item }} state=installed + with_items: "{{ pkgnames }}" + +- name: Checkout repository of OpenSLX dracut module + git: + repo: "{{ gitsource }}" + dest: "{{ gittarget }}" + depth: 1 +- name: Hack: fix dnbd3 blk.h for CentOS (one day this should get fixed in dnbd3 :)) + replace: + dest: "{{ gittarget }}/builder/modules.d/dnbd3-rootfs/scripts/build.sh" + regexp: 'make -j4 dnbd3 dnbd3-client' + replace: 'sed -i "s/KERNEL_VERSION.*/KERNEL_VERSION\(3, 10, 0\)/g" blk.h && make -j4 dnbd3 dnbd3-client' + backup: yes + when: + - ansible_distribution == "CentOS" +- name: Build initramfs with dracut + shell: "{{ gittarget }}/builder/build-initramfs.sh -s -d -p {{ gittarget }}/initramfs" + args: + creates: "{{ gittarget }}/initramfs" +- name: Fetch built initramfs and kernel (+ hack for weird /@ prefix of BOOT_IMAGE) + fetch: + src: "{{ item }}" + dest: "{{ playbook_dir }}/boot_files/" + fail_on_missing: yes + flat: yes + with_items: + - "{{ gittarget }}/initramfs" + - "{{ ansible_cmdline.BOOT_IMAGE | regex_replace('^/@(/boot/.*)+$', '\\1') }}" +- name: Cleanup + file: + path: "{{ gittarget }}" + state: absent |