Merge pull request #5799 from gabrielbazan7/fix/apply

fix apply on windows os
This commit is contained in:
Javier Donadío 2017-03-23 15:09:56 -03:00 committed by GitHub
commit 7ffc66d4a4

View file

@ -23,8 +23,6 @@ var MakefileHeader = "# PLEASE! Do not edit this file directly \n# Modify
var fs = require('fs-extra'); var fs = require('fs-extra');
var path = require('path'); var path = require('path');
var configBlob = fs.readFileSync(configDir + '/appConfig.json', 'utf8'); var configBlob = fs.readFileSync(configDir + '/appConfig.json', 'utf8');
var config = JSON.parse(configBlob, 'utf8'); var config = JSON.parse(configBlob, 'utf8');
@ -60,13 +58,13 @@ Object.keys(templates).forEach(function(k) {
process.exit(1); process.exit(1);
} }
if(k === 'config-template.xml'){ if (k === 'config-template.xml') {
k = 'config.xml'; k = 'config.xml';
} else if (k === 'package-template.json') { } else if (k === 'package-template.json') {
k = 'package.json'; k = 'package.json';
} }
if (!fs.existsSync('../' + targetDir)){ if (!fs.existsSync('../' + targetDir)) {
fs.mkdirSync('../' + targetDir); fs.mkdirSync('../' + targetDir);
} }
fs.writeFileSync('../' + targetDir + k, content, 'utf8'); fs.writeFileSync('../' + targetDir + k, content, 'utf8');
@ -83,9 +81,9 @@ try {
var confName = configDir.toUpperCase(); var confName = configDir.toUpperCase();
var externalServicesConf = confName + '_EXTERNAL_SERVICES_CONFIG_LOCATION'; var externalServicesConf = confName + '_EXTERNAL_SERVICES_CONFIG_LOCATION';
console.log('Looking for ' + externalServicesConf + '...'); console.log('Looking for ' + externalServicesConf + '...');
if(typeof process.env[externalServicesConf] !== 'undefined') { if (typeof process.env[externalServicesConf] !== 'undefined') {
var location = process.env[externalServicesConf] var location = process.env[externalServicesConf]
if(location.charAt(0) === '~') { if (location.charAt(0) === '~') {
location = location.replace(/^\~/, process.env.HOME || process.env.USERPROFILE); location = location.replace(/^\~/, process.env.HOME || process.env.USERPROFILE);
} }
console.log('Found at: ' + location); console.log('Found at: ' + location);
@ -94,50 +92,24 @@ try {
} else { } else {
throw externalServicesConf + ' environment variable not set.'; throw externalServicesConf + ' environment variable not set.';
} }
} catch(err) { } catch (err) {
console.log(err); console.log(err);
externalServices = '{}'; externalServices = '{}';
console.log('External services not configured'); console.log('External services not configured');
} }
fs.writeFileSync('../externalServices.json', externalServices, 'utf8'); fs.writeFileSync('../externalServices.json', externalServices, 'utf8');
function copyDir(from, to, cb) { function copyDir(from, to) {
console.log('Copying dir ' + from + ' to ' + to); console.log('Copying dir ' + from + ' to ' + to);
if (fs.existsSync(to)) fs.removeSync(to); // remove previous app directory if (fs.existsSync(to)) fs.removeSync(to); // remove previous app directory
if (!fs.existsSync(from)) return; // nothing to do if (!fs.existsSync(from)) return; // nothing to do
var files = []; fs.copySync(from, to);
fs.walk(from)
.on('data', function(item) {
if ((item.stats["mode"] & 0x4000)) {
var tmp = item.path + '/';
var l = tmp.length - from.length;
if (tmp.indexOf(from) == l) return; // #same dir
}
if (item.path.indexOf('DS_Store') >= 0) return;
if (!files.includes(path.dirname(item.path))) {
files.push(item.path);
}
})
.on('end', function() {
files.forEach(function(i) {
console.log(' # ' + i);
fs.copySync(i, to + path.basename(i));
});
return cb();
})
} }
// Push Notification // Push Notification
fs.copySync(configDir + '/GoogleService-Info.plist', '../GoogleService-Info.plist'); fs.copySync(configDir + '/GoogleService-Info.plist', '../GoogleService-Info.plist');
fs.copySync(configDir + '/google-services.json', '../google-services.json'); fs.copySync(configDir + '/google-services.json', '../google-services.json');
copyDir(configDir + '/img/', '../www/img/app/', function() { copyDir(configDir + '/img', '../www/img/app');
copyDir(configDir + '/sass/', '../src/sass/app/', function() { copyDir(configDir + '/sass', '../src/sass/app');
console.log("apply.js finished. \n\n"); console.log("apply.js finished. \n\n");
});
});