2 - include: 00-fetch.yml
3 when: openwrt_imgbuilder_tarball is not defined
5 - name: Create temporary build directory
6 command: mktemp --tmpdir -d openwrt-{{ ansible_hostname }}.XXXXXX
10 openwrt_imgbuilder_dir: "{{ tmpdir.stdout }}"
11 openwrt_imgbuilder_files: "{{ tmpdir.stdout }}/files"
13 - name: Create the directories for mixins
18 - "{{ openwrt_imgbuilder_files }}"
19 - "{{ openwrt_mixin.files | map('dirname') | map('regex_replace', '^', openwrt_imgbuilder_files) | unique | list }}"
20 - "{{ openwrt_mixin.content | map('dirname') | map('regex_replace', '^', openwrt_imgbuilder_files) | unique | list }}"
22 - name: Copy mixins in place [1/2]
24 src: "{{ item.value }}"
25 dest: "{{ openwrt_imgbuilder_files }}/{{ item.key }}"
26 with_dict: "{{ openwrt_mixin.files }}"
28 label: "{{ item.key }}"
30 - name: Copy mixins in place [2/2]
32 content: "{{ item.value }}"
33 dest: "{{ openwrt_imgbuilder_files }}/{{ item.key }}"
34 with_dict: "{{ openwrt_mixin.content }}"
36 label: "{{ item.key }}"
41 # src: "{{ openwrt_download_dir }}/{{ openwrt_tarball_name }}"
42 # dest: "{{ openwrt_imgbuilder_dir }}"
44 - name: Decompress the OpenWrt image builder
46 tar -xf "{{ openwrt_download_dir }}/{{ openwrt_tarball_name }}"
47 -C "{{ openwrt_imgbuilder_dir }}"
49 # - include: 02-prepare.yml
51 - name: Create the output directory for built images
53 path: "{{ openwrt_output_dir }}"
58 {{ openwrt_packages_remove | map('regex_replace', '^', '-') | join(' ') }}
59 {{ openwrt_packages_add | join(' ') }}
60 {{ openwrt_packages_extra | join(' ') }}
62 - name: Build the OpenWrt image
64 make -C {{ openwrt_imgbuilder_dir }}/{{ openwrt_tarball_basename }} image
65 FILES="{{ openwrt_imgbuilder_files }}"
66 PACKAGES="{{ openwrt_packages }}"
67 BIN_DIR="{{ openwrt_output_dir }}"
68 {% if openwrt_extra_name is defined %} EXTRA_IMAGE_NAME="{{ openwrt_extra_name }}" {% endif %}
72 # - name: Delete the temporary build directory
74 # path: "{{ openwrt_imgbuilder_dir }}"