# workaround for fact that auto create does not work on iiab_ini_file (/etc/iiab/iiab.ini)
- name: Create {{ iiab_ini_file }}
  file:
    path: "{{ iiab_ini_file }}"
    state: touch

- name: Run command 'dpkg --print-architecture' to identify OS architecture (CPU arch as revealed by ansible_architecture ~= ansible_machine is NOT enough!)
  command: dpkg --print-architecture
  register: dpkg_arch

- name: Run command 'dpkg --print-foreign-architectures' (secondary OS arch, if available)
  command: dpkg --print-foreign-architectures
  register: dpkg_foreign_arch

- name: Add 'location' variable values to {{ iiab_ini_file }}
  ini_file:
    path: "{{ iiab_ini_file }}"
    section: initial-location
    option: "{{ item.option }}"
    value: "{{ item.value | string }}"
  with_items:
    - option: iiab_base
      value: "{{ iiab_base }}"
    - option: iiab_dir
      value: "{{ iiab_dir }}"

- name: Add 'version' variable values to {{ iiab_ini_file }}
  ini_file:
    path: "{{ iiab_ini_file }}"
    section: initial-version
    option: "{{ item.option }}"
    value: "{{ item.value | string }}"
  with_items:
    - option: os_ver
      value: "{{ os_ver }}"
    - option: distribution
      value: "{{ ansible_facts['distribution'] }}"
    - option: arch
      value: "{{ ansible_architecture }}"
    - option: dpkg_arch
      value: "{{ dpkg_arch.stdout }}"
    - option: dpkg_foreign_arch
      value: "{{ dpkg_foreign_arch.stdout }}"
    - option: rpi_model
      value: "{{ rpi_model }}"
    - option: devicetree_model
      value: "{{ devicetree_model }}"
    - option: iiab_base_ver
      value: "{{ iiab_base_ver }}"
    - option: iiab_remote_url
      value: "{{ ansible_local.local_facts.iiab_remote_url }}"
    - option: iiab_branch
      value: "{{ ansible_local.local_facts.iiab_branch }}"
    - option: iiab_commit
      value: "{{ ansible_local.local_facts.iiab_commit }}"
    - option: iiab_recent_tag
      value: "{{ ansible_local.local_facts.iiab_recent_tag }}"
    - option: install_date
      value: "{{ ansible_date_time.iso8601 }}"
