|
|
@@ -633,7 +633,7 @@ var op = { |
|
|
|
// Reset the whole installation pertaining to this elxr folder. |
|
|
|
|
|
|
|
} |
|
|
|
, 'add': (remotename, url, branch) => { |
|
|
|
, 'remote add': (args) => { |
|
|
|
// PB : TODO -- set-upstream-to should be chosen and intentionally switched. Coz we can have multiple upstream remotes. |
|
|
|
// Also each upstream remote may need to have is own branch to switch to. We therefore need a branch nomenclature |
|
|
|
// That explicitly has a remote name prefix. |
|
|
@@ -646,10 +646,20 @@ var op = { |
|
|
|
// probably git merge from all remotes... and relevant branches... |
|
|
|
// alias pushall='for i in `git remote`; do git push $i; done;' |
|
|
|
// alias pullall='for i in `git remote`; do git pull $i; done;' |
|
|
|
// args === processedArgs ? args = {} : null; |
|
|
|
var __args = { |
|
|
|
remotename : args.remotename|| processedArgs._[2] |
|
|
|
, url : args.url || processedArgs._[3] |
|
|
|
, branch : args.branch || processedArgs._[4] |
|
|
|
} |
|
|
|
|
|
|
|
var remotename = __args.remotename |
|
|
|
var url = __args.url |
|
|
|
var branch = __args.branch |
|
|
|
|
|
|
|
var pushable = processedArgs.pushable || false; |
|
|
|
remotename = remotename || processedArgs._[1] |
|
|
|
url = url || processedArgs._[2] |
|
|
|
branch = branch || processedArgs._[3] |
|
|
|
|
|
|
|
|
|
|
|
var serial_perform_git_add = (repo) => { |
|
|
|
var options = { cwd: instanceroot + '/' + repo } |
|
|
|
// console.log(repo) |
|
|
@@ -685,18 +695,18 @@ var op = { |
|
|
|
nodeShellExec('git', ['remote', 'get-url', remotename], { cwd: dir.name, stdio: 'ignore' }).then(() => { |
|
|
|
console.log('skipped : ' + dir.name + ', reason : A remote with same name already exists.') |
|
|
|
}) |
|
|
|
.catch((e) => { |
|
|
|
any(serial_perform_git_add(dir.name).map(x)) |
|
|
|
}) |
|
|
|
.catch((e) => { |
|
|
|
any(serial_perform_git_add(dir.name).map(x)) |
|
|
|
}) |
|
|
|
} |
|
|
|
// else console.log('Skipped : Not a Git Repo : ' + dir.name) |
|
|
|
}).catch((e) => { |
|
|
|
// console.log('Failed : ' + dir.name) |
|
|
|
console.log('Failed : ' + dir.name) |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
const { readdir } = require("fs").promises |
|
|
|
|
|
|
|
|
|
|
|
dirs(perform_git_add) |
|
|
|
} |
|
|
|
, 'remote remove': (args) => { |
|
|
@@ -2326,9 +2336,12 @@ acquireElevationState().then(() => { |
|
|
|
// PB : TODO -- processedArgs should already be part of selected. |
|
|
|
var instanceName = processedArgs._[1] = processedArgs._[1] || chessinstances.current_run.instanceName || selected.instanceName; |
|
|
|
var node_env = processedArgs.node_env = processedArgs.node_env || chessinstances.current_run.node_env || selected.node_env; |
|
|
|
chessinstances[instanceName] = chessinstances[instanceName] || {} |
|
|
|
chessinstances[instanceName][node_env] = chessinstances[instanceName][node_env] || selected; |
|
|
|
chessinstances['current_run'] = chessinstances[instanceName][selected.node_env] ? |
|
|
|
{ instanceName: instanceName, node_env: node_env } : chessinstances['current_run'] |
|
|
|
// chessinstances[chessinstances.current_run.instanceName] = chessinstances[chessinstances.current_run.instanceName] || {} |
|
|
|
{ instanceName: instanceName, node_env: node_env } : (chessinstances['current_run'] || { instanceName: instanceName, node_env: node_env }) |
|
|
|
|
|
|
|
// chessinstances[chessinstances.current_run.instanceName] = chessinstances[chessinstances.current_run.instanceName] || {} |
|
|
|
|
|
|
|
if(path.normalize(selected.root) !== path.normalize(chessinstances[instanceName][node_env].root)) { |
|
|
|
throw "Mismatched chessinstances config found " + chessinstances[instanceName][node_env].root + ' does not match ' + selected.root |