fixed renaming of gnocci host_vars directories
[noc.git] / ansible / roles / openwrt-image / tasks / main.yml
index a7641c2..1781d9e 100644 (file)
@@ -1,55 +1,35 @@
-- include: 00-fetch.yml
+---
+- include: fetch.yml
+  run_once: true
   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
-
+          {% if openwrt_profile is defined %}PROFILE="{{ openwrt_profile }}" {% endif %}
           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