-- include: 00-fetch.yml
+---
+- include: fetch.yml
when: openwrt_imgbuilder_tarball is not defined
-- name: Create temporary build directory
- command: mktemp -d openwrt-{{ ansible_hostname }}.XXXXXX
- register: tmpdir
-
-- set_fact:
- openwrt_imgbuilder_dir: "{{ tmpdir.stdout }}"
- openwrt_imgbuilder_files: "{{ tmpdir.stdout }}/files"
-
-- name: Create the directory for slipstreamed files
- file:
- path: "{{ openwrt_imgbuilder_files }}"
- state: directory
-
-
- block:
-# - unarchive:
-# copy: False
-# src: "{{ download_dir }}/{{ openwrt_tarball_name }}"
-# dest: "{{ openwrt_imgbuilder_dir }}"
-
- - name: Decompress the OpenWrt image builder
- command: >-
- tar -xf "{{ download_dir }}/{{ openwrt_tarball_name }}"
- -C "{{ openwrt_imgbuilder_dir }}"
-
-# - include: 02-prepare.yml
+ - include: prepare.yml
- name: Create the output directory for built images
file:
path: "{{ openwrt_output_dir }}"
state: directory
+ - set_fact:
+ openwrt_packages: >-
+ {{ openwrt_packages_remove | map('regex_replace', '^', '-') | join(' ') }}
+ {{ openwrt_packages_add | join(' ') }}
+ {{ openwrt_packages_extra | join(' ') }}
+
- name: Build the OpenWrt image
- shell: >-
+ command: >-
make -C {{ openwrt_imgbuilder_dir }}/{{ openwrt_tarball_basename }} image
-
FILES="{{ openwrt_imgbuilder_files }}"
-
- PACKAGES="
- {% for x in openwrt_packages_remove %}-{{x}} {% endfor %}
- {% for x in openwrt_packages_add %} {{x}} {% endfor %}
- {% for x in openwrt_packages_extra %} {{x}} {% endfor %}
- "
- BIN_DIR="{{ openwrt_output_dir }}"
-
- {% if openwrt_extra_name is defined %}
- EXTRA_IMAGE_NAME="{{ openwrt_extra_name }}"
- {% endif %}
-
+ PACKAGES="{{ openwrt_packages }}"
+ {% if openwrt_extra_name is defined %} EXTRA_IMAGE_NAME="{{ openwrt_extra_name }}" {% endif %}
+
+ - name: Copy newly built OpenWrt image
+ with_items: "{{ openwrt_output_image_suffixes }}"
+ copy:
+ src: "{{ openwrt_imgbuilder_dir }}/{{ openwrt_tarball_basename }}/bin/targets/{{ openwrt_arch }}/{{ openwrt_target }}/{{ openwrt_output_image_name_base }}-{{ item }}"
+ dest: "{{ openwrt_output_dir }}"
always:
- name: Delete the temporary build directory