--- - 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