ソースを参照

Basic installation of meshviewer does now work. Mapserver has all necessary components. But mehsviewer is still not working

Till Klocke 9 年 前
コミット
a50fdf4c30

+ 3 - 0
host_vars/mapserver/host.yml

@@ -40,6 +40,9 @@ supernode_interfaces:
     - key: broadcast
       value: "{{supernode_local_ip|ipaddr('broadcast')}}"
 
+meshviewer_data_url: "https://192.168.77.29/data"
+meshviewer_site_name: Freifunk example
+
 mapserver_use_pregenerated_dh_params: true
 mapserver_dh_params: |
   -----BEGIN DH PARAMETERS-----

+ 1 - 0
roles/ff-supernode/tasks/debian.yml

@@ -11,6 +11,7 @@
   - wget
   - supervisor
   - ntp
+  - git
 
 - name: Install dependencies for ffrl tools
   apt: name={{item}}

+ 1 - 1
roles/ff-supernode/tasks/main.yml

@@ -30,7 +30,7 @@
   - pyroute2
 
 - name: Create install dir for ffrl tools
-  file: dest={{supernode_freifunk_tools_dir}} state= directory
+  file: dest={{supernode_freifunk_tools_dir}} state=directory
 
 - name: Clone ffrl tools
   git: repo={{supernode_freifunk_tools_repo}} dest={{supernode_freifunk_tools_dir}}

+ 1 - 0
roles/meshviewer/defaults/main.yml

@@ -3,6 +3,7 @@
 
 meshviewer_version: v3
 meshviewer_archive_name: "meshviewer-{{meshviewer_version}}.tar.gz"
+meshviewer_repo: https://github.com/tcatm/meshviewer.git
 meshviewer_download_url: "http://draic.info/meshviewer/{{meshviewer_archive_name}}"
 meshviewer_install_directory: /srv/meshviewer
 meshviewer_build_directory: /usr/src/meshviewer

+ 17 - 13
roles/meshviewer/tasks/main.yml

@@ -13,34 +13,38 @@
 - name: Create meshviewer build directory
   file: name={{meshviewer_build_directory}} state=directory
 
-- name: Download meshviewer
-  get_url: url={{meshviewer_download_url}} dest=/tmp/
-
-- name: Extract meshviewer source archive
-  unarchive: copy=false src=/tmp/{{meshviewer_archive_name}} dest={{meshviewer_build_directory}}
+- name: Clone meshviewer
+  register: meshviewer_cloned
+  git: repo={{meshviewer_repo}} dest={{meshviewer_build_directory}} version={{meshviewer_version}}
 
 - name: Install npm build dependencies
   command: npm install
+  when: meshviewer_cloned|changed
   register: meshviewer_npm_installed
   args:
-    chdir: "{{meshviewer_build_directory}}/meshviewer-{{meshviewer_version}}"
-    creates: "{{meshviewer_build_directory}}/meshviewer-{{meshviewer_version}}/node_modules"
+    chdir: "{{meshviewer_build_directory}}/"
+    creates: "{{meshviewer_build_directory}}/node_modules"
 
 - name: Install bower and grunt
   when: meshviewer_npm_installed|changed
   command: npm install bower grunt-cli
+  args:
+    chdir: "{{meshviewer_build_directory}}"
 
 - name: Install frontend dependencies
   command: node_modules/.bin/bower --allow-root --config.interactive=false install
   args:
-    chdir: "{{meshviewer_build_directory}}/meshviewer-{{meshviewer_version}}"
-    creates: "{{meshviewer_build_directory}}/meshviewer-{{meshviewer_version}}/bower_components"
+    chdir: "{{meshviewer_build_directory}}/"
+    creates: "{{meshviewer_build_directory}}/bower_components"
 
 - name: Install build config
-  template: src=config.js.j2 dest="{{meshviewer_build_directory}}/meshviewer-{{meshviewer_version}}/config.js"
+  template: src=config.js.j2 dest="{{meshviewer_build_directory}}/config.js"
 
 - name: Build meshviewer
-  command:
+  command: node_modules/.bin/grunt
   args:
-    chdir: "{{meshviewer_build_directory}}/meshviewer-{{meshviewer_version}}"
-    creates: "{{meshviewer_build_directory}}/meshviewer-{{meshviewer_version}}/build"
+    chdir: "{{meshviewer_build_directory}}/"
+    creates: "{{meshviewer_build_directory}}/build"
+
+- name: Copy meshviewer into install directory
+  shell: cp -r {{meshviewer_build_directory}}/build/* {{meshviewer_install_directory}}