Add script for building "tileserver-gl-light" package (#27)

This commit is contained in:
Petr Sloup 2016-08-06 18:37:17 +08:00
parent 8074cfb4c7
commit 8a7f44d4c2
3 changed files with 41 additions and 3 deletions

2
.gitignore vendored
View file

@ -1,3 +1,5 @@
node_modules
test_data
data
light
config.json

27
deploy-light.js Normal file
View file

@ -0,0 +1,27 @@
#!/usr/bin/env node
'use strict';
// SYNC THE `light` FOLDER
require('child_process').execSync('rsync -av --exclude="light" --exclude=".git" --exclude="node_modules" --delete . light', {
stdio: 'inherit'
});
// PATCH `package.json`
var fs = require('fs');
var packageJson = require('./package');
packageJson.name += '-light';
delete packageJson.dependencies['canvas'];
delete packageJson.dependencies['mapbox-gl-native'];
delete packageJson.dependencies['sharp'];
delete packageJson.devDependencies;
var str = JSON.stringify(packageJson, undefined, 2);
fs.writeFileSync('light/package.json', str);
// PUBLISH
require('child_process').execSync('npm publish light', {
stdio: 'inherit'
});

View file

@ -17,11 +17,16 @@ var base64url = require('base64url'),
var packageJson = require('../package'),
serve_font = require('./serve_font'),
serve_rendered = require('./serve_rendered'),
serve_rendered = null,
serve_style = require('./serve_style'),
serve_data = require('./serve_data'),
utils = require('./utils');
if (packageJson.name.slice(-6) !== '-light') {
// do not require `serve_rendered` in the light package
serve_rendered = require('./serve_rendered');
}
module.exports = function(opts, callback) {
console.log('Starting TileServer-GL v' + packageJson.version);
@ -100,8 +105,12 @@ module.exports = function(opts, callback) {
}));
}
if (item.serve_rendered !== false) {
app.use('/styles/' + id + '/',
serve_rendered(options, serving.rendered, item, id));
if (serve_rendered) {
app.use('/styles/' + id + '/',
serve_rendered(options, serving.rendered, item, id));
} else {
item.serve_rendered = false;
}
}
});