module.exports = { verifyAndInstall(){ return getTaskCheckExists(this.shellcmd, { ignorefailures: true })().then((exists) => { if(exists) { // return any(['git', ['config', '--global', '-l']].map(getshelltask)) return this.postinstallsteps.bind(this)() } return this.install(); }); }, acquireElevationState(__isElevated) { if (__isElevated === null) { return nodeShellExec("fsutil", ["dirty", "query", "C:"], { inherit: true // , shell: true , stdio: 'ignore' , env: process.env , title: `check privileged execution mode using "fsutil dirty query C:"` }).then((exitcode) => { console.log('Elevated') __isElevated = true; return true; }).catch(() => { __isElevated = false; console.log('Not Elevated'); return false; }); } else return Promise.resolve(__isElevated); }, }