|
|
|
|
|
|
|
|
if(existsSync(clonable)) { |
|
|
if(existsSync(clonable)) { |
|
|
console.log('pulling ' + clonable) |
|
|
console.log('pulling ' + clonable) |
|
|
nodeShellExec('git', ['pull'], { |
|
|
nodeShellExec('git', ['pull'], { |
|
|
inherit : true, shell: true |
|
|
|
|
|
, cwd : clonable |
|
|
|
|
|
, env: process.env |
|
|
|
|
|
|
|
|
// inherit : true, shell: true |
|
|
|
|
|
// , |
|
|
|
|
|
cwd : clonable |
|
|
|
|
|
// , env: process.env |
|
|
, title : `git pull ${clonable}` |
|
|
, title : `git pull ${clonable}` |
|
|
}).catch((e)=>{ console.error(e) }) |
|
|
}).catch((e)=>{ console.error(e) }) |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
console.log('cloning ' + clonable) |
|
|
console.log('cloning ' + clonable) |
|
|
nodeShellExec('git', ['clone', '//172.16.0.27/repos/' + clonable + '.git'], |
|
|
nodeShellExec('git', ['clone', '//172.16.0.27/repos/' + clonable + '.git'], |
|
|
{ |
|
|
{ |
|
|
inherit : true, shell: true |
|
|
|
|
|
, cwd : clonable |
|
|
|
|
|
, env: process.env |
|
|
|
|
|
, title : `git pull ${clonable}` |
|
|
|
|
|
|
|
|
// inherit : true, shell: true |
|
|
|
|
|
// , |
|
|
|
|
|
cwd : clonable |
|
|
|
|
|
// , env: process.env |
|
|
|
|
|
, title : `git clone ${'//172.16.0.27/repos/' + clonable + '.git'}` |
|
|
}).catch((e)=>{ console.error(e) }) |
|
|
}).catch((e)=>{ console.error(e) }) |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
|
|
|
|
|
|
// }; |
|
|
// }; |
|
|
// nodeShellExec('git', ['init'], { inherit : true}); |
|
|
// nodeShellExec('git', ['init'], { inherit : true}); |
|
|
if(0){ |
|
|
if(0){ |
|
|
|
|
|
// PB : TODO -- Special google chrome profile for tests etc. |
|
|
nodeShellExec('pwd', { inherit : true}); |
|
|
nodeShellExec('pwd', { inherit : true}); |
|
|
//$ "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory="Profile 1" http://localhost:4200/tests/index.html?grep=loopback |
|
|
//$ "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --profile-directory="Profile 1" http://localhost:4200/tests/index.html?grep=loopback |
|
|
nodeShellExec("C:/Program Files (x86)/Google/Chrome/Application/chrome.exe", [ |
|
|
nodeShellExec("C:/Program Files (x86)/Google/Chrome/Application/chrome.exe", [ |
|
|
|
|
|
|
|
|
const child = spawn(...arguments); |
|
|
const child = spawn(...arguments); |
|
|
|
|
|
|
|
|
return new Promise(function(resolve, reject){ |
|
|
return new Promise(function(resolve, reject){ |
|
|
|
|
|
|
|
|
|
|
|
var messages = []; // PB : TODO -- Explore stream for Task level aggregation to prevent interleaved messages from multiple tasks... |
|
|
|
|
|
|
|
|
// use child.stdout.setEncoding('utf8'); if you want text chunks |
|
|
// use child.stdout.setEncoding('utf8'); if you want text chunks |
|
|
child.stdout.setEncoding('utf8'); |
|
|
child.stdout.setEncoding('utf8'); |
|
|
child.stdout.on('data', (chunk) => console.log(chunk)); |
|
|
|
|
|
child.on('error', (chunk) => console.error(chunk)); |
|
|
|
|
|
|
|
|
child.stdout.on('data', (chunk) => { messages.push(chunk); /*console.log(chunk)*/}); |
|
|
|
|
|
child.on('error', (chunk) => { messages.push(chunk); /*console.error(chunk)*/ }); |
|
|
child.stderr.pipe(process.stderr); |
|
|
child.stderr.pipe(process.stderr); |
|
|
|
|
|
|
|
|
child.on('close', (code) => { |
|
|
child.on('close', (code) => { |
|
|
|
|
|
|
|
|
console.log(` ${args[2].title} exited with code ${code}`) |
|
|
console.log(` ${args[2].title} exited with code ${code}`) |
|
|
|
|
|
console.log(messages) |
|
|
if(code !== 0 ) return reject(code) |
|
|
if(code !== 0 ) return reject(code) |
|
|
resolve(true) |
|
|
resolve(true) |
|
|
}); |
|
|
}); |