Merge pull request #39 from realraum/openwrt/roles-rename
[noc.git] / ansible / roles / openwrt / openwrt-image / tasks / main.yml
1 ---
2 - include: fetch.yml
3   run_once: true
4   when: openwrt_imgbuilder_tarball is not defined
5
6 - block:
7     - include: prepare.yml
8
9     - name: Create the output directory for built images
10       file:
11         path: "{{ openwrt_output_dir }}"
12         state: directory
13
14     - set_fact:
15         openwrt_packages: >-
16           {{ openwrt_packages_remove | map('regex_replace', '^', '-') | join(' ') }}
17           {{ openwrt_packages_add   | join(' ') }}
18           {{ openwrt_packages_extra | join(' ') }}
19
20     - name: Build the OpenWrt image
21       command: >-
22         make -C {{ openwrt_imgbuilder_dir }}/{{ openwrt_tarball_basename }} image
23           {% if openwrt_profile is defined %}PROFILE="{{ openwrt_profile }}" {% endif %}
24           FILES="{{ openwrt_imgbuilder_files }}"
25           PACKAGES="{{ openwrt_packages }}"
26           {% if openwrt_extra_name is defined %} EXTRA_IMAGE_NAME="{{ openwrt_extra_name }}" {% endif %}
27
28     - name: Copy newly built OpenWrt image
29       with_items: "{{ openwrt_output_image_suffixes }}"
30       copy:
31         src: "{{ openwrt_imgbuilder_dir }}/{{ openwrt_tarball_basename }}/bin/targets/{{ openwrt_arch }}/{{ openwrt_target }}/{{ openwrt_output_image_name_base }}-{{ item }}"
32         dest: "{{ openwrt_output_dir }}"
33
34   always:
35     - name: Delete the temporary build directory
36       file:
37         path: "{{ openwrt_imgbuilder_dir }}"
38         state: absent