diff --git a/action.yml b/action.yml index 4a9b3fd..ce9317d 100644 --- a/action.yml +++ b/action.yml @@ -13,7 +13,7 @@ inputs: default: '' runs: using: 'node12' - main: 'lib/main.js' + main: 'dist/index.js' branding: icon: 'download' color: 'blue' diff --git a/dist/index.js b/dist/index.js new file mode 100644 index 0000000..bfcc789 --- /dev/null +++ b/dist/index.js @@ -0,0 +1 @@ +module.exports=function(e,t){"use strict";var r={};function __webpack_require__(t){if(r[t]){return r[t].exports}var n=r[t]={i:t,l:false,exports:{}};e[t].call(n.exports,n,n.exports,__webpack_require__);n.l=true;return n.exports}__webpack_require__.ab=__dirname+"/";function startup(){return __webpack_require__(131)}return startup()}({1:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,s){function fulfilled(e){try{step(n.next(e))}catch(e){s(e)}}function rejected(e){try{step(n["throw"](e))}catch(e){s(e)}}function step(e){e.done?i(e.value):new r(function(t){t(e.value)}).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())})};Object.defineProperty(t,"__esModule",{value:true});const i=r(129);const s=r(622);const o=r(669);const a=r(672);const c=o.promisify(i.exec);function cp(e,t,r={}){return n(this,void 0,void 0,function*(){const{force:n,recursive:i}=readCopyOptions(r);const o=(yield a.exists(t))?yield a.stat(t):null;if(o&&o.isFile()&&!n){return}const c=o&&o.isDirectory()?s.join(t,s.basename(e)):t;if(!(yield a.exists(e))){throw new Error(`no such file or directory: ${e}`)}const l=yield a.stat(e);if(l.isDirectory()){if(!i){throw new Error(`Failed to copy. ${e} is a directory, but tried to copy without recursive flag.`)}else{yield cpDirRecursive(e,c,0,n)}}else{if(s.relative(e,c)===""){throw new Error(`'${c}' and '${e}' are the same file`)}yield copyFile(e,c,n)}})}t.cp=cp;function mv(e,t,r={}){return n(this,void 0,void 0,function*(){if(yield a.exists(t)){let n=true;if(yield a.isDirectory(t)){t=s.join(t,s.basename(e));n=yield a.exists(t)}if(n){if(r.force==null||r.force){yield rmRF(t)}else{throw new Error("Destination already exists")}}}yield mkdirP(s.dirname(t));yield a.rename(e,t)})}t.mv=mv;function rmRF(e){return n(this,void 0,void 0,function*(){if(a.IS_WINDOWS){try{if(yield a.isDirectory(e,true)){yield c(`rd /s /q "${e}"`)}else{yield c(`del /f /a "${e}"`)}}catch(e){if(e.code!=="ENOENT")throw e}try{yield a.unlink(e)}catch(e){if(e.code!=="ENOENT")throw e}}else{let t=false;try{t=yield a.isDirectory(e)}catch(e){if(e.code!=="ENOENT")throw e;return}if(t){yield c(`rm -rf "${e}"`)}else{yield a.unlink(e)}}})}t.rmRF=rmRF;function mkdirP(e){return n(this,void 0,void 0,function*(){yield a.mkdirP(e)})}t.mkdirP=mkdirP;function which(e,t){return n(this,void 0,void 0,function*(){if(!e){throw new Error("parameter 'tool' is required")}if(t){const t=yield which(e,false);if(!t){if(a.IS_WINDOWS){throw new Error(`Unable to locate executable file: ${e}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.`)}else{throw new Error(`Unable to locate executable file: ${e}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`)}}}try{const t=[];if(a.IS_WINDOWS&&process.env.PATHEXT){for(const e of process.env.PATHEXT.split(s.delimiter)){if(e){t.push(e)}}}if(a.isRooted(e)){const r=yield a.tryGetExecutablePath(e,t);if(r){return r}return""}if(e.includes("/")||a.IS_WINDOWS&&e.includes("\\")){return""}const r=[];if(process.env.PATH){for(const e of process.env.PATH.split(s.delimiter)){if(e){r.push(e)}}}for(const n of r){const r=yield a.tryGetExecutablePath(n+s.sep+e,t);if(r){return r}}return""}catch(e){throw new Error(`which failed with message ${e.message}`)}})}t.which=which;function readCopyOptions(e){const t=e.force==null?true:e.force;const r=Boolean(e.recursive);return{force:t,recursive:r}}function cpDirRecursive(e,t,r,i){return n(this,void 0,void 0,function*(){if(r>=255)return;r++;yield mkdirP(t);const n=yield a.readdir(e);for(const s of n){const n=`${e}/${s}`;const o=`${t}/${s}`;const c=yield a.lstat(n);if(c.isDirectory()){yield cpDirRecursive(n,o,r,i)}else{yield copyFile(n,o,i)}}yield a.chmod(t,(yield a.stat(e)).mode)})}function copyFile(e,t,r){return n(this,void 0,void 0,function*(){if((yield a.lstat(e)).isSymbolicLink()){try{yield a.lstat(t);yield a.unlink(t)}catch(e){if(e.code==="EPERM"){yield a.chmod(t,"0666");yield a.unlink(t)}}const r=yield a.readlink(e);yield a.symlink(r,t,a.IS_WINDOWS?"junction":null)}else if(!(yield a.exists(t))||r){yield a.copyFile(e,t)}})}},9:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,s){function fulfilled(e){try{step(n.next(e))}catch(e){s(e)}}function rejected(e){try{step(n["throw"](e))}catch(e){s(e)}}function step(e){e.done?i(e.value):new r(function(t){t(e.value)}).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())})};Object.defineProperty(t,"__esModule",{value:true});const i=r(87);const s=r(614);const o=r(129);const a=process.platform==="win32";class ToolRunner extends s.EventEmitter{constructor(e,t,r){super();if(!e){throw new Error("Parameter 'toolPath' cannot be null or empty.")}this.toolPath=e;this.args=t||[];this.options=r||{}}_debug(e){if(this.options.listeners&&this.options.listeners.debug){this.options.listeners.debug(e)}}_getCommandString(e,t){const r=this._getSpawnFileName();const n=this._getSpawnArgs(e);let i=t?"":"[command]";if(a){if(this._isCmdFile()){i+=r;for(const e of n){i+=` ${e}`}}else if(e.windowsVerbatimArguments){i+=`"${r}"`;for(const e of n){i+=` ${e}`}}else{i+=this._windowsQuoteCmdArg(r);for(const e of n){i+=` ${this._windowsQuoteCmdArg(e)}`}}}else{i+=r;for(const e of n){i+=` ${e}`}}return i}_processLineBuffer(e,t,r){try{let n=t+e.toString();let s=n.indexOf(i.EOL);while(s>-1){const e=n.substring(0,s);r(e);n=n.substring(s+i.EOL.length);s=n.indexOf(i.EOL)}t=n}catch(e){this._debug(`error processing line. Failed with error ${e}`)}}_getSpawnFileName(){if(a){if(this._isCmdFile()){return process.env["COMSPEC"]||"cmd.exe"}}return this.toolPath}_getSpawnArgs(e){if(a){if(this._isCmdFile()){let t=`/D /S /C "${this._windowsQuoteCmdArg(this.toolPath)}`;for(const r of this.args){t+=" ";t+=e.windowsVerbatimArguments?r:this._windowsQuoteCmdArg(r)}t+='"';return[t]}}return this.args}_endsWith(e,t){return e.endsWith(t)}_isCmdFile(){const e=this.toolPath.toUpperCase();return this._endsWith(e,".CMD")||this._endsWith(e,".BAT")}_windowsQuoteCmdArg(e){if(!this._isCmdFile()){return this._uvQuoteCmdArg(e)}if(!e){return'""'}const t=[" ","\t","&","(",")","[","]","{","}","^","=",";","!","'","+",",","`","~","|","<",">",'"'];let r=false;for(const n of e){if(t.some(e=>e===n)){r=true;break}}if(!r){return e}let n='"';let i=true;for(let t=e.length;t>0;t--){n+=e[t-1];if(i&&e[t-1]==="\\"){n+="\\"}else if(e[t-1]==='"'){i=true;n+='"'}else{i=false}}n+='"';return n.split("").reverse().join("")}_uvQuoteCmdArg(e){if(!e){return'""'}if(!e.includes(" ")&&!e.includes("\t")&&!e.includes('"')){return e}if(!e.includes('"')&&!e.includes("\\")){return`"${e}"`}let t='"';let r=true;for(let n=e.length;n>0;n--){t+=e[n-1];if(r&&e[n-1]==="\\"){t+="\\"}else if(e[n-1]==='"'){r=true;t+="\\"}else{r=false}}t+='"';return t.split("").reverse().join("")}_cloneExecOptions(e){e=e||{};const t={cwd:e.cwd||process.cwd(),env:e.env||process.env,silent:e.silent||false,windowsVerbatimArguments:e.windowsVerbatimArguments||false,failOnStdErr:e.failOnStdErr||false,ignoreReturnCode:e.ignoreReturnCode||false,delay:e.delay||1e4};t.outStream=e.outStream||process.stdout;t.errStream=e.errStream||process.stderr;return t}_getSpawnOptions(e,t){e=e||{};const r={};r.cwd=e.cwd;r.env=e.env;r["windowsVerbatimArguments"]=e.windowsVerbatimArguments||this._isCmdFile();if(e.windowsVerbatimArguments){r.argv0=`"${t}"`}return r}exec(){return n(this,void 0,void 0,function*(){return new Promise((e,t)=>{this._debug(`exec tool: ${this.toolPath}`);this._debug("arguments:");for(const e of this.args){this._debug(` ${e}`)}const r=this._cloneExecOptions(this.options);if(!r.silent&&r.outStream){r.outStream.write(this._getCommandString(r)+i.EOL)}const n=new ExecState(r,this.toolPath);n.on("debug",e=>{this._debug(e)});const s=this._getSpawnFileName();const a=o.spawn(s,this._getSpawnArgs(r),this._getSpawnOptions(this.options,s));const c="";if(a.stdout){a.stdout.on("data",e=>{if(this.options.listeners&&this.options.listeners.stdout){this.options.listeners.stdout(e)}if(!r.silent&&r.outStream){r.outStream.write(e)}this._processLineBuffer(e,c,e=>{if(this.options.listeners&&this.options.listeners.stdline){this.options.listeners.stdline(e)}})})}const l="";if(a.stderr){a.stderr.on("data",e=>{n.processStderr=true;if(this.options.listeners&&this.options.listeners.stderr){this.options.listeners.stderr(e)}if(!r.silent&&r.errStream&&r.outStream){const t=r.failOnStdErr?r.errStream:r.outStream;t.write(e)}this._processLineBuffer(e,l,e=>{if(this.options.listeners&&this.options.listeners.errline){this.options.listeners.errline(e)}})})}a.on("error",e=>{n.processError=e.message;n.processExited=true;n.processClosed=true;n.CheckComplete()});a.on("exit",e=>{n.processExitCode=e;n.processExited=true;this._debug(`Exit code ${e} received from tool '${this.toolPath}'`);n.CheckComplete()});a.on("close",e=>{n.processExitCode=e;n.processExited=true;n.processClosed=true;this._debug(`STDIO streams have closed for tool '${this.toolPath}'`);n.CheckComplete()});n.on("done",(r,n)=>{if(c.length>0){this.emit("stdline",c)}if(l.length>0){this.emit("errline",l)}a.removeAllListeners();if(r){t(r)}else{e(n)}})})})}}t.ToolRunner=ToolRunner;function argStringToArray(e){const t=[];let r=false;let n=false;let i="";function append(e){if(n&&e!=='"'){i+="\\"}i+=e;n=false}for(let s=0;s0){t.push(i);i=""}continue}append(o)}if(i.length>0){t.push(i.trim())}return t}t.argStringToArray=argStringToArray;class ExecState extends s.EventEmitter{constructor(e,t){super();this.processClosed=false;this.processError="";this.processExitCode=0;this.processExited=false;this.processStderr=false;this.delay=1e4;this.done=false;this.timeout=null;if(!t){throw new Error("toolPath must not be empty")}this.options=e;this.toolPath=t;if(e.delay){this.delay=e.delay}}CheckComplete(){if(this.done){return}if(this.processClosed){this._setResult()}else if(this.processExited){this.timeout=setTimeout(ExecState.HandleTimeout,this.delay,this)}}_debug(e){this.emit("debug",e)}_setResult(){let e;if(this.processExited){if(this.processError){e=new Error(`There was an error when attempting to execute the process '${this.toolPath}'. This may indicate the process failed to start. Error: ${this.processError}`)}else if(this.processExitCode!==0&&!this.options.ignoreReturnCode){e=new Error(`The process '${this.toolPath}' failed with exit code ${this.processExitCode}`)}else if(this.processStderr&&this.options.failOnStdErr){e=new Error(`The process '${this.toolPath}' failed because one or more lines were written to the STDERR stream`)}}if(this.timeout){clearTimeout(this.timeout);this.timeout=null}this.done=true;this.emit("done",e,this.processExitCode)}static HandleTimeout(e){if(e.done){return}if(!e.processClosed&&e.processExited){const t=`The STDIO streams did not close within ${e.delay/1e3} seconds of the exit event from process '${e.toolPath}'. This may indicate a child process inherited the STDIO streams and has not yet exited.`;e._debug(t)}e._setResult()}}},16:function(e){e.exports=require("tls")},87:function(e){e.exports=require("os")},129:function(e){e.exports=require("child_process")},131:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,s){function fulfilled(e){try{step(n.next(e))}catch(e){s(e)}}function rejected(e){try{step(n["throw"](e))}catch(e){s(e)}}function step(e){e.done?i(e.value):new r(function(t){t(e.value)}).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())})};var i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var r in e)if(Object.hasOwnProperty.call(e,r))t[r]=e[r];t["default"]=e;return t};Object.defineProperty(t,"__esModule",{value:true});const s=i(r(470));const o=i(r(986));const a=i(r(203));function run(){return n(this,void 0,void 0,function*(){try{const e=s.getInput("rust-version");const t=s.getInput("components").split(",").map(e=>e.trim()).filter(e=>e.length>0);const r=s.getInput("targets").split(",").map(e=>e.trim()).filter(e=>e.length>0);if(e){yield a.install();yield o.exec("rustup",["toolchain","install",e,...t.length>0?["-c",...t]:[],...r.length>0?["-t",...r]:[]]);yield o.exec("rustup",["default",e])}}catch(e){s.setFailed(e.message)}})}run()},139:function(e,t,r){var n=r(417);e.exports=function nodeRNG(){return n.randomBytes(16)}},141:function(e,t,r){"use strict";var n=r(631);var i=r(16);var s=r(605);var o=r(211);var a=r(614);var c=r(357);var l=r(669);t.httpOverHttp=httpOverHttp;t.httpsOverHttp=httpsOverHttp;t.httpOverHttps=httpOverHttps;t.httpsOverHttps=httpsOverHttps;function httpOverHttp(e){var t=new TunnelingAgent(e);t.request=s.request;return t}function httpsOverHttp(e){var t=new TunnelingAgent(e);t.request=s.request;t.createSocket=createSecureSocket;return t}function httpOverHttps(e){var t=new TunnelingAgent(e);t.request=o.request;return t}function httpsOverHttps(e){var t=new TunnelingAgent(e);t.request=o.request;t.createSocket=createSecureSocket;return t}function TunnelingAgent(e){var t=this;t.options=e||{};t.proxyOptions=t.options.proxy||{};t.maxSockets=t.options.maxSockets||s.Agent.defaultMaxSockets;t.requests=[];t.sockets=[];t.on("free",function onFree(e,r,n,i){var s=toOptions(r,n,i);for(var o=0,a=t.requests.length;o=this.maxSockets){i.requests.push(s);return}i.createSocket(s,function(t){t.on("free",onFree);t.on("close",onCloseOrRemove);t.on("agentRemove",onCloseOrRemove);e.onSocket(t);function onFree(){i.emit("free",t,s)}function onCloseOrRemove(e){i.removeSocket(t);t.removeListener("free",onFree);t.removeListener("close",onCloseOrRemove);t.removeListener("agentRemove",onCloseOrRemove)}})};TunnelingAgent.prototype.createSocket=function createSocket(e,t){var r=this;var n={};r.sockets.push(n);var i=mergeOptions({},r.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:false});if(i.proxyAuth){i.headers=i.headers||{};i.headers["Proxy-Authorization"]="Basic "+new Buffer(i.proxyAuth).toString("base64")}u("making CONNECT request");var s=r.request(i);s.useChunkedEncodingByDefault=false;s.once("response",onResponse);s.once("upgrade",onUpgrade);s.once("connect",onConnect);s.once("error",onError);s.end();function onResponse(e){e.upgrade=true}function onUpgrade(e,t,r){process.nextTick(function(){onConnect(e,t,r)})}function onConnect(i,o,a){s.removeAllListeners();o.removeAllListeners();if(i.statusCode===200){c.equal(a.length,0);u("tunneling connection has established");r.sockets[r.sockets.indexOf(n)]=o;t(o)}else{u("tunneling socket could not be established, statusCode=%d",i.statusCode);var l=new Error("tunneling socket could not be established, "+"statusCode="+i.statusCode);l.code="ECONNRESET";e.request.emit("error",l);r.removeSocket(n)}}function onError(t){s.removeAllListeners();u("tunneling socket could not be established, cause=%s\n",t.message,t.stack);var i=new Error("tunneling socket could not be established, "+"cause="+t.message);i.code="ECONNRESET";e.request.emit("error",i);r.removeSocket(n)}};TunnelingAgent.prototype.removeSocket=function removeSocket(e){var t=this.sockets.indexOf(e);if(t===-1){return}this.sockets.splice(t,1);var r=this.requests.shift();if(r){this.createSocket(r,function(e){r.request.onSocket(e)})}};function createSecureSocket(e,t){var r=this;TunnelingAgent.prototype.createSocket.call(r,e,function(n){var s=e.request.getHeader("host");var o=mergeOptions({},r.options,{socket:n,servername:s?s.replace(/:.*$/,""):e.host});var a=i.connect(0,o);r.sockets[r.sockets.indexOf(n)]=a;t(a)})}function toOptions(e,t,r){if(typeof e==="string"){return{host:e,port:t,localAddress:r}}return e}function mergeOptions(e){for(var t=1,r=arguments.length;t{e+=t.toString()}}};yield o.exec("where",["rustup.exe"],t)}let t=e.split("\\").slice(0,-3).concat([".rustup"]).join("\\");let r=`${t}\\default_cleared`;if(!u.existsSync(r)){u.renameSync(`${t}\\toolchains`,`${t}\\_toolchains`);u.appendFileSync(r,"")}}}})}t.install=install;function installOnUnix(){return n(this,void 0,void 0,function*(){let e=yield a.downloadTool("https://sh.rustup.rs");u.chmodSync(e,"777");yield o.exec(`"${e}"`,["-y","--default-toolchain","none","--profile=minimal"]);return c.join(process.env["HOME"]||"",".cargo")})}},211:function(e){e.exports=require("https")},280:function(e,t){t=e.exports=SemVer;var r;if(typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)){r=function(){var e=Array.prototype.slice.call(arguments,0);e.unshift("SEMVER");console.log.apply(console,e)}}else{r=function(){}}t.SEMVER_SPEC_VERSION="2.0.0";var n=256;var i=Number.MAX_SAFE_INTEGER||9007199254740991;var s=16;var o=t.re=[];var a=t.src=[];var c=t.tokens={};var l=0;function tok(e){c[e]=l++}tok("NUMERICIDENTIFIER");a[c.NUMERICIDENTIFIER]="0|[1-9]\\d*";tok("NUMERICIDENTIFIERLOOSE");a[c.NUMERICIDENTIFIERLOOSE]="[0-9]+";tok("NONNUMERICIDENTIFIER");a[c.NONNUMERICIDENTIFIER]="\\d*[a-zA-Z-][a-zA-Z0-9-]*";tok("MAINVERSION");a[c.MAINVERSION]="("+a[c.NUMERICIDENTIFIER]+")\\."+"("+a[c.NUMERICIDENTIFIER]+")\\."+"("+a[c.NUMERICIDENTIFIER]+")";tok("MAINVERSIONLOOSE");a[c.MAINVERSIONLOOSE]="("+a[c.NUMERICIDENTIFIERLOOSE]+")\\."+"("+a[c.NUMERICIDENTIFIERLOOSE]+")\\."+"("+a[c.NUMERICIDENTIFIERLOOSE]+")";tok("PRERELEASEIDENTIFIER");a[c.PRERELEASEIDENTIFIER]="(?:"+a[c.NUMERICIDENTIFIER]+"|"+a[c.NONNUMERICIDENTIFIER]+")";tok("PRERELEASEIDENTIFIERLOOSE");a[c.PRERELEASEIDENTIFIERLOOSE]="(?:"+a[c.NUMERICIDENTIFIERLOOSE]+"|"+a[c.NONNUMERICIDENTIFIER]+")";tok("PRERELEASE");a[c.PRERELEASE]="(?:-("+a[c.PRERELEASEIDENTIFIER]+"(?:\\."+a[c.PRERELEASEIDENTIFIER]+")*))";tok("PRERELEASELOOSE");a[c.PRERELEASELOOSE]="(?:-?("+a[c.PRERELEASEIDENTIFIERLOOSE]+"(?:\\."+a[c.PRERELEASEIDENTIFIERLOOSE]+")*))";tok("BUILDIDENTIFIER");a[c.BUILDIDENTIFIER]="[0-9A-Za-z-]+";tok("BUILD");a[c.BUILD]="(?:\\+("+a[c.BUILDIDENTIFIER]+"(?:\\."+a[c.BUILDIDENTIFIER]+")*))";tok("FULL");tok("FULLPLAIN");a[c.FULLPLAIN]="v?"+a[c.MAINVERSION]+a[c.PRERELEASE]+"?"+a[c.BUILD]+"?";a[c.FULL]="^"+a[c.FULLPLAIN]+"$";tok("LOOSEPLAIN");a[c.LOOSEPLAIN]="[v=\\s]*"+a[c.MAINVERSIONLOOSE]+a[c.PRERELEASELOOSE]+"?"+a[c.BUILD]+"?";tok("LOOSE");a[c.LOOSE]="^"+a[c.LOOSEPLAIN]+"$";tok("GTLT");a[c.GTLT]="((?:<|>)?=?)";tok("XRANGEIDENTIFIERLOOSE");a[c.XRANGEIDENTIFIERLOOSE]=a[c.NUMERICIDENTIFIERLOOSE]+"|x|X|\\*";tok("XRANGEIDENTIFIER");a[c.XRANGEIDENTIFIER]=a[c.NUMERICIDENTIFIER]+"|x|X|\\*";tok("XRANGEPLAIN");a[c.XRANGEPLAIN]="[v=\\s]*("+a[c.XRANGEIDENTIFIER]+")"+"(?:\\.("+a[c.XRANGEIDENTIFIER]+")"+"(?:\\.("+a[c.XRANGEIDENTIFIER]+")"+"(?:"+a[c.PRERELEASE]+")?"+a[c.BUILD]+"?"+")?)?";tok("XRANGEPLAINLOOSE");a[c.XRANGEPLAINLOOSE]="[v=\\s]*("+a[c.XRANGEIDENTIFIERLOOSE]+")"+"(?:\\.("+a[c.XRANGEIDENTIFIERLOOSE]+")"+"(?:\\.("+a[c.XRANGEIDENTIFIERLOOSE]+")"+"(?:"+a[c.PRERELEASELOOSE]+")?"+a[c.BUILD]+"?"+")?)?";tok("XRANGE");a[c.XRANGE]="^"+a[c.GTLT]+"\\s*"+a[c.XRANGEPLAIN]+"$";tok("XRANGELOOSE");a[c.XRANGELOOSE]="^"+a[c.GTLT]+"\\s*"+a[c.XRANGEPLAINLOOSE]+"$";tok("COERCE");a[c.COERCE]="(^|[^\\d])"+"(\\d{1,"+s+"})"+"(?:\\.(\\d{1,"+s+"}))?"+"(?:\\.(\\d{1,"+s+"}))?"+"(?:$|[^\\d])";tok("COERCERTL");o[c.COERCERTL]=new RegExp(a[c.COERCE],"g");tok("LONETILDE");a[c.LONETILDE]="(?:~>?)";tok("TILDETRIM");a[c.TILDETRIM]="(\\s*)"+a[c.LONETILDE]+"\\s+";o[c.TILDETRIM]=new RegExp(a[c.TILDETRIM],"g");var u="$1~";tok("TILDE");a[c.TILDE]="^"+a[c.LONETILDE]+a[c.XRANGEPLAIN]+"$";tok("TILDELOOSE");a[c.TILDELOOSE]="^"+a[c.LONETILDE]+a[c.XRANGEPLAINLOOSE]+"$";tok("LONECARET");a[c.LONECARET]="(?:\\^)";tok("CARETTRIM");a[c.CARETTRIM]="(\\s*)"+a[c.LONECARET]+"\\s+";o[c.CARETTRIM]=new RegExp(a[c.CARETTRIM],"g");var f="$1^";tok("CARET");a[c.CARET]="^"+a[c.LONECARET]+a[c.XRANGEPLAIN]+"$";tok("CARETLOOSE");a[c.CARETLOOSE]="^"+a[c.LONECARET]+a[c.XRANGEPLAINLOOSE]+"$";tok("COMPARATORLOOSE");a[c.COMPARATORLOOSE]="^"+a[c.GTLT]+"\\s*("+a[c.LOOSEPLAIN]+")$|^$";tok("COMPARATOR");a[c.COMPARATOR]="^"+a[c.GTLT]+"\\s*("+a[c.FULLPLAIN]+")$|^$";tok("COMPARATORTRIM");a[c.COMPARATORTRIM]="(\\s*)"+a[c.GTLT]+"\\s*("+a[c.LOOSEPLAIN]+"|"+a[c.XRANGEPLAIN]+")";o[c.COMPARATORTRIM]=new RegExp(a[c.COMPARATORTRIM],"g");var h="$1$2$3";tok("HYPHENRANGE");a[c.HYPHENRANGE]="^\\s*("+a[c.XRANGEPLAIN]+")"+"\\s+-\\s+"+"("+a[c.XRANGEPLAIN]+")"+"\\s*$";tok("HYPHENRANGELOOSE");a[c.HYPHENRANGELOOSE]="^\\s*("+a[c.XRANGEPLAINLOOSE]+")"+"\\s+-\\s+"+"("+a[c.XRANGEPLAINLOOSE]+")"+"\\s*$";tok("STAR");a[c.STAR]="(<|>)?=?\\s*\\*";for(var p=0;pn){return null}var r=t.loose?o[c.LOOSE]:o[c.FULL];if(!r.test(e)){return null}try{return new SemVer(e,t)}catch(e){return null}}t.valid=valid;function valid(e,t){var r=parse(e,t);return r?r.version:null}t.clean=clean;function clean(e,t){var r=parse(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null}t.SemVer=SemVer;function SemVer(e,t){if(!t||typeof t!=="object"){t={loose:!!t,includePrerelease:false}}if(e instanceof SemVer){if(e.loose===t.loose){return e}else{e=e.version}}else if(typeof e!=="string"){throw new TypeError("Invalid Version: "+e)}if(e.length>n){throw new TypeError("version is longer than "+n+" characters")}if(!(this instanceof SemVer)){return new SemVer(e,t)}r("SemVer",e,t);this.options=t;this.loose=!!t.loose;var s=e.trim().match(t.loose?o[c.LOOSE]:o[c.FULL]);if(!s){throw new TypeError("Invalid Version: "+e)}this.raw=e;this.major=+s[1];this.minor=+s[2];this.patch=+s[3];if(this.major>i||this.major<0){throw new TypeError("Invalid major version")}if(this.minor>i||this.minor<0){throw new TypeError("Invalid minor version")}if(this.patch>i||this.patch<0){throw new TypeError("Invalid patch version")}if(!s[4]){this.prerelease=[]}else{this.prerelease=s[4].split(".").map(function(e){if(/^[0-9]+$/.test(e)){var t=+e;if(t>=0&&t=0){if(typeof this.prerelease[r]==="number"){this.prerelease[r]++;r=-2}}if(r===-1){this.prerelease.push(0)}}if(t){if(this.prerelease[0]===t){if(isNaN(this.prerelease[1])){this.prerelease=[t,0]}}else{this.prerelease=[t,0]}}break;default:throw new Error("invalid increment argument: "+e)}this.format();this.raw=this.version;return this};t.inc=inc;function inc(e,t,r,n){if(typeof r==="string"){n=r;r=undefined}try{return new SemVer(e,r).inc(t,n).version}catch(e){return null}}t.diff=diff;function diff(e,t){if(eq(e,t)){return null}else{var r=parse(e);var n=parse(t);var i="";if(r.prerelease.length||n.prerelease.length){i="pre";var s="prerelease"}for(var o in r){if(o==="major"||o==="minor"||o==="patch"){if(r[o]!==n[o]){return i+o}}}return s}}t.compareIdentifiers=compareIdentifiers;var d=/^[0-9]+$/;function compareIdentifiers(e,t){var r=d.test(e);var n=d.test(t);if(r&&n){e=+e;t=+t}return e===t?0:r&&!n?-1:n&&!r?1:e0}t.lt=lt;function lt(e,t,r){return compare(e,t,r)<0}t.eq=eq;function eq(e,t,r){return compare(e,t,r)===0}t.neq=neq;function neq(e,t,r){return compare(e,t,r)!==0}t.gte=gte;function gte(e,t,r){return compare(e,t,r)>=0}t.lte=lte;function lte(e,t,r){return compare(e,t,r)<=0}t.cmp=cmp;function cmp(e,t,r,n){switch(t){case"===":if(typeof e==="object")e=e.version;if(typeof r==="object")r=r.version;return e===r;case"!==":if(typeof e==="object")e=e.version;if(typeof r==="object")r=r.version;return e!==r;case"":case"=":case"==":return eq(e,r,n);case"!=":return neq(e,r,n);case">":return gt(e,r,n);case">=":return gte(e,r,n);case"<":return lt(e,r,n);case"<=":return lte(e,r,n);default:throw new TypeError("Invalid operator: "+t)}}t.Comparator=Comparator;function Comparator(e,t){if(!t||typeof t!=="object"){t={loose:!!t,includePrerelease:false}}if(e instanceof Comparator){if(e.loose===!!t.loose){return e}else{e=e.value}}if(!(this instanceof Comparator)){return new Comparator(e,t)}r("comparator",e,t);this.options=t;this.loose=!!t.loose;this.parse(e);if(this.semver===E){this.value=""}else{this.value=this.operator+this.semver.version}r("comp",this)}var E={};Comparator.prototype.parse=function(e){var t=this.options.loose?o[c.COMPARATORLOOSE]:o[c.COMPARATOR];var r=e.match(t);if(!r){throw new TypeError("Invalid comparator: "+e)}this.operator=r[1]!==undefined?r[1]:"";if(this.operator==="="){this.operator=""}if(!r[2]){this.semver=E}else{this.semver=new SemVer(r[2],this.options.loose)}};Comparator.prototype.toString=function(){return this.value};Comparator.prototype.test=function(e){r("Comparator.test",e,this.options.loose);if(this.semver===E||e===E){return true}if(typeof e==="string"){try{e=new SemVer(e,this.options)}catch(e){return false}}return cmp(e,this.operator,this.semver,this.options)};Comparator.prototype.intersects=function(e,t){if(!(e instanceof Comparator)){throw new TypeError("a Comparator is required")}if(!t||typeof t!=="object"){t={loose:!!t,includePrerelease:false}}var r;if(this.operator===""){if(this.value===""){return true}r=new Range(e.value,t);return satisfies(this.value,r,t)}else if(e.operator===""){if(e.value===""){return true}r=new Range(this.value,t);return satisfies(e.semver,r,t)}var n=(this.operator===">="||this.operator===">")&&(e.operator===">="||e.operator===">");var i=(this.operator==="<="||this.operator==="<")&&(e.operator==="<="||e.operator==="<");var s=this.semver.version===e.semver.version;var o=(this.operator===">="||this.operator==="<=")&&(e.operator===">="||e.operator==="<=");var a=cmp(this.semver,"<",e.semver,t)&&((this.operator===">="||this.operator===">")&&(e.operator==="<="||e.operator==="<"));var c=cmp(this.semver,">",e.semver,t)&&((this.operator==="<="||this.operator==="<")&&(e.operator===">="||e.operator===">"));return n||i||s&&o||a||c};t.Range=Range;function Range(e,t){if(!t||typeof t!=="object"){t={loose:!!t,includePrerelease:false}}if(e instanceof Range){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease){return e}else{return new Range(e.raw,t)}}if(e instanceof Comparator){return new Range(e.value,t)}if(!(this instanceof Range)){return new Range(e,t)}this.options=t;this.loose=!!t.loose;this.includePrerelease=!!t.includePrerelease;this.raw=e;this.set=e.split(/\s*\|\|\s*/).map(function(e){return this.parseRange(e.trim())},this).filter(function(e){return e.length});if(!this.set.length){throw new TypeError("Invalid SemVer Range: "+e)}this.format()}Range.prototype.format=function(){this.range=this.set.map(function(e){return e.join(" ").trim()}).join("||").trim();return this.range};Range.prototype.toString=function(){return this.range};Range.prototype.parseRange=function(e){var t=this.options.loose;e=e.trim();var n=t?o[c.HYPHENRANGELOOSE]:o[c.HYPHENRANGE];e=e.replace(n,hyphenReplace);r("hyphen replace",e);e=e.replace(o[c.COMPARATORTRIM],h);r("comparator trim",e,o[c.COMPARATORTRIM]);e=e.replace(o[c.TILDETRIM],u);e=e.replace(o[c.CARETTRIM],f);e=e.split(/\s+/).join(" ");var i=t?o[c.COMPARATORLOOSE]:o[c.COMPARATOR];var s=e.split(" ").map(function(e){return parseComparator(e,this.options)},this).join(" ").split(/\s+/);if(this.options.loose){s=s.filter(function(e){return!!e.match(i)})}s=s.map(function(e){return new Comparator(e,this.options)},this);return s};Range.prototype.intersects=function(e,t){if(!(e instanceof Range)){throw new TypeError("a Range is required")}return this.set.some(function(r){return isSatisfiable(r,t)&&e.set.some(function(e){return isSatisfiable(e,t)&&r.every(function(r){return e.every(function(e){return r.intersects(e,t)})})})})};function isSatisfiable(e,t){var r=true;var n=e.slice();var i=n.pop();while(r&&n.length){r=n.every(function(e){return i.intersects(e,t)});i=n.pop()}return r}t.toComparators=toComparators;function toComparators(e,t){return new Range(e,t).set.map(function(e){return e.map(function(e){return e.value}).join(" ").trim().split(" ")})}function parseComparator(e,t){r("comp",e,t);e=replaceCarets(e,t);r("caret",e);e=replaceTildes(e,t);r("tildes",e);e=replaceXRanges(e,t);r("xrange",e);e=replaceStars(e,t);r("stars",e);return e}function isX(e){return!e||e.toLowerCase()==="x"||e==="*"}function replaceTildes(e,t){return e.trim().split(/\s+/).map(function(e){return replaceTilde(e,t)}).join(" ")}function replaceTilde(e,t){var n=t.loose?o[c.TILDELOOSE]:o[c.TILDE];return e.replace(n,function(t,n,i,s,o){r("tilde",e,t,n,i,s,o);var a;if(isX(n)){a=""}else if(isX(i)){a=">="+n+".0.0 <"+(+n+1)+".0.0"}else if(isX(s)){a=">="+n+"."+i+".0 <"+n+"."+(+i+1)+".0"}else if(o){r("replaceTilde pr",o);a=">="+n+"."+i+"."+s+"-"+o+" <"+n+"."+(+i+1)+".0"}else{a=">="+n+"."+i+"."+s+" <"+n+"."+(+i+1)+".0"}r("tilde return",a);return a})}function replaceCarets(e,t){return e.trim().split(/\s+/).map(function(e){return replaceCaret(e,t)}).join(" ")}function replaceCaret(e,t){r("caret",e,t);var n=t.loose?o[c.CARETLOOSE]:o[c.CARET];return e.replace(n,function(t,n,i,s,o){r("caret",e,t,n,i,s,o);var a;if(isX(n)){a=""}else if(isX(i)){a=">="+n+".0.0 <"+(+n+1)+".0.0"}else if(isX(s)){if(n==="0"){a=">="+n+"."+i+".0 <"+n+"."+(+i+1)+".0"}else{a=">="+n+"."+i+".0 <"+(+n+1)+".0.0"}}else if(o){r("replaceCaret pr",o);if(n==="0"){if(i==="0"){a=">="+n+"."+i+"."+s+"-"+o+" <"+n+"."+i+"."+(+s+1)}else{a=">="+n+"."+i+"."+s+"-"+o+" <"+n+"."+(+i+1)+".0"}}else{a=">="+n+"."+i+"."+s+"-"+o+" <"+(+n+1)+".0.0"}}else{r("no pr");if(n==="0"){if(i==="0"){a=">="+n+"."+i+"."+s+" <"+n+"."+i+"."+(+s+1)}else{a=">="+n+"."+i+"."+s+" <"+n+"."+(+i+1)+".0"}}else{a=">="+n+"."+i+"."+s+" <"+(+n+1)+".0.0"}}r("caret return",a);return a})}function replaceXRanges(e,t){r("replaceXRanges",e,t);return e.split(/\s+/).map(function(e){return replaceXRange(e,t)}).join(" ")}function replaceXRange(e,t){e=e.trim();var n=t.loose?o[c.XRANGELOOSE]:o[c.XRANGE];return e.replace(n,function(n,i,s,o,a,c){r("xRange",e,n,i,s,o,a,c);var l=isX(s);var u=l||isX(o);var f=u||isX(a);var h=f;if(i==="="&&h){i=""}c=t.includePrerelease?"-0":"";if(l){if(i===">"||i==="<"){n="<0.0.0-0"}else{n="*"}}else if(i&&h){if(u){o=0}a=0;if(i===">"){i=">=";if(u){s=+s+1;o=0;a=0}else{o=+o+1;a=0}}else if(i==="<="){i="<";if(u){s=+s+1}else{o=+o+1}}n=i+s+"."+o+"."+a+c}else if(u){n=">="+s+".0.0"+c+" <"+(+s+1)+".0.0"+c}else if(f){n=">="+s+"."+o+".0"+c+" <"+s+"."+(+o+1)+".0"+c}r("xRange return",n);return n})}function replaceStars(e,t){r("replaceStars",e,t);return e.trim().replace(o[c.STAR],"")}function hyphenReplace(e,t,r,n,i,s,o,a,c,l,u,f,h){if(isX(r)){t=""}else if(isX(n)){t=">="+r+".0.0"}else if(isX(i)){t=">="+r+"."+n+".0"}else{t=">="+t}if(isX(c)){a=""}else if(isX(l)){a="<"+(+c+1)+".0.0"}else if(isX(u)){a="<"+c+"."+(+l+1)+".0"}else if(f){a="<="+c+"."+l+"."+u+"-"+f}else{a="<="+a}return(t+" "+a).trim()}Range.prototype.test=function(e){if(!e){return false}if(typeof e==="string"){try{e=new SemVer(e,this.options)}catch(e){return false}}for(var t=0;t0){var s=e[i].semver;if(s.major===t.major&&s.minor===t.minor&&s.patch===t.patch){return true}}}return false}return true}t.satisfies=satisfies;function satisfies(e,t,r){try{t=new Range(t,r)}catch(e){return false}return t.test(e)}t.maxSatisfying=maxSatisfying;function maxSatisfying(e,t,r){var n=null;var i=null;try{var s=new Range(t,r)}catch(e){return null}e.forEach(function(e){if(s.test(e)){if(!n||i.compare(e)===-1){n=e;i=new SemVer(n,r)}}});return n}t.minSatisfying=minSatisfying;function minSatisfying(e,t,r){var n=null;var i=null;try{var s=new Range(t,r)}catch(e){return null}e.forEach(function(e){if(s.test(e)){if(!n||i.compare(e)===1){n=e;i=new SemVer(n,r)}}});return n}t.minVersion=minVersion;function minVersion(e,t){e=new Range(e,t);var r=new SemVer("0.0.0");if(e.test(r)){return r}r=new SemVer("0.0.0-0");if(e.test(r)){return r}r=null;for(var n=0;n":if(t.prerelease.length===0){t.patch++}else{t.prerelease.push(0)}t.raw=t.format();case"":case">=":if(!r||gt(r,t)){r=t}break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+e.operator)}})}if(r&&e.test(r)){return r}return null}t.validRange=validRange;function validRange(e,t){try{return new Range(e,t).range||"*"}catch(e){return null}}t.ltr=ltr;function ltr(e,t,r){return outside(e,t,"<",r)}t.gtr=gtr;function gtr(e,t,r){return outside(e,t,">",r)}t.outside=outside;function outside(e,t,r,n){e=new SemVer(e,n);t=new Range(t,n);var i,s,o,a,c;switch(r){case">":i=gt;s=lte;o=lt;a=">";c=">=";break;case"<":i=lt;s=gte;o=gt;a="<";c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(satisfies(e,t,n)){return false}for(var l=0;l=0.0.0")}f=f||e;h=h||e;if(i(e.semver,f.semver,n)){f=e}else if(o(e.semver,h.semver,n)){h=e}});if(f.operator===a||f.operator===c){return false}if((!h.operator||h.operator===a)&&s(e,h.semver)){return false}else if(h.operator===c&&o(e,h.semver)){return false}}return true}t.prerelease=prerelease;function prerelease(e,t){var r=parse(e,t);return r&&r.prerelease.length?r.prerelease:null}t.intersects=intersects;function intersects(e,t,r){e=new Range(e,r);t=new Range(t,r);return e.intersects(t)}t.coerce=coerce;function coerce(e,t){if(e instanceof SemVer){return e}if(typeof e==="number"){e=String(e)}if(typeof e!=="string"){return null}t=t||{};var r=null;if(!t.rtl){r=e.match(o[c.COERCE])}else{var n;while((n=o[c.COERCERTL].exec(e))&&(!r||r.index+r[0].length!==e.length)){if(!r||n.index+n[0].length!==r.index+r[0].length){r=n}o[c.COERCERTL].lastIndex=n.index+n[1].length+n[2].length}o[c.COERCERTL].lastIndex=-1}if(r===null){return null}return parse(r[2]+"."+(r[3]||"0")+"."+(r[4]||"0"),t)}},357:function(e){e.exports=require("assert")},413:function(e,t,r){e.exports=r(141)},417:function(e){e.exports=require("crypto")},431:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(87);function issueCommand(e,t,r){const i=new Command(e,t,r);process.stdout.write(i.toString()+n.EOL)}t.issueCommand=issueCommand;function issue(e,t){issueCommand(e,{},t)}t.issue=issue;const i="##[";class Command{constructor(e,t,r){if(!e){e="missing.command"}this.command=e;this.properties=t;this.message=r}toString(){let e=i+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";for(const t in this.properties){if(this.properties.hasOwnProperty(t)){const r=this.properties[t];if(r){e+=`${t}=${escape(`${r||""}`)};`}}}}e+="]";const t=`${this.message||""}`;e+=escapeData(t);return e}}function escapeData(e){return e.replace(/\r/g,"%0D").replace(/\n/g,"%0A")}function escape(e){return e.replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/]/g,"%5D").replace(/;/g,"%3B")}},470:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(431);const i=r(622);var s;(function(e){e[e["Success"]=0]="Success";e[e["Failure"]=1]="Failure"})(s=t.ExitCode||(t.ExitCode={}));function exportVariable(e,t){process.env[e]=t;n.issueCommand("set-env",{name:e},t)}t.exportVariable=exportVariable;function exportSecret(e,t){exportVariable(e,t);n.issueCommand("set-secret",{},t)}t.exportSecret=exportSecret;function addPath(e){n.issueCommand("add-path",{},e);process.env["PATH"]=`${e}${i.delimiter}${process.env["PATH"]}`}t.addPath=addPath;function getInput(e,t){const r=process.env[`INPUT_${e.replace(" ","_").toUpperCase()}`]||"";if(t&&t.required&&!r){throw new Error(`Input required and not supplied: ${e}`)}return r.trim()}t.getInput=getInput;function setOutput(e,t){n.issueCommand("set-output",{name:e},t)}t.setOutput=setOutput;function setFailed(e){process.exitCode=s.Failure;error(e)}t.setFailed=setFailed;function debug(e){n.issueCommand("debug",{},e)}t.debug=debug;function error(e){n.issue("error",e)}t.error=error;function warning(e){n.issue("warning",e)}t.warning=warning},533:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,s){function fulfilled(e){try{step(n.next(e))}catch(e){s(e)}}function rejected(e){try{step(n["throw"](e))}catch(e){s(e)}}function step(e){e.done?i(e.value):new r(function(t){t(e.value)}).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())})};Object.defineProperty(t,"__esModule",{value:true});const i=r(470);const s=r(1);const o=r(747);const a=r(87);const c=r(622);const l=r(874);const u=r(280);const f=r(826);const h=r(986);const p=r(357);class HTTPError extends Error{constructor(e){super(`Unexpected HTTP response: ${e}`);this.httpStatusCode=e;Object.setPrototypeOf(this,new.target.prototype)}}t.HTTPError=HTTPError;const d=process.platform==="win32";const E="actions/tool-cache";let v=process.env["RUNNER_TEMP"]||"";let y=process.env["RUNNER_TOOL_CACHE"]||"";if(!v||!y){let e;if(d){e=process.env["USERPROFILE"]||"C:\\"}else{if(process.platform==="darwin"){e="/Users"}else{e="/home"}}if(!v){v=c.join(e,"actions","temp")}if(!y){y=c.join(e,"actions","cache")}}function downloadTool(e){return n(this,void 0,void 0,function*(){return new Promise((t,r)=>n(this,void 0,void 0,function*(){try{const a=new l.HttpClient(E,[],{allowRetries:true,maxRetries:3});const u=c.join(v,f());yield s.mkdirP(v);i.debug(`Downloading ${e}`);i.debug(`Downloading ${u}`);if(o.existsSync(u)){throw new Error(`Destination file path ${u} already exists`)}const h=yield a.get(e);if(h.message.statusCode!==200){const t=new HTTPError(h.message.statusCode);i.debug(`Failed to download from "${e}". Code(${h.message.statusCode}) Message(${h.message.statusMessage})`);throw t}const p=o.createWriteStream(u);p.on("open",()=>n(this,void 0,void 0,function*(){try{const n=h.message.pipe(p);n.on("close",()=>{i.debug("download complete");t(u)})}catch(t){i.debug(`Failed to download from "${e}". Code(${h.message.statusCode}) Message(${h.message.statusMessage})`);r(t)}}));p.on("error",e=>{p.end();r(e)})}catch(e){r(e)}}))})}t.downloadTool=downloadTool;function extract7z(e,t,r){return n(this,void 0,void 0,function*(){p.ok(d,"extract7z() not supported on current OS");p.ok(e,'parameter "file" is required');t=t||(yield _createExtractFolder(t));const n=process.cwd();process.chdir(t);if(r){try{const t=["x","-bb1","-bd","-sccUTF-8",e];const i={silent:true};yield h.exec(`"${r}"`,t,i)}finally{process.chdir(n)}}else{const r=c.join(__dirname,"..","scripts","Invoke-7zdec.ps1").replace(/'/g,"''").replace(/"|\n|\r/g,"");const i=e.replace(/'/g,"''").replace(/"|\n|\r/g,"");const o=t.replace(/'/g,"''").replace(/"|\n|\r/g,"");const a=`& '${r}' -Source '${i}' -Target '${o}'`;const l=["-NoLogo","-Sta","-NoProfile","-NonInteractive","-ExecutionPolicy","Unrestricted","-Command",a];const u={silent:true};try{const e=yield s.which("powershell",true);yield h.exec(`"${e}"`,l,u)}finally{process.chdir(n)}}return t})}t.extract7z=extract7z;function extractTar(e,t){return n(this,void 0,void 0,function*(){if(!e){throw new Error("parameter 'file' is required")}t=t||(yield _createExtractFolder(t));const r=yield s.which("tar",true);yield h.exec(`"${r}"`,["xzC",t,"-f",e]);return t})}t.extractTar=extractTar;function extractZip(e,t){return n(this,void 0,void 0,function*(){if(!e){throw new Error("parameter 'file' is required")}t=t||(yield _createExtractFolder(t));if(d){yield extractZipWin(e,t)}else{yield extractZipNix(e,t)}return t})}t.extractZip=extractZip;function extractZipWin(e,t){return n(this,void 0,void 0,function*(){const r=e.replace(/'/g,"''").replace(/"|\n|\r/g,"");const n=t.replace(/'/g,"''").replace(/"|\n|\r/g,"");const i=`$ErrorActionPreference = 'Stop' ; try { Add-Type -AssemblyName System.IO.Compression.FileSystem } catch { } ; [System.IO.Compression.ZipFile]::ExtractToDirectory('${r}', '${n}')`;const o=yield s.which("powershell");const a=["-NoLogo","-Sta","-NoProfile","-NonInteractive","-ExecutionPolicy","Unrestricted","-Command",i];yield h.exec(`"${o}"`,a)})}function extractZipNix(e,t){return n(this,void 0,void 0,function*(){const n=r.ab+"unzip";yield h.exec(`"${n}"`,[e],{cwd:t})})}function cacheDir(e,t,r,l){return n(this,void 0,void 0,function*(){r=u.clean(r)||r;l=l||a.arch();i.debug(`Caching tool ${t} ${r} ${l}`);i.debug(`source dir: ${e}`);if(!o.statSync(e).isDirectory()){throw new Error("sourceDir is not a directory")}const n=yield _createToolPath(t,r,l);for(const t of o.readdirSync(e)){const r=c.join(e,t);yield s.cp(r,n,{recursive:true})}_completeToolPath(t,r,l);return n})}t.cacheDir=cacheDir;function cacheFile(e,t,r,l,f){return n(this,void 0,void 0,function*(){l=u.clean(l)||l;f=f||a.arch();i.debug(`Caching tool ${r} ${l} ${f}`);i.debug(`source file: ${e}`);if(!o.statSync(e).isFile()){throw new Error("sourceFile is not a file")}const n=yield _createToolPath(r,l,f);const h=c.join(n,t);i.debug(`destination file ${h}`);yield s.cp(e,h);_completeToolPath(r,l,f);return n})}t.cacheFile=cacheFile;function find(e,t,r){if(!e){throw new Error("toolName parameter is required")}if(!t){throw new Error("versionSpec parameter is required")}r=r||a.arch();if(!_isExplicitVersion(t)){const n=findAllVersions(e,r);const i=_evaluateVersions(n,t);t=i}let n="";if(t){t=u.clean(t)||"";const s=c.join(y,e,t,r);i.debug(`checking cache: ${s}`);if(o.existsSync(s)&&o.existsSync(`${s}.complete`)){i.debug(`Found tool in cache ${e} ${t} ${r}`);n=s}else{i.debug("not found")}}return n}t.find=find;function findAllVersions(e,t){const r=[];t=t||a.arch();const n=c.join(y,e);if(o.existsSync(n)){const e=o.readdirSync(n);for(const i of e){if(_isExplicitVersion(i)){const e=c.join(n,i,t||"");if(o.existsSync(e)&&o.existsSync(`${e}.complete`)){r.push(i)}}}}return r}t.findAllVersions=findAllVersions;function _createExtractFolder(e){return n(this,void 0,void 0,function*(){if(!e){e=c.join(v,f())}yield s.mkdirP(e);return e})}function _createToolPath(e,t,r){return n(this,void 0,void 0,function*(){const n=c.join(y,e,u.clean(t)||t,r||"");i.debug(`destination ${n}`);const o=`${n}.complete`;yield s.rmRF(n);yield s.rmRF(o);yield s.mkdirP(n);return n})}function _completeToolPath(e,t,r){const n=c.join(y,e,u.clean(t)||t,r||"");const s=`${n}.complete`;o.writeFileSync(s,"");i.debug("finished caching tool")}function _isExplicitVersion(e){const t=u.clean(e)||"";i.debug(`isExplicit: ${t}`);const r=u.valid(t)!=null;i.debug(`explicit? ${r}`);return r}function _evaluateVersions(e,t){let r="";i.debug(`evaluating ${e.length} versions`);e=e.sort((e,t)=>{if(u.gt(e,t)){return 1}return-1});for(let n=e.length-1;n>=0;n--){const i=e[n];const s=u.satisfies(i,t);if(s){r=i;break}}if(r){i.debug(`matched: ${r}`)}else{i.debug("match not found")}return r}},605:function(e){e.exports=require("http")},614:function(e){e.exports=require("events")},622:function(e){e.exports=require("path")},631:function(e){e.exports=require("net")},669:function(e){e.exports=require("util")},672:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,s){function fulfilled(e){try{step(n.next(e))}catch(e){s(e)}}function rejected(e){try{step(n["throw"](e))}catch(e){s(e)}}function step(e){e.done?i(e.value):new r(function(t){t(e.value)}).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())})};var i;Object.defineProperty(t,"__esModule",{value:true});const s=r(357);const o=r(747);const a=r(622);i=o.promises,t.chmod=i.chmod,t.copyFile=i.copyFile,t.lstat=i.lstat,t.mkdir=i.mkdir,t.readdir=i.readdir,t.readlink=i.readlink,t.rename=i.rename,t.rmdir=i.rmdir,t.stat=i.stat,t.symlink=i.symlink,t.unlink=i.unlink;t.IS_WINDOWS=process.platform==="win32";function exists(e){return n(this,void 0,void 0,function*(){try{yield t.stat(e)}catch(e){if(e.code==="ENOENT"){return false}throw e}return true})}t.exists=exists;function isDirectory(e,r=false){return n(this,void 0,void 0,function*(){const n=r?yield t.stat(e):yield t.lstat(e);return n.isDirectory()})}t.isDirectory=isDirectory;function isRooted(e){e=normalizeSeparators(e);if(!e){throw new Error('isRooted() parameter "p" cannot be empty')}if(t.IS_WINDOWS){return e.startsWith("\\")||/^[A-Z]:/i.test(e)}return e.startsWith("/")}t.isRooted=isRooted;function mkdirP(e,r=1e3,i=1){return n(this,void 0,void 0,function*(){s.ok(e,"a path argument must be provided");e=a.resolve(e);if(i>=r)return t.mkdir(e);try{yield t.mkdir(e);return}catch(n){switch(n.code){case"ENOENT":{yield mkdirP(a.dirname(e),r,i+1);yield t.mkdir(e);return}default:{let r;try{r=yield t.stat(e)}catch(e){throw n}if(!r.isDirectory())throw n}}}})}t.mkdirP=mkdirP;function tryGetExecutablePath(e,r){return n(this,void 0,void 0,function*(){let n=undefined;try{n=yield t.stat(e)}catch(t){if(t.code!=="ENOENT"){console.log(`Unexpected error attempting to determine if executable file exists '${e}': ${t}`)}}if(n&&n.isFile()){if(t.IS_WINDOWS){const t=a.extname(e).toUpperCase();if(r.some(e=>e.toUpperCase()===t)){return e}}else{if(isUnixExecutable(n)){return e}}}const i=e;for(const s of r){e=i+s;n=undefined;try{n=yield t.stat(e)}catch(t){if(t.code!=="ENOENT"){console.log(`Unexpected error attempting to determine if executable file exists '${e}': ${t}`)}}if(n&&n.isFile()){if(t.IS_WINDOWS){try{const r=a.dirname(e);const n=a.basename(e).toUpperCase();for(const i of yield t.readdir(r)){if(n===i.toUpperCase()){e=a.join(r,i);break}}}catch(t){console.log(`Unexpected error attempting to determine the actual case of the file '${e}': ${t}`)}return e}else{if(isUnixExecutable(n)){return e}}}}return""})}t.tryGetExecutablePath=tryGetExecutablePath;function normalizeSeparators(e){e=e||"";if(t.IS_WINDOWS){e=e.replace(/\//g,"\\");return e.replace(/\\\\+/g,"\\")}return e.replace(/\/\/+/g,"/")}function isUnixExecutable(e){return(e.mode&1)>0||(e.mode&8)>0&&e.gid===process.getgid()||(e.mode&64)>0&&e.uid===process.getuid()}},722:function(e){var t=[];for(var r=0;r<256;++r){t[r]=(r+256).toString(16).substr(1)}function bytesToUuid(e,r){var n=r||0;var i=t;return[i[e[n++]],i[e[n++]],i[e[n++]],i[e[n++]],"-",i[e[n++]],i[e[n++]],"-",i[e[n++]],i[e[n++]],"-",i[e[n++]],i[e[n++]],"-",i[e[n++]],i[e[n++]],i[e[n++]],i[e[n++]],i[e[n++]],i[e[n++]]].join("")}e.exports=bytesToUuid},747:function(e){e.exports=require("fs")},826:function(e,t,r){var n=r(139);var i=r(722);function v4(e,t,r){var s=t&&r||0;if(typeof e=="string"){t=e==="binary"?new Array(16):null;e=null}e=e||{};var o=e.random||(e.rng||n)();o[6]=o[6]&15|64;o[8]=o[8]&63|128;if(t){for(var a=0;a<16;++a){t[s+a]=o[a]}}return t||i(o)}e.exports=v4},835:function(e){e.exports=require("url")},874:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,s){function fulfilled(e){try{step(n.next(e))}catch(e){s(e)}}function rejected(e){try{step(n["throw"](e))}catch(e){s(e)}}function step(e){e.done?i(e.value):new r(function(t){t(e.value)}).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())})};Object.defineProperty(t,"__esModule",{value:true});const i=r(835);const s=r(605);const o=r(211);let a;let c;var l;(function(e){e[e["OK"]=200]="OK";e[e["MultipleChoices"]=300]="MultipleChoices";e[e["MovedPermanently"]=301]="MovedPermanently";e[e["ResourceMoved"]=302]="ResourceMoved";e[e["SeeOther"]=303]="SeeOther";e[e["NotModified"]=304]="NotModified";e[e["UseProxy"]=305]="UseProxy";e[e["SwitchProxy"]=306]="SwitchProxy";e[e["TemporaryRedirect"]=307]="TemporaryRedirect";e[e["PermanentRedirect"]=308]="PermanentRedirect";e[e["BadRequest"]=400]="BadRequest";e[e["Unauthorized"]=401]="Unauthorized";e[e["PaymentRequired"]=402]="PaymentRequired";e[e["Forbidden"]=403]="Forbidden";e[e["NotFound"]=404]="NotFound";e[e["MethodNotAllowed"]=405]="MethodNotAllowed";e[e["NotAcceptable"]=406]="NotAcceptable";e[e["ProxyAuthenticationRequired"]=407]="ProxyAuthenticationRequired";e[e["RequestTimeout"]=408]="RequestTimeout";e[e["Conflict"]=409]="Conflict";e[e["Gone"]=410]="Gone";e[e["InternalServerError"]=500]="InternalServerError";e[e["NotImplemented"]=501]="NotImplemented";e[e["BadGateway"]=502]="BadGateway";e[e["ServiceUnavailable"]=503]="ServiceUnavailable";e[e["GatewayTimeout"]=504]="GatewayTimeout"})(l=t.HttpCodes||(t.HttpCodes={}));const u=[l.MovedPermanently,l.ResourceMoved,l.SeeOther,l.TemporaryRedirect,l.PermanentRedirect];const f=[l.BadGateway,l.ServiceUnavailable,l.GatewayTimeout];const h=["OPTIONS","GET","DELETE","HEAD"];const p=10;const d=5;class HttpClientResponse{constructor(e){this.message=e}readBody(){return new Promise((e,t)=>n(this,void 0,void 0,function*(){let t="";this.message.on("data",e=>{t+=e});this.message.on("end",()=>{e(t)})}))}}t.HttpClientResponse=HttpClientResponse;function isHttps(e){let t=i.parse(e);return t.protocol==="https:"}t.isHttps=isHttps;var E;(function(e){e["HTTP_PROXY"]="HTTP_PROXY";e["HTTPS_PROXY"]="HTTPS_PROXY"})(E||(E={}));class HttpClient{constructor(e,t,n){this._ignoreSslError=false;this._allowRedirects=true;this._maxRedirects=50;this._allowRetries=false;this._maxRetries=1;this._keepAlive=false;this._disposed=false;this.userAgent=e;this.handlers=t||[];this.requestOptions=n;if(n){if(n.ignoreSslError!=null){this._ignoreSslError=n.ignoreSslError}this._socketTimeout=n.socketTimeout;this._httpProxy=n.proxy;if(n.proxy&&n.proxy.proxyBypassHosts){this._httpProxyBypassHosts=[];n.proxy.proxyBypassHosts.forEach(e=>{this._httpProxyBypassHosts.push(new RegExp(e,"i"))})}this._certConfig=n.cert;if(this._certConfig){a=r(747);if(this._certConfig.caFile&&a.existsSync(this._certConfig.caFile)){this._ca=a.readFileSync(this._certConfig.caFile,"utf8")}if(this._certConfig.certFile&&a.existsSync(this._certConfig.certFile)){this._cert=a.readFileSync(this._certConfig.certFile,"utf8")}if(this._certConfig.keyFile&&a.existsSync(this._certConfig.keyFile)){this._key=a.readFileSync(this._certConfig.keyFile,"utf8")}}if(n.allowRedirects!=null){this._allowRedirects=n.allowRedirects}if(n.maxRedirects!=null){this._maxRedirects=Math.max(n.maxRedirects,0)}if(n.keepAlive!=null){this._keepAlive=n.keepAlive}if(n.allowRetries!=null){this._allowRetries=n.allowRetries}if(n.maxRetries!=null){this._maxRetries=n.maxRetries}}}options(e,t){return this.request("OPTIONS",e,null,t||{})}get(e,t){return this.request("GET",e,null,t||{})}del(e,t){return this.request("DELETE",e,null,t||{})}post(e,t,r){return this.request("POST",e,t,r||{})}patch(e,t,r){return this.request("PATCH",e,t,r||{})}put(e,t,r){return this.request("PUT",e,t,r||{})}head(e,t){return this.request("HEAD",e,null,t||{})}sendStream(e,t,r,n){return this.request(e,t,r,n)}request(e,t,r,i){return n(this,void 0,void 0,function*(){if(this._disposed){throw new Error("Client has already been disposed.")}let n=this._prepareRequest(e,t,i);let s=this._allowRetries&&h.indexOf(e)!=-1?this._maxRetries+1:1;let o=0;let a;while(o0){const s=a.message.headers["location"];if(!s){break}yield a.readBody();n=this._prepareRequest(e,s,i);a=yield this.requestRaw(n,r);t--}if(f.indexOf(a.message.statusCode)==-1){return a}o+=1;if(o{let i=function(e,t){if(e){n(e)}r(t)};this.requestRawWithCallback(e,t,i)})}requestRawWithCallback(e,t,r){let n;let i=typeof t==="string";if(typeof t==="string"){e.options.headers["Content-Length"]=Buffer.byteLength(t,"utf8")}let s=false;let o=(e,t)=>{if(!s){s=true;r(e,t)}};let a=e.httpModule.request(e.options,e=>{let t=new HttpClientResponse(e);o(null,t)});a.on("socket",e=>{n=e});a.setTimeout(this._socketTimeout||3*6e4,()=>{if(n){n.end()}o(new Error("Request timeout: "+e.options.path),null)});a.on("error",function(e){o(e,null)});if(t&&typeof t==="string"){a.write(t,"utf8")}if(t&&typeof t!=="string"){t.on("close",function(){a.end()});t.pipe(a)}else{a.end()}}_prepareRequest(e,t,r){const n={};n.parsedUrl=i.parse(t);const a=n.parsedUrl.protocol==="https:";n.httpModule=a?o:s;const c=a?443:80;n.options={};n.options.host=n.parsedUrl.hostname;n.options.port=n.parsedUrl.port?parseInt(n.parsedUrl.port):c;n.options.path=(n.parsedUrl.pathname||"")+(n.parsedUrl.search||"");n.options.method=e;n.options.headers=this._mergeHeaders(r);n.options.headers["user-agent"]=this.userAgent;n.options.agent=this._getAgent(t);if(this.handlers&&!this._isPresigned(t)){this.handlers.forEach(e=>{e.prepareRequest(n.options)})}return n}_isPresigned(e){if(this.requestOptions&&this.requestOptions.presignedUrlPatterns){const t=this.requestOptions.presignedUrlPatterns;for(let r=0;rObject.keys(e).reduce((t,r)=>(t[r.toLowerCase()]=e[r],t),{});if(this.requestOptions&&this.requestOptions.headers){return Object.assign({},t(this.requestOptions.headers),t(e))}return t(e||{})}_getAgent(e){let t;let n=this._getProxy(e);let a=n.proxyUrl&&n.proxyUrl.hostname&&!this._isBypassProxy(e);if(this._keepAlive&&a){t=this._proxyAgent}if(this._keepAlive&&!a){t=this._agent}if(!!t){return t}let l=i.parse(e);const u=l.protocol==="https:";let f=100;if(!!this.requestOptions){f=this.requestOptions.maxSockets||s.globalAgent.maxSockets}if(a){if(!c){c=r(413)}const e={maxSockets:f,keepAlive:this._keepAlive,proxy:{proxyAuth:n.proxyAuth,host:n.proxyUrl.hostname,port:n.proxyUrl.port}};let i;const s=n.proxyUrl.protocol==="https:";if(u){i=s?c.httpsOverHttps:c.httpsOverHttp}else{i=s?c.httpOverHttps:c.httpOverHttp}t=i(e);this._proxyAgent=t}if(this._keepAlive&&!t){const e={keepAlive:this._keepAlive,maxSockets:f};t=u?new o.Agent(e):new s.Agent(e);this._agent=t}if(!t){t=u?o.globalAgent:s.globalAgent}if(u&&this._ignoreSslError){t.options=Object.assign(t.options||{},{rejectUnauthorized:false})}if(u&&this._certConfig){t.options=Object.assign(t.options||{},{ca:this._ca,cert:this._cert,key:this._key,passphrase:this._certConfig.passphrase})}return t}_getProxy(e){const t=i.parse(e);let r=t.protocol==="https:";let n=this._httpProxy;let s=process.env[E.HTTPS_PROXY];let o=process.env[E.HTTP_PROXY];if(!n){if(s&&r){n={proxyUrl:s}}else if(o){n={proxyUrl:o}}}let a;let c;if(n){if(n.proxyUrl.length>0){a=i.parse(n.proxyUrl)}if(n.proxyUsername||n.proxyPassword){c=n.proxyUsername+":"+n.proxyPassword}}return{proxyUrl:a,proxyAuth:c}}_isBypassProxy(e){if(!this._httpProxyBypassHosts){return false}let t=false;this._httpProxyBypassHosts.forEach(r=>{if(r.test(e)){t=true}});return t}_performExponentialBackoff(e){e=Math.min(p,e);const t=d*Math.pow(2,e);return new Promise(e=>setTimeout(()=>e(),t))}}t.HttpClient=HttpClient},986:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))(function(i,s){function fulfilled(e){try{step(n.next(e))}catch(e){s(e)}}function rejected(e){try{step(n["throw"](e))}catch(e){s(e)}}function step(e){e.done?i(e.value):new r(function(t){t(e.value)}).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())})};Object.defineProperty(t,"__esModule",{value:true});const i=r(9);function exec(e,t,r){return n(this,void 0,void 0,function*(){const n=i.argStringToArray(e);if(n.length===0){throw new Error(`Parameter 'commandLine' cannot be null or empty.`)}const s=n[0];t=n.slice(1).concat(t||[]);const o=new i.ToolRunner(s,t,r);return o.exec()})}t.exec=exec}}); \ No newline at end of file diff --git a/dist/unzip b/dist/unzip new file mode 100644 index 0000000..4082418 Binary files /dev/null and b/dist/unzip differ diff --git a/lib/main.js b/lib/main.js deleted file mode 100644 index a169eeb..0000000 --- a/lib/main.js +++ /dev/null @@ -1,47 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; - result["default"] = mod; - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const core = __importStar(require("@actions/core")); -const exec = __importStar(require("@actions/exec")); -const rustup = __importStar(require("./rustup")); -function run() { - return __awaiter(this, void 0, void 0, function* () { - try { - const version = core.getInput('rust-version'); - const components = core.getInput('components') - .split(',') - .map((component) => component.trim()) - .filter((component) => component.length > 0); - const targets = core.getInput('targets') - .split(',') - .map((target) => target.trim()) - .filter((target) => target.length > 0); - if (version) { - yield rustup.install(); - yield exec.exec('rustup', ['toolchain', 'install', version, - ...(components.length > 0 ? ['-c', ...components] : []), - ...(targets.length > 0 ? ['-t', ...targets] : []), - ]); - yield exec.exec('rustup', ['default', version]); - } - } - catch (error) { - core.setFailed(error.message); - } - }); -} -run(); diff --git a/lib/rustup.js b/lib/rustup.js deleted file mode 100644 index 243ca64..0000000 --- a/lib/rustup.js +++ /dev/null @@ -1,70 +0,0 @@ -"use strict"; -var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -}; -var __importStar = (this && this.__importStar) || function (mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; - result["default"] = mod; - return result; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -const core = __importStar(require("@actions/core")); -const exec = __importStar(require("@actions/exec")); -const toolCache = __importStar(require("@actions/tool-cache")); -const path = __importStar(require("path")); -const os = __importStar(require("os")); -const fs_1 = require("fs"); -let tempDirectory = process.env['RUNNER_TEMPDIRECTORY'] || ''; -function install() { - return __awaiter(this, void 0, void 0, function* () { - // `rustup` is already installed on Linux and Windows platforms - if (os.platform() == 'darwin') { - let toolPath = yield installOnUnix(); - core.debug('rustup is located under: ' + toolPath); - core.addPath(path.join(toolPath, 'bin')); - } - else { - // Update the GitHub managed VM version of rustup - // to leverage newer features like "latest latest compatible nightly" - yield exec.exec('rustup', ['self', 'update']); - yield exec.exec('rustup', ['set', 'profile', 'minimal']); - if (os.platform() == 'win32') { - let cargoPath = ''; - { - const options = { - listeners: { - stdout: (data) => { - cargoPath += data.toString(); - } - } - }; - yield exec.exec('where', ['rustup.exe'], options); - } - let rustupPath = cargoPath.split('\\').slice(0, -3).concat([".rustup"]).join("\\"); - let defaultClearedFilePath = `${rustupPath}\\default_cleared`; - if (!fs_1.existsSync(defaultClearedFilePath)) { - // Github's default Windows install comes with rustup pre-installed with stable, including - // rust-docs. This removes the default stable install so that it doesn't update rust-docs. - fs_1.renameSync(`${rustupPath}\\toolchains`, `${rustupPath}\\_toolchains`); - fs_1.appendFileSync(defaultClearedFilePath, ''); - } - } - } - }); -} -exports.install = install; -function installOnUnix() { - return __awaiter(this, void 0, void 0, function* () { - let script = yield toolCache.downloadTool("https://sh.rustup.rs"); - fs_1.chmodSync(script, '777'); - yield exec.exec(`"${script}"`, ['-y', '--default-toolchain', 'none', '--profile=minimal']); - return path.join(process.env['HOME'] || '', '.cargo'); - }); -} diff --git a/package-lock.json b/package-lock.json index ed0f22a..1dae096 100644 --- a/package-lock.json +++ b/package-lock.json @@ -656,6 +656,12 @@ "integrity": "sha512-SOhuU4wNBxhhTHxYaiG5NY4HBhDIDnJF60GU+2LqHAdKKer86//e4yg69aENCtQ04n0ovz+tq2YPME5t5yp4pw==", "dev": true }, + "@zeit/ncc": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/@zeit/ncc/-/ncc-0.21.0.tgz", + "integrity": "sha512-RUMdvVK/w78oo+yBjruZltt0kJXYar2un/1bYQ2LuHG7GmFVm+QjxzEmySwREctaJdEnBvlMdUNWd9hXHxEI3g==", + "dev": true + }, "abab": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.0.tgz", diff --git a/package.json b/package.json index fcbecae..6658b06 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,7 @@ "description": "Set up a specific Rust toolchain in your Github Actions workflows", "main": "lib/main.js", "scripts": { - "build": "tsc", + "build": "ncc build src/main.ts --minify", "test": "jest" }, "repository": { @@ -32,6 +32,7 @@ "@types/jest": "^24.0.13", "@types/node": "^12.12.14", "@types/semver": "^6.0.0", + "@zeit/ncc": "^0.21.0", "jest": "^24.8.0", "jest-circus": "^24.7.1", "ts-jest": "^24.0.2",