mirror of
https://github.com/iiab/iiab.git
synced 2025-02-15 04:32:11 +00:00
Merge pull request #851 from georgejhunt/izer
http://box/sugarizer fix on RPi & All OS's? (Sugarizer 1.0+)
This commit is contained in:
commit
4ae1be2fdd
3 changed files with 59 additions and 2 deletions
|
@ -160,6 +160,13 @@
|
||||||
# chdir: "{{ sugarizer_location }}/sugarizer/server"
|
# chdir: "{{ sugarizer_location }}/sugarizer/server"
|
||||||
# when: internet_available and is_F18 and not node_modules_exists
|
# when: internet_available and is_F18 and not node_modules_exists
|
||||||
|
|
||||||
|
# Add a nodejs express function that appends a prefix to urls
|
||||||
|
- name: Install path prefix proxy
|
||||||
|
command: npm install --allow-root --unsafe-perm=true path-prefix-proxy
|
||||||
|
args:
|
||||||
|
chdir: "{{ sugarizer_location }}/{{ sugarizer_server_version }}"
|
||||||
|
when: internet_available
|
||||||
|
|
||||||
# 5. PLACE CONFIG FILES
|
# 5. PLACE CONFIG FILES
|
||||||
|
|
||||||
- name: Configure sugarizer.service (systemd), sugarizer.conf (Apache) and sugarizer.ini
|
- name: Configure sugarizer.service (systemd), sugarizer.conf (Apache) and sugarizer.ini
|
||||||
|
@ -173,6 +180,7 @@
|
||||||
- { src: 'sugarizer.ini', dest: '{{ sugarizer_location }}/{{ sugarizer_server_version }}/env/sugarizer.ini', mode: '0644' }
|
- { src: 'sugarizer.ini', dest: '{{ sugarizer_location }}/{{ sugarizer_server_version }}/env/sugarizer.ini', mode: '0644' }
|
||||||
- { src: 'sugarizer.conf', dest: '/etc/apache2/sites-available', mode: '0644' }
|
- { src: 'sugarizer.conf', dest: '/etc/apache2/sites-available', mode: '0644' }
|
||||||
- { src: 'sugarizer.service.j2', dest: '/etc/systemd/system/sugarizer.service', mode: '0644' }
|
- { src: 'sugarizer.service.j2', dest: '/etc/systemd/system/sugarizer.service', mode: '0644' }
|
||||||
|
- { src: 'sugarizer.js', dest: '/opt/iiab/sugarizer-server', mode: '0644' }
|
||||||
|
|
||||||
- name: Create symlink for short URL http://box/sugarizer
|
- name: Create symlink for short URL http://box/sugarizer
|
||||||
file:
|
file:
|
||||||
|
@ -190,6 +198,12 @@
|
||||||
daemon_reload: yes
|
daemon_reload: yes
|
||||||
when: sugarizer_enabled
|
when: sugarizer_enabled
|
||||||
|
|
||||||
|
- name: Restart Apache so http://box/sugarizer works (not just http://box:8089)
|
||||||
|
systemd:
|
||||||
|
name: apache2
|
||||||
|
state: restarted
|
||||||
|
when: sugarizer_enabled
|
||||||
|
|
||||||
- name: 'Disable+stop systemd service if sugarizer_enabled: False'
|
- name: 'Disable+stop systemd service if sugarizer_enabled: False'
|
||||||
systemd:
|
systemd:
|
||||||
name: sugarizer
|
name: sugarizer
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
RewriteEngine on
|
ProxyPass /sugarizer http://localhost:8089/sugarizer
|
||||||
RewriteRule ^/sugarizer(.*)$ http://localhost:8089$1 [PT]
|
ProxyPassReverse /sugarizer http://localhost:8089/sugarizer
|
||||||
|
|
43
roles/sugarizer/templates/sugarizer.js
Normal file
43
roles/sugarizer/templates/sugarizer.js
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
// require files
|
||||||
|
var express = require('express'),
|
||||||
|
http = require('http'),
|
||||||
|
https = require('https'),
|
||||||
|
settings = require('./config/settings'),
|
||||||
|
common = require('./dashboard/helper/common');
|
||||||
|
ini = settings.load(),
|
||||||
|
app = express(),
|
||||||
|
server = null;
|
||||||
|
|
||||||
|
// init common
|
||||||
|
common.init(ini);
|
||||||
|
|
||||||
|
//configure app setting
|
||||||
|
require('./config/main')(app, ini);
|
||||||
|
|
||||||
|
// include api routes
|
||||||
|
require('./api/route')(app, ini);
|
||||||
|
|
||||||
|
// include dashboard routes
|
||||||
|
require('./dashboard/route')(app, ini);
|
||||||
|
|
||||||
|
// Handle https
|
||||||
|
if (ini.security.https) {
|
||||||
|
var credentials = common.loadCredentials(ini);
|
||||||
|
if (!credentials) {
|
||||||
|
console.log("Error reading HTTPS credentials");
|
||||||
|
process.exit(-1);
|
||||||
|
}
|
||||||
|
server = https.createServer(credentials, app);
|
||||||
|
} else {
|
||||||
|
server = http.createServer(app);
|
||||||
|
}
|
||||||
|
|
||||||
|
var pathPrefix = '/sugarizer';
|
||||||
|
app.use(pathPrefix, require('path-prefix-proxy')(pathPrefix));
|
||||||
|
|
||||||
|
// Start listening
|
||||||
|
server.listen(ini.web.port,"0.0.0.0");
|
||||||
|
console.log("Sugarizer Server is listening on"+(ini.security.https ? " secure":"")+" port " + ini.web.port + "...");
|
||||||
|
|
||||||
|
//export app for testing
|
||||||
|
module.exports = app;
|
Loading…
Reference in a new issue