1 - include: 00-fetch.yml
2 when: openwrt_imgbuilder_tarball is not defined
4 - name: Create temporary build directory
5 command: mktemp --tmpdir -d openwrt-{{ ansible_hostname }}.XXXXXX
9 openwrt_imgbuilder_dir: "{{ tmpdir.stdout }}"
10 openwrt_imgbuilder_files: "{{ tmpdir.stdout }}/files"
12 - name: Create the directories for mixins
17 - "{{ openwrt_imgbuilder_files }}"
18 - "{{ openwrt_mixin.files | map('dirname') | map('regex_replace', '^', openwrt_imgbuilder_files) | unique | list }}"
19 - "{{ openwrt_mixin.content | map('dirname') | map('regex_replace', '^', openwrt_imgbuilder_files) | unique | list }}"
21 - name: Copy mixins in place [1/2]
23 src: "{{ item.value }}"
24 dest: "{{ openwrt_imgbuilder_files }}/{{ item.key }}"
25 with_dict: "{{ openwrt_mixin.files }}"
27 label: "{{ item.key }}"
29 - name: Copy mixins in place [2/2]
31 content: "{{ item.value }}"
32 dest: "{{ openwrt_imgbuilder_files }}/{{ item.key }}"
33 with_dict: "{{ openwrt_mixin.content }}"
35 label: "{{ item.key }}"
40 # src: "{{ download_dir }}/{{ openwrt_tarball_name }}"
41 # dest: "{{ openwrt_imgbuilder_dir }}"
43 - name: Decompress the OpenWrt image builder
45 tar -xf "{{ download_dir }}/{{ openwrt_tarball_name }}"
46 -C "{{ openwrt_imgbuilder_dir }}"
48 # - include: 02-prepare.yml
50 - name: Create the output directory for built images
52 path: "{{ openwrt_output_dir }}"
57 {{ openwrt_packages_remove | map('regex_replace', '^', '-') | join(' ') }}
58 {{ openwrt_packages_add | join(' ') }}
59 {{ openwrt_packages_extra | join(' ') }}
61 - name: Build the OpenWrt image
63 make -C {{ openwrt_imgbuilder_dir }}/{{ openwrt_tarball_basename }} image
64 FILES="{{ openwrt_imgbuilder_files }}"
65 PACKAGES="{{ openwrt_packages }}"
66 BIN_DIR="{{ openwrt_output_dir }}"
67 {% if openwrt_extra_name is defined %} EXTRA_IMAGE_NAME="{{ openwrt_extra_name }}" {% endif %}
71 # - name: Delete the temporary build directory
73 # path: "{{ openwrt_imgbuilder_dir }}"