- name: Make the required directories for Maps file: path: "{{ item }}" state: directory mode: '0755' with_items: - "{{ vector_map_path }}/test-page/assets" # /library/www/osm-vector-maps - "{{ vector_map_path }}/maplist/assets" - "{{ vector_map_path }}/viewer/assets" - "{{ vector_map_path }}/viewer/tiles" - "{{ vector_map_path }}/installer" - name: Copy the map catalog to /etc/iiab/map-catalog.json get_url: url: "{{ map_catalog_url }}/map-catalog.json" # http://download.iiab.io/content/OSM/vector-tiles dest: "{{ iiab_etc_path }}" # /etc/iiab - name: Download map catalog {{ iiab_map_url }}/assets/regions.json to {{ iiab_etc_path }} get_url: url: "{{ iiab_map_url }}/assets/regions.json" # http://download.iiab.io/content/OSM/vector-tiles/maplist/hidden dest: "{{ iiab_etc_path }}" - name: Check for existence of cities database stat: path: "{{ vector_map_path }}/cities1000.sqlite" register: cities_installed - name: Fetch the city database get_url: url: "{{ iiab_map_url }}/regional-resources/cities1000.sqlite" dest: "{{ vector_map_path }}/viewer/cities1000.sqlite" when: not cities_installed.stat.exists - name: Symlink {{ doc_root }}/common/assets/map-catalog.json -> /etc/iiab/map-catalog.json file: src: /etc/iiab/map-catalog.json path: "{{ doc_root }}/common/assets/map-catalog.json" # /library/www/html state: link - name: Symlink {{ vector_map_path }}/test-page/assets/map-catalog.json -> /etc/iiab/map-catalog.json file: src: /etc/iiab/map-catalog.json path: "{{ vector_map_path }}/test-page/assets/map-catalog.json" state: link - name: Symlink {{ vector_map_path }}/maplist/assets/regions.json -> /etc/iiab/regions.json file: src: /etc/iiab/regions.json path: "{{ vector_map_path }}/maplist/assets/regions.json" state: link - name: Download the JavaScript bundle with OpenLayers (test-page-bundle.js) for test page http://box/maps/maplist # At this point, fetches from github.com/georgejhunt/maps from test branch get_url: url: "{{ item }}" dest: "{{ vector_map_path }}/test-page/" with_items: - "{{ osm_repo_url }}/{{ maps_branch }}/osm-source/pages/test-page/build/test-page-bundle.js" # https://raw.githubusercontent.com/iiab/maps / master - "{{ osm_repo_url }}/{{ maps_branch }}/osm-source/pages/test-page/build/index.html" - name: Fetch the javascript bundle with openlayers for Viewer page # At this point, fetches from github.com/iiab/maps from {{ maps_branch }} branch get_url: url: "{{ osm_repo_url }}/{{ maps_branch }}/osm-source/pages/viewer/build/{{ item }}" dest: "{{ vector_map_path }}/viewer/" with_items: - index.html - viewer-bundle.js - viewer-bundle.js.map - name: Get the helper files for viewer get_url: url: "{{ osm_repo_url }}/{{ maps_branch }}/osm-source/pages/viewer/{{ item }}" dest: "{{ vector_map_path }}/viewer/" with_items: - mbtileinfo.php - popup.css - searchapi.php - tileserver.php - name: Copy the map installer mbtiles get_url: url: "{{ map_catalog_url }}/planet_z0-z6_2019.mbtiles" dest: "{{ vector_map_path }}/installer/" - name: Symlink {{ vector_map_path }}/installer/detail.mbtiles -> {{ vector_map_path }}/installer/planet_z0-z6_2019.mbtiles file: src: "{{ vector_map_path }}/installer/planet_z0-z6_2019.mbtiles" path: "{{ vector_map_path }}/installer/detail.mbtiles" state: link - name: Symlink {{ vector_map_path }}/viewer/tiles/planet_z0-z6_2019.mbtiles -> {{ vector_map_path }}/installer/planet_z0-z6_2019.mbtiles file: src: "{{ vector_map_path }}/installer/planet_z0-z6_2019.mbtiles" path: "{{ vector_map_path }}/viewer/tiles/planet_z0-z6_2019.mbtiles" state: link - name: Copy the map abbreviated satellite images get_url: url: "{{ map_catalog_url }}/satellite_z0-z6_v3.mbtiles" dest: "{{ vector_map_path }}/viewer/tiles/satellite_z0-z6_v3.mbtiles" - name: Fetch the javascript bundle for map installer get_url: url: "{{ osm_repo_url }}/{{ maps_branch }}/osm-source/pages/installer/build/{{ item }}" dest: "{{ vector_map_path }}/installer/" with_items: - index.html - installer-bundle.js - name: Fetch the action routines for installer get_url: url: "{{ osm_repo_url }}/{{ maps_branch }}/osm-source/pages/installer/{{ item }}" dest: "{{ vector_map_path }}/installer/" with_items: - map.css - style-osm.json - installer-functions.js - tileserver.php # the following was changed to grab from the iiab/maps repo - name: Copy the common assets for the general purpose map viewer get_url: url: "{{ osm_repo_url }}/{{ maps_branch }}/osm-source/pages/viewer/assets/{{ item }}" dest: "{{ vector_map_path }}/viewer/assets" with_items: - bboxes.geojson - center.png - countries.json - fonts.css - ol-layerswitcher.css - ol-contextmenu.css - pin_drop.png - sprite@2x.json - sprite@2x.png - sprite.json - sprite.png - style-cdn.json - style-osm.json - style-sat.json - view_list.png - name: Symlink {{ vector_map_path }}/maplist/assets/bboxes.geojson -> {{ vector_map_path }}/viewer/assets/bboxes.geojson for Admin Console file: src: "{{ vector_map_path }}/viewer/assets/bboxes.geojson" path: "{{ vector_map_path }}/maplist/assets/bboxes.geojson" state: link force: True - name: Symlink {{ vector_map_path }}/maplist/assets/countries.json -> {{ vector_map_path }}/viewer/assets/countries.json for Admin Console file: src: "{{ vector_map_path }}/viewer/assets/countries.json" path: "{{ vector_map_path }}/maplist/assets/countries.json" state: link force: True - name: Copy the fonts for the general purpose map viewer copy: src: "{{ item }}" dest: "{{ doc_root }}/common/fonts/" mode: 0644 owner: root group: root with_fileglob: - fonts/* - name: Copy the redirect to the test page get_url: url: "{{ osm_repo_url }}/{{ maps_branch }}/osm-source/pages/viewer/installer-index.redirect" dest: "{{ vector_map_path }}/maplist/index.html" force: yes - name: "Install packages for map installation: python3-wget, php{{ php_version }}-sqlite3, python3-geojson, python3-pil" package: state: present name: - python3-wget - "php{{ php_version }}-sqlite3" - python3-geojson - python3-pil - name: Copy 6 scripts to /usr/bin, for downloading tiles get_url: url: "{{ osm_repo_url }}/{{ maps_branch }}/osm-source/pages/viewer/scripts/{{ item }}" dest: /usr/bin/ mode: 0755 with_items: - iiab-install-map-region - iiab-extend-sat.py - iiab-summarize.sh - iiab-maps-finish.py - iiab-make-init.py - iiab-update-map # RECORD OSM Vector Maps AS INSTALLED - name: "Set 'osm_vector_maps_installed: True'" set_fact: osm_vector_maps_installed: True - name: "Add 'osm_vector_maps_installed: True' to {{ iiab_state_file }}" lineinfile: path: "{{ iiab_state_file }}" # /etc/iiab/iiab_state.yml regexp: '^osm_vector_maps_installed' line: 'osm_vector_maps_installed: True'