diff --git a/lib/actions-util.js b/lib/actions-util.js index 914d41a986..9a181c9caf 100644 --- a/lib/actions-util.js +++ b/lib/actions-util.js @@ -265,7 +265,7 @@ function prettyPrintInvocation(cmd, args) { * An error from a tool invocation, with associated exit code, stderr, etc. */ class CommandInvocationError extends Error { - constructor(cmd, args, exitCode, stderr, stdout) { + constructor(cmd, args, exitCode, stderr, stdout = "") { const prettyCommand = prettyPrintInvocation(cmd, args); const lastLine = ensureEndsInPeriod(stderr.trim().split("\n").pop()?.trim() || "n/a"); super(`Failed to run "${prettyCommand}". ` + diff --git a/lib/actions-util.js.map b/lib/actions-util.js.map index cfa5d445f2..dde2868a8d 100644 --- a/lib/actions-util.js.map +++ b/lib/actions-util.js.map @@ -1 +1 @@ -{"version":3,"file":"actions-util.js","sourceRoot":"","sources":["../src/actions-util.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"actions-util.js","sourceRoot":"","sources":["../src/actions-util.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8CA,sDAKC;AAED,4CAEC;AAOD,oDAEC;AAMD,oDAKC;AAOD,sDAIC;AAGD,4CASC;AAED,wCA6BC;AAQD,wCAiBC;AAKD,4CAcC;AAKD,sDAcC;AAqDD,gDAEC;AAGD,wCAEC;AAED,sDAEC;AAwBD,gDAEC;AAoBD,0BAsCC;AAuCD,wDAyBC;AAKD,wDAEC;AAoBD,wDAwBC;AAvcD,uCAAyB;AACzB,2CAA6B;AAE7B,oDAAsC;AACtC,yEAA2D;AAC3D,wDAA0C;AAC1C,gDAAkC;AAKlC,iCAKgB;AAEhB,qFAAqF;AACrF,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAqC,CAAC;AAE3E;;;;;GAKG;AACI,MAAM,gBAAgB,GAAG,UAAU,IAAY;IACpD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,yBAAkB,CAAC,oCAAoC,IAAI,EAAE,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AANW,QAAA,gBAAgB,oBAM3B;AAEF;;;;;GAKG;AACI,MAAM,gBAAgB,GAAG,UAAU,IAAY;IACpD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9C,CAAC,CAAC;AAHW,QAAA,gBAAgB,oBAG3B;AAEF,SAAgB,qBAAqB;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAChD,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;QACxC,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,IAAA,0BAAmB,EAAC,aAAa,CAAC,CAAC;AACzC,CAAC;AAED,SAAgB,gBAAgB;IAC9B,OAAO,GAAG,CAAC,OAAQ,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,SAAgB,oBAAoB;IAClC,OAAO,IAAA,0BAAmB,EAAC,mBAAmB,CAAC,CAAC;AAClD,CAAC;AAED;;;GAGG;AACH,SAAgB,oBAAoB;IAClC,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,CAAC;IACnD,OAAO,CACL,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAC3E,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAgB,qBAAqB;IACnC,MAAM,UAAU,GAAG,IAAA,0BAAmB,EAAC,aAAa,CAAC,CAAC;IACtD,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC;IACzE,OAAO,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;AACrD,CAAC;AAED,oEAAoE;AACpE,SAAgB,gBAAgB;IAC9B,MAAM,aAAa,GAAG,IAAA,0BAAmB,EAAC,mBAAmB,CAAC,CAAC;IAC/D,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC;IAC7D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,2CAA2C,aAAa,KAAK,CAAC,EAAE,CACjE,CAAC;IACJ,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,cAAc,CAAC,MAAc;IACjD,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACxC,MAAM,iBAAiB,GAAG,IAAA,4BAAqB,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClE,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAA,yBAAkB,EAAC,aAAa,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,aAAa,aAAa,kBAAkB,CAAC,CAAC;YACxD,SAAS,CAAC,+BAA+B;QAC3C,CAAC;QAED,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,EAAE;YACnC,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,oCAAoC,aAAa,GAAG,CAAC,CAAC;YAClE,CAAC;YACD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;oBACnB,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;oBACnD,IAAI,CAAC,UAAU,CACb,uBAAuB,QAAQ,MAAM,KAAK,CAAC,IAAI,sBAAsB,YAAY,EAAE,CACpF,CAAC;oBACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC;oBACpD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,CAAC;qBAAM,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;oBAC/B,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QACF,YAAY,CAAC,aAAa,CAAC,CAAC;IAC9B,CAAC;AACH,CAAC;AAID;;;GAGG;AACH,SAAgB,cAAc,CAAC,KAAyB;IACtD,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,SAAS,CAAC;QACf,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,OAAO,CAAC;QACb,KAAK,cAAc;YACjB,OAAO,cAAc,CAAC;QACxB,KAAK,OAAO;YACV,OAAO,OAAO,CAAC;QACjB;YACE,IAAI,CAAC,OAAO,CACV,oDAAoD,KAAK,2BAA2B,CACrF,CAAC;YACF,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB;IAC9B,MAAM,mBAAmB,GAAG,IAAA,0BAAmB,EAAC,eAAe,CAAC,CAAC;IACjE,MAAM,aAAa,GAAG,QAAQ,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;IACxD,IAAI,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CACb,yEAAyE,mBAAmB,EAAE,CAC/F,CAAC;IACJ,CAAC;IACD,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,kEAAkE,mBAAmB,EAAE,CACxF,CAAC;IACJ,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB;IACnC,MAAM,wBAAwB,GAAG,IAAA,0BAAmB,EAAC,oBAAoB,CAAC,CAAC;IAC3E,MAAM,kBAAkB,GAAG,QAAQ,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IAClE,IAAI,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CACb,mFAAmF,wBAAwB,EAAE,CAC9G,CAAC;IACJ,CAAC;IACD,IAAI,kBAAkB,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CACb,mEAAmE,wBAAwB,EAAE,CAC9F,CAAC;IACJ,CAAC;IACD,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED,MAAa,oBAAqB,SAAQ,KAAK;IAC7C,YAAY,GAAW;QACrB,KAAK,CAAC,GAAG,CAAC,CAAC;QAEX,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAND,oDAMC;AAED;;;GAGG;AACI,MAAM,WAAW,GAAG,KAAK,EAAE,QAAgB,EAAmB,EAAE;IACrE,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,MAAM,GAAG,EAAE,CAAC;IAEhB,IAAI,WAAmB,CAAC;IAExB,IAAI,CAAC;QACH,WAAW,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,oBAAoB,CAC5B,6FAA6F,CAAC,EAAE,CACjG,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,8FAA8F;QAC9F,uFAAuF;QACvF,kEAAkE;QAClE,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE;YAC7D,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE;gBACT,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;oBACf,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC5B,CAAC;gBACD,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;oBACf,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC5B,CAAC;aACF;SACF,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,IAAI,CAAC,IAAI,CACP,+BAA+B,QAAQ,SAAS,MAAM,KAAK,MAAM,EAAE,CACpE,CAAC;QAEF,MAAM,CAAC,CAAC;IACV,CAAC;AACH,CAAC,CAAC;AArCW,QAAA,WAAW,eAqCtB;AAEF,SAAgB,kBAAkB;IAChC,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,aAAa,CAAC;AAC1D,CAAC;AAED,0DAA0D;AAC1D,SAAgB,cAAc;IAC5B,OAAO,oBAAoB,EAAE,KAAK,SAAS,CAAC;AAC9C,CAAC;AAED,SAAgB,qBAAqB,CAAC,GAAW,EAAE,IAAc;IAC/D,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/E,CAAC;AAED;;GAEG;AACH,MAAa,sBAAuB,SAAQ,KAAK;IAC/C,YACS,GAAW,EACX,IAAc,EACd,QAA4B,EAC5B,MAAc,EACd,SAAiB,EAAE;QAE1B,MAAM,aAAa,GAAG,qBAAqB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,kBAAkB,CACjC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,KAAK,CACjD,CAAC;QACF,KAAK,CACH,kBAAkB,aAAa,KAAK;YAClC,iBAAiB,QAAQ,2BAA2B,QAAQ,iCAAiC,CAChG,CAAC;QAbK,QAAG,GAAH,GAAG,CAAQ;QACX,SAAI,GAAJ,IAAI,CAAU;QACd,aAAQ,GAAR,QAAQ,CAAoB;QAC5B,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAa;IAU5B,CAAC;CACF;AAjBD,wDAiBC;AAED,SAAgB,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC;AAC3D,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,sBAAsB,GAAG,KAAK,CAAC;AAErC;;;;;GAKG;AACI,KAAK,UAAU,OAAO,CAC3B,GAAW,EACX,OAAiB,EAAE,EACnB,OAAqD,EAAE;IAEvD,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE;QAC1D,gBAAgB,EAAE,IAAI;QACtB,SAAS,EAAE;YACT,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvB,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAChC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;oBACzB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;YACD,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;gBACvB,IAAI,cAAc,GAAG,CAAC,CAAC;gBACvB,0FAA0F;gBAC1F,IAAI,IAAI,CAAC,MAAM,GAAG,sBAAsB,GAAG,CAAC,EAAE,CAAC;oBAC7C,qEAAqE;oBACrE,cAAc,GAAG,IAAI,CAAC,MAAM,GAAG,sBAAsB,GAAG,CAAC,CAAC;gBAC5D,CAAC;gBACD,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;gBAChD,4EAA4E;gBAC5E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC7B,CAAC;SACF;QACD,MAAM,EAAE,IAAI;QACZ,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChE,CAAC,CAAC,IAAI,EAAE,CAAC;IACV,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,sBAAsB,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,kBAAkB,GAAG,kBAAkB,CAAC;AAE9C;;;;GAIG;AACI,MAAM,aAAa,GAAG;IAC3B,MAAM,yBAAyB,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAClE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CACtC,CAAC;IACF,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC,CAAC,CAAC;AAChF,CAAC,CAAC;AALW,QAAA,aAAa,iBAKxB;AAEF;;GAEG;AACI,MAAM,aAAa,GAAG;IAC3B,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAC1D,IAAI,eAAe,EAAE,CAAC;QACpB,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;YACxD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAC5B,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAPW,QAAA,aAAa,iBAOxB;AAOF;;;;;GAKG;AACH,SAAgB,sBAAsB;IACpC,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC;IACxD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO;YACL,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG;YAC1B,uEAAuE;YACvE,uEAAuE;YACvE,yDAAyD;YACzD,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,KAAK;SAC7B,CAAC;IACJ,CAAC;IAED,0EAA0E;IAC1E,qEAAqE;IACrE,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IACtD,MAAM,sBAAsB,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC;IACrE,IAAI,eAAe,IAAI,sBAAsB,EAAE,CAAC;QAC9C,OAAO;YACL,IAAI,EAAE,sBAAsB;YAC5B,yEAAyE;YACzE,6DAA6D;YAC7D,IAAI,EAAE,eAAe;SACtB,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAgB,sBAAsB;IACpC,OAAO,sBAAsB,EAAE,KAAK,SAAS,CAAC;AAChD,CAAC;AAED;;;GAGG;AACH,MAAM,sBAAsB,GAA2B;IACrD,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,OAAO;IACZ,CAAC,EAAE,OAAO;IACV,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,aAAa;IACnB,UAAU,EAAE,uBAAuB;IACnC,UAAU,EAAE,uBAAuB;IACnC,MAAM,EAAE,aAAa;CACtB,CAAC;AAEF;;GAEG;AACH,SAAgB,sBAAsB,CACpC,MAAc,EACd,QAAiB;IAEjB,8EAA8E;IAC9E,kFAAkF;IAClF,yCAAyC;IACzC,IACE,QAAQ,KAAK,SAAS;QACtB,cAAc,EAAE;QAChB,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,EACjC,CAAC;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,cAAc,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,WAAW,GAAG,aAAa,cAAc,EAAE,CAAC;YAClD,MAAM,CAAC,IAAI,CACT,4CAA4C,QAAQ,SAAS,WAAW,IAAI,CAC7E,CAAC;YACF,OAAO,WAAW,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC"} \ No newline at end of file diff --git a/lib/cli-errors.js b/lib/cli-errors.js index 7c0969036c..bd8ceedcc0 100644 --- a/lib/cli-errors.js +++ b/lib/cli-errors.js @@ -1,11 +1,16 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.cliErrorsConfig = exports.CliConfigErrorCategory = exports.CliError = void 0; -exports.getCliConfigCategoryIfExists = getCliConfigCategoryIfExists; exports.wrapCliConfigurationError = wrapCliConfigurationError; const actions_util_1 = require("./actions-util"); const doc_url_1 = require("./doc-url"); const util_1 = require("./util"); +const SUPPORTED_PLATFORMS = [ + ["linux", "x64"], + ["win32", "x64"], + ["darwin", "x64"], + ["darwin", "arm64"], +]; /** * An error from a CodeQL CLI invocation, with associated exit code, stderr, etc. */ @@ -151,7 +156,7 @@ exports.cliErrorsConfig = { }, [CliConfigErrorCategory.GradleBuildFailed]: { cliErrorMessageCandidates: [ - new RegExp("[autobuild] FAILURE: Build failed with an exception."), + new RegExp("\\[autobuild\\] FAILURE: Build failed with an exception."), ], }, // Version of CodeQL CLI is incompatible with this version of the CodeQL Action @@ -272,11 +277,29 @@ function getCliConfigCategoryIfExists(cliError) { return undefined; } /** - * Changes an error received from the CLI to a ConfigurationError with optionally an extra - * error message appended, if it exists in a known set of configuration errors. Otherwise, + * Check if we are running on an unsupported platform/architecture combination. + */ +function isUnsupportedPlatform() { + return !SUPPORTED_PLATFORMS.some(([platform, arch]) => platform === process.platform && arch === process.arch); +} +/** + * Transform a CLI error into a ConfigurationError for an unsupported platform. + */ +function getUnsupportedPlatformError(cliError) { + return new util_1.ConfigurationError("The CodeQL CLI does not support the platform/architecture combination of " + + `${process.platform}/${process.arch} ` + + `(see ${doc_url_1.DocUrl.SYSTEM_REQUIREMENTS}). ` + + `The underlying error was: ${cliError.message}`); +} +/** + * Changes an error received from the CLI to a ConfigurationError with the message + * optionally being transformed, if it is a known configuration error. Otherwise, * simply returns the original error. */ function wrapCliConfigurationError(cliError) { + if (isUnsupportedPlatform()) { + return getUnsupportedPlatformError(cliError); + } const cliConfigErrorCategory = getCliConfigCategoryIfExists(cliError); if (cliConfigErrorCategory === undefined) { return cliError; diff --git a/lib/cli-errors.js.map b/lib/cli-errors.js.map index fc8697dca0..23a77d4ca3 100644 --- a/lib/cli-errors.js.map +++ b/lib/cli-errors.js.map @@ -1 +1 @@ -{"version":3,"file":"cli-errors.js","sourceRoot":"","sources":["../src/cli-errors.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"cli-errors.js","sourceRoot":"","sources":["../src/cli-errors.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/cli-errors.test.js b/lib/cli-errors.test.js new file mode 100644 index 0000000000..72f624a54e --- /dev/null +++ b/lib/cli-errors.test.js @@ -0,0 +1,220 @@ +"use strict"; +var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { enumerable: true, get: function() { return m[k]; } }; + } + Object.defineProperty(o, k2, desc); +}) : (function(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +})); +var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); +}) : function(o, v) { + o["default"] = v; +}); +var __importStar = (this && this.__importStar) || (function () { + var ownKeys = function(o) { + ownKeys = Object.getOwnPropertyNames || function (o) { + var ar = []; + for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; + return ar; + }; + return ownKeys(o); + }; + return function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); + __setModuleDefault(result, mod); + return result; + }; +})(); +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +const ava_1 = __importDefault(require("ava")); +const sinon = __importStar(require("sinon")); +const actions_util_1 = require("./actions-util"); +const cli_errors_1 = require("./cli-errors"); +const testing_utils_1 = require("./testing-utils"); +const util_1 = require("./util"); +(0, testing_utils_1.setupTests)(ava_1.default); +(0, ava_1.default)("CliError constructor with fatal errors", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "finalize"], 32, "Running TRAP import for CodeQL database...\nA fatal error occurred: Evaluator heap must be at least 384.00 MiB\nA fatal error occurred: Dataset import failed with code 2"); + const cliError = new cli_errors_1.CliError(commandError); + t.is(cliError.exitCode, 32); + t.is(cliError.stderr, "Running TRAP import for CodeQL database...\nA fatal error occurred: Evaluator heap must be at least 384.00 MiB\nA fatal error occurred: Dataset import failed with code 2"); + t.true(cliError.message.includes("A fatal error occurred: Dataset import failed with code 2.")); + t.true(cliError.message.includes("Context: A fatal error occurred: Evaluator heap must be at least 384.00 MiB.")); +}); +(0, ava_1.default)("CliError constructor with single fatal error", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "create"], 1, "A fatal error occurred: Out of memory"); + const cliError = new cli_errors_1.CliError(commandError); + t.is(cliError.exitCode, 1); + t.true(cliError.message.includes("A fatal error occurred: Out of memory")); + t.false(cliError.message.includes("Context:")); +}); +(0, ava_1.default)("CliError constructor with autobuild errors", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "create"], 1, "[autobuild] [ERROR] Build failed\n[autobuild] [ERROR] Compilation error"); + const cliError = new cli_errors_1.CliError(commandError); + t.is(cliError.exitCode, 1); + t.true(cliError.message.includes("We were unable to automatically build your code")); + t.true(cliError.message.includes("Build failed\nCompilation error")); +}); +(0, ava_1.default)("CliError constructor with truncated autobuild errors", (t) => { + const stderr = Array.from({ length: 12 }, (_, i) => `[autobuild] [ERROR] Error ${i + 1}`).join("\n"); + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "create"], 1, stderr); + const cliError = new cli_errors_1.CliError(commandError); + t.true(cliError.message.includes("(truncated)")); + // Should only include first 10 errors plus truncation message + const errorLines = cliError.message + .split("Encountered the following error: ")[1] + .split("\n"); + t.is(errorLines.length, 11); // 10 errors + "(truncated)" +}); +(0, ava_1.default)("CliError constructor with generic error", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["version"], 1, "Some generic error message\nLast line of error"); + const cliError = new cli_errors_1.CliError(commandError); + t.is(cliError.exitCode, 1); + t.true(cliError.message.includes('Encountered a fatal error while running "codeql version"')); + t.true(cliError.message.includes("Exit code was 1 and last log line was: Last line of error.")); +}); +(0, ava_1.default)("CliError constructor with empty stderr", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["version"], 1, ""); + const cliError = new cli_errors_1.CliError(commandError); + t.true(cliError.message.includes("last log line was: n/a")); +}); +for (const [platform, arch] of [ + ["weird_plat", "x64"], + ["linux", "arm64"], + ["win32", "arm64"], +]) { + (0, ava_1.default)(`wrapCliConfigurationError - ${platform}/${arch} unsupported`, (t) => { + sinon.stub(process, "platform").value(platform); + sinon.stub(process, "arch").value(arch); + const commandError = new actions_util_1.CommandInvocationError("codeql", ["version"], 1, "Some error"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); + t.true(wrappedError.message.includes("CodeQL CLI does not support the platform/architecture combination")); + t.true(wrappedError.message.includes(`${platform}/${arch}`)); + }); +} +(0, ava_1.default)("wrapCliConfigurationError - supported platform", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["version"], 1, "Some error"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + // Should return the original error since platform is supported + t.is(wrappedError, cliError); +}); +(0, ava_1.default)("wrapCliConfigurationError - autobuild error", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "create"], 1, "We were unable to automatically build your code"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); + t.true(wrappedError.message.includes("We were unable to automatically build your code")); +}); +(0, ava_1.default)("wrapCliConfigurationError - init called twice", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "create"], 1, "Refusing to create databases /some/path but could not process any of it"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); + t.true(wrappedError.message.includes('Is the "init" action called twice in the same job?')); +}); +(0, ava_1.default)("wrapCliConfigurationError - no source code seen by exit code", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "finalize"], 32, "Some other error message"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); +}); +(0, ava_1.default)("wrapCliConfigurationError - no source code seen by message", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "finalize"], 1, "CodeQL detected code written in JavaScript but could not process any of it"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); +}); +(0, ava_1.default)("wrapCliConfigurationError - out of memory error with additional message", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "analyze"], 1, "CodeQL is out of memory."); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); + t.true(wrappedError.message.includes("For more information, see https://gh.io/troubleshooting-code-scanning/out-of-disk-or-memory")); +}); +(0, ava_1.default)("wrapCliConfigurationError - gradle build failed", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "create"], 1, "[autobuild] FAILURE: Build failed with an exception."); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); +}); +(0, ava_1.default)("wrapCliConfigurationError - maven build failed", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "create"], 1, "[autobuild] [ERROR] Failed to execute goal"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); +}); +(0, ava_1.default)("wrapCliConfigurationError - swift build failed", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "create"], 1, "[autobuilder/build] [build-command-failed] `autobuild` failed to run the build command"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); +}); +(0, ava_1.default)("wrapCliConfigurationError - pack cannot be found", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["pack", "install"], 1, "Query pack my-pack cannot be found. Check the spelling of the pack."); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); +}); +(0, ava_1.default)("wrapCliConfigurationError - pack missing auth", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["pack", "download"], 1, "GitHub Container registry returned 403 Forbidden"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); +}); +(0, ava_1.default)("wrapCliConfigurationError - invalid config file", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["database", "create"], 1, "Config file .codeql/config.yml is not valid"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); +}); +(0, ava_1.default)("wrapCliConfigurationError - incompatible CLI version", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["version"], 1, "is not compatible with this CodeQL CLI"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + t.true(wrappedError instanceof util_1.ConfigurationError); +}); +(0, ava_1.default)("wrapCliConfigurationError - unknown error remains unchanged", (t) => { + const commandError = new actions_util_1.CommandInvocationError("codeql", ["version"], 1, "Some unknown error that doesn't match any patterns"); + const cliError = new cli_errors_1.CliError(commandError); + const wrappedError = (0, cli_errors_1.wrapCliConfigurationError)(cliError); + // Should return the original CliError since it doesn't match any known patterns + t.is(wrappedError, cliError); + t.true(wrappedError instanceof cli_errors_1.CliError); + t.false(wrappedError instanceof util_1.ConfigurationError); +}); +// Test all error categories to ensure they're properly configured +(0, ava_1.default)("all CLI config error categories have valid configurations", (t) => { + const allCategories = Object.values(cli_errors_1.CliConfigErrorCategory); + for (const category of allCategories) { + // Each category should be a string + t.is(typeof category, "string"); + // Create a test error that matches this category + let testError; + switch (category) { + case cli_errors_1.CliConfigErrorCategory.NoSourceCodeSeen: + // This category matches by exit code + testError = new cli_errors_1.CliError(new actions_util_1.CommandInvocationError("codeql", [], 32, "some error")); + break; + default: + // For other categories, we'll test with a generic message that should not match + testError = new cli_errors_1.CliError(new actions_util_1.CommandInvocationError("codeql", [], 1, "generic error")); + break; + } + // The test should not throw an error when processing + t.notThrows(() => (0, cli_errors_1.wrapCliConfigurationError)(testError)); + } +}); +//# sourceMappingURL=cli-errors.test.js.map \ No newline at end of file diff --git a/lib/cli-errors.test.js.map b/lib/cli-errors.test.js.map new file mode 100644 index 0000000000..ddcab83ee4 --- /dev/null +++ b/lib/cli-errors.test.js.map @@ -0,0 +1 @@ +{"version":3,"file":"cli-errors.test.js","sourceRoot":"","sources":["../src/cli-errors.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/doc-url.js b/lib/doc-url.js index 241c52e730..53556b9b0f 100644 --- a/lib/doc-url.js +++ b/lib/doc-url.js @@ -13,5 +13,6 @@ var DocUrl; DocUrl["SPECIFY_BUILD_STEPS_MANUALLY"] = "https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages#about-specifying-build-steps-manually"; DocUrl["TRACK_CODE_SCANNING_ALERTS_ACROSS_RUNS"] = "https://docs.github.com/en/enterprise-cloud@latest/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning#providing-data-to-track-code-scanning-alerts-across-runs"; DocUrl["CODEQL_BUILD_MODES"] = "https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages#codeql-build-modes"; + DocUrl["SYSTEM_REQUIREMENTS"] = "https://codeql.github.com/docs/codeql-overview/system-requirements/"; })(DocUrl || (exports.DocUrl = DocUrl = {})); //# sourceMappingURL=doc-url.js.map \ No newline at end of file diff --git a/lib/doc-url.js.map b/lib/doc-url.js.map index 5c0e3e2201..d3e9927bdf 100644 --- a/lib/doc-url.js.map +++ b/lib/doc-url.js.map @@ -1 +1 @@ -{"version":3,"file":"doc-url.js","sourceRoot":"","sources":["../src/doc-url.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,IAAY,MAQX;AARD,WAAY,MAAM;IAChB,uHAA6G,CAAA;IAC7G,gJAAsI,CAAA;IACtI,yJAA+I,CAAA;IAC/I,qMAA2L,CAAA;IAC3L,gOAAsN,CAAA;IACtN,2PAAiP,CAAA;IACjP,mMAAyL,CAAA;AAC3L,CAAC,EARW,MAAM,sBAAN,MAAM,QAQjB"} \ No newline at end of file +{"version":3,"file":"doc-url.js","sourceRoot":"","sources":["../src/doc-url.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,IAAY,MASX;AATD,WAAY,MAAM;IAChB,uHAA6G,CAAA;IAC7G,gJAAsI,CAAA;IACtI,yJAA+I,CAAA;IAC/I,qMAA2L,CAAA;IAC3L,gOAAsN,CAAA;IACtN,2PAAiP,CAAA;IACjP,mMAAyL,CAAA;IACzL,qGAA2F,CAAA;AAC7F,CAAC,EATW,MAAM,sBAAN,MAAM,QASjB"} \ No newline at end of file diff --git a/src/actions-util.ts b/src/actions-util.ts index 966e17b069..8058e5772d 100644 --- a/src/actions-util.ts +++ b/src/actions-util.ts @@ -265,7 +265,7 @@ export class CommandInvocationError extends Error { public args: string[], public exitCode: number | undefined, public stderr: string, - public stdout: string, + public stdout: string = "", ) { const prettyCommand = prettyPrintInvocation(cmd, args); const lastLine = ensureEndsInPeriod( diff --git a/src/cli-errors.test.ts b/src/cli-errors.test.ts new file mode 100644 index 0000000000..a2c346ea94 --- /dev/null +++ b/src/cli-errors.test.ts @@ -0,0 +1,401 @@ +import test from "ava"; +import * as sinon from "sinon"; + +import { CommandInvocationError } from "./actions-util"; +import { + CliError, + CliConfigErrorCategory, + wrapCliConfigurationError, +} from "./cli-errors"; +import { setupTests } from "./testing-utils"; +import { ConfigurationError } from "./util"; + +setupTests(test); + +test("CliError constructor with fatal errors", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "finalize"], + 32, + "Running TRAP import for CodeQL database...\nA fatal error occurred: Evaluator heap must be at least 384.00 MiB\nA fatal error occurred: Dataset import failed with code 2", + ); + + const cliError = new CliError(commandError); + + t.is(cliError.exitCode, 32); + t.is( + cliError.stderr, + "Running TRAP import for CodeQL database...\nA fatal error occurred: Evaluator heap must be at least 384.00 MiB\nA fatal error occurred: Dataset import failed with code 2", + ); + t.true( + cliError.message.includes( + "A fatal error occurred: Dataset import failed with code 2.", + ), + ); + t.true( + cliError.message.includes( + "Context: A fatal error occurred: Evaluator heap must be at least 384.00 MiB.", + ), + ); +}); + +test("CliError constructor with single fatal error", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "create"], + 1, + "A fatal error occurred: Out of memory", + ); + + const cliError = new CliError(commandError); + + t.is(cliError.exitCode, 1); + t.true(cliError.message.includes("A fatal error occurred: Out of memory")); + t.false(cliError.message.includes("Context:")); +}); + +test("CliError constructor with autobuild errors", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "create"], + 1, + "[autobuild] [ERROR] Build failed\n[autobuild] [ERROR] Compilation error", + ); + + const cliError = new CliError(commandError); + + t.is(cliError.exitCode, 1); + t.true( + cliError.message.includes( + "We were unable to automatically build your code", + ), + ); + t.true(cliError.message.includes("Build failed\nCompilation error")); +}); + +test("CliError constructor with truncated autobuild errors", (t) => { + const stderr = Array.from( + { length: 12 }, + (_, i) => `[autobuild] [ERROR] Error ${i + 1}`, + ).join("\n"); + const commandError = new CommandInvocationError( + "codeql", + ["database", "create"], + 1, + stderr, + ); + + const cliError = new CliError(commandError); + + t.true(cliError.message.includes("(truncated)")); + // Should only include first 10 errors plus truncation message + const errorLines = cliError.message + .split("Encountered the following error: ")[1] + .split("\n"); + t.is(errorLines.length, 11); // 10 errors + "(truncated)" +}); + +test("CliError constructor with generic error", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["version"], + 1, + "Some generic error message\nLast line of error", + ); + + const cliError = new CliError(commandError); + + t.is(cliError.exitCode, 1); + t.true( + cliError.message.includes( + 'Encountered a fatal error while running "codeql version"', + ), + ); + t.true( + cliError.message.includes( + "Exit code was 1 and last log line was: Last line of error.", + ), + ); +}); + +test("CliError constructor with empty stderr", (t) => { + const commandError = new CommandInvocationError("codeql", ["version"], 1, ""); + + const cliError = new CliError(commandError); + + t.true(cliError.message.includes("last log line was: n/a")); +}); + +for (const [platform, arch] of [ + ["weird_plat", "x64"], + ["linux", "arm64"], + ["win32", "arm64"], +]) { + test(`wrapCliConfigurationError - ${platform}/${arch} unsupported`, (t) => { + sinon.stub(process, "platform").value(platform); + sinon.stub(process, "arch").value(arch); + const commandError = new CommandInvocationError( + "codeql", + ["version"], + 1, + "Some error", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); + t.true( + wrappedError.message.includes( + "CodeQL CLI does not support the platform/architecture combination", + ), + ); + t.true(wrappedError.message.includes(`${platform}/${arch}`)); + }); +} + +test("wrapCliConfigurationError - supported platform", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["version"], + 1, + "Some error", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + // Should return the original error since platform is supported + t.is(wrappedError, cliError); +}); + +test("wrapCliConfigurationError - autobuild error", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "create"], + 1, + "We were unable to automatically build your code", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); + t.true( + wrappedError.message.includes( + "We were unable to automatically build your code", + ), + ); +}); + +test("wrapCliConfigurationError - init called twice", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "create"], + 1, + "Refusing to create databases /some/path but could not process any of it", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); + t.true( + wrappedError.message.includes( + 'Is the "init" action called twice in the same job?', + ), + ); +}); + +test("wrapCliConfigurationError - no source code seen by exit code", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "finalize"], + 32, + "Some other error message", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); +}); + +test("wrapCliConfigurationError - no source code seen by message", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "finalize"], + 1, + "CodeQL detected code written in JavaScript but could not process any of it", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); +}); + +test("wrapCliConfigurationError - out of memory error with additional message", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "analyze"], + 1, + "CodeQL is out of memory.", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); + t.true( + wrappedError.message.includes( + "For more information, see https://gh.io/troubleshooting-code-scanning/out-of-disk-or-memory", + ), + ); +}); + +test("wrapCliConfigurationError - gradle build failed", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "create"], + 1, + "[autobuild] FAILURE: Build failed with an exception.", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); +}); + +test("wrapCliConfigurationError - maven build failed", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "create"], + 1, + "[autobuild] [ERROR] Failed to execute goal", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); +}); + +test("wrapCliConfigurationError - swift build failed", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "create"], + 1, + "[autobuilder/build] [build-command-failed] `autobuild` failed to run the build command", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); +}); + +test("wrapCliConfigurationError - pack cannot be found", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["pack", "install"], + 1, + "Query pack my-pack cannot be found. Check the spelling of the pack.", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); +}); + +test("wrapCliConfigurationError - pack missing auth", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["pack", "download"], + 1, + "GitHub Container registry returned 403 Forbidden", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); +}); + +test("wrapCliConfigurationError - invalid config file", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["database", "create"], + 1, + "Config file .codeql/config.yml is not valid", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); +}); + +test("wrapCliConfigurationError - incompatible CLI version", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["version"], + 1, + "is not compatible with this CodeQL CLI", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + t.true(wrappedError instanceof ConfigurationError); +}); + +test("wrapCliConfigurationError - unknown error remains unchanged", (t) => { + const commandError = new CommandInvocationError( + "codeql", + ["version"], + 1, + "Some unknown error that doesn't match any patterns", + ); + const cliError = new CliError(commandError); + + const wrappedError = wrapCliConfigurationError(cliError); + + // Should return the original CliError since it doesn't match any known patterns + t.is(wrappedError, cliError); + t.true(wrappedError instanceof CliError); + t.false(wrappedError instanceof ConfigurationError); +}); + +// Test all error categories to ensure they're properly configured +test("all CLI config error categories have valid configurations", (t) => { + const allCategories = Object.values(CliConfigErrorCategory); + + for (const category of allCategories) { + // Each category should be a string + t.is(typeof category, "string"); + + // Create a test error that matches this category + let testError: CliError; + + switch (category) { + case CliConfigErrorCategory.NoSourceCodeSeen: + // This category matches by exit code + testError = new CliError( + new CommandInvocationError("codeql", [], 32, "some error"), + ); + break; + default: + // For other categories, we'll test with a generic message that should not match + testError = new CliError( + new CommandInvocationError("codeql", [], 1, "generic error"), + ); + break; + } + + // The test should not throw an error when processing + t.notThrows(() => wrapCliConfigurationError(testError)); + } +}); diff --git a/src/cli-errors.ts b/src/cli-errors.ts index 4164db3689..3d1b262dd7 100644 --- a/src/cli-errors.ts +++ b/src/cli-errors.ts @@ -6,6 +6,13 @@ import { import { DocUrl } from "./doc-url"; import { ConfigurationError } from "./util"; +const SUPPORTED_PLATFORMS = [ + ["linux", "x64"], + ["win32", "x64"], + ["darwin", "x64"], + ["darwin", "arm64"], +]; + /** * An error from a CodeQL CLI invocation, with associated exit code, stderr, etc. */ @@ -171,7 +178,7 @@ export const cliErrorsConfig: Record< }, [CliConfigErrorCategory.GradleBuildFailed]: { cliErrorMessageCandidates: [ - new RegExp("[autobuild] FAILURE: Build failed with an exception."), + new RegExp("\\[autobuild\\] FAILURE: Build failed with an exception."), ], }, // Version of CodeQL CLI is incompatible with this version of the CodeQL Action @@ -294,7 +301,7 @@ export const cliErrorsConfig: Record< * the error messages in the config record, or the exit codes match, return the error category; * if not, return undefined. */ -export function getCliConfigCategoryIfExists( +function getCliConfigCategoryIfExists( cliError: CliError, ): CliConfigErrorCategory | undefined { for (const [category, configuration] of Object.entries(cliErrorsConfig)) { @@ -317,11 +324,37 @@ export function getCliConfigCategoryIfExists( } /** - * Changes an error received from the CLI to a ConfigurationError with optionally an extra - * error message appended, if it exists in a known set of configuration errors. Otherwise, + * Check if we are running on an unsupported platform/architecture combination. + */ +function isUnsupportedPlatform(): boolean { + return !SUPPORTED_PLATFORMS.some( + ([platform, arch]) => + platform === process.platform && arch === process.arch, + ); +} + +/** + * Transform a CLI error into a ConfigurationError for an unsupported platform. + */ +function getUnsupportedPlatformError(cliError: CliError): ConfigurationError { + return new ConfigurationError( + "The CodeQL CLI does not support the platform/architecture combination of " + + `${process.platform}/${process.arch} ` + + `(see ${DocUrl.SYSTEM_REQUIREMENTS}). ` + + `The underlying error was: ${cliError.message}`, + ); +} + +/** + * Changes an error received from the CLI to a ConfigurationError with the message + * optionally being transformed, if it is a known configuration error. Otherwise, * simply returns the original error. */ export function wrapCliConfigurationError(cliError: CliError): Error { + if (isUnsupportedPlatform()) { + return getUnsupportedPlatformError(cliError); + } + const cliConfigErrorCategory = getCliConfigCategoryIfExists(cliError); if (cliConfigErrorCategory === undefined) { return cliError; diff --git a/src/doc-url.ts b/src/doc-url.ts index 59096fde78..f2f3b2c77e 100644 --- a/src/doc-url.ts +++ b/src/doc-url.ts @@ -10,4 +10,5 @@ export enum DocUrl { SPECIFY_BUILD_STEPS_MANUALLY = "https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages#about-specifying-build-steps-manually", TRACK_CODE_SCANNING_ALERTS_ACROSS_RUNS = "https://docs.github.com/en/enterprise-cloud@latest/code-security/code-scanning/integrating-with-code-scanning/sarif-support-for-code-scanning#providing-data-to-track-code-scanning-alerts-across-runs", CODEQL_BUILD_MODES = "https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages#codeql-build-modes", + SYSTEM_REQUIREMENTS = "https://codeql.github.com/docs/codeql-overview/system-requirements/", }