beachball 3.0.0-alpha.4 → 3.0.0-alpha.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (173) hide show
  1. package/README.md +14 -12
  2. package/dist/NOTICE.txt +540 -0
  3. package/dist/github-app-token.mjs +6003 -0
  4. package/lib/bump/bumpInMemory.d.ts.map +1 -1
  5. package/lib/bump/bumpInMemory.js +1 -0
  6. package/lib/bump/bumpInMemory.js.map +1 -1
  7. package/lib/bump/performBump.d.ts.map +1 -1
  8. package/lib/bump/performBump.js +2 -3
  9. package/lib/bump/performBump.js.map +1 -1
  10. package/lib/changefile/writeChangeFiles.d.ts +1 -1
  11. package/lib/changefile/writeChangeFiles.d.ts.map +1 -1
  12. package/lib/changefile/writeChangeFiles.js +2 -2
  13. package/lib/changefile/writeChangeFiles.js.map +1 -1
  14. package/lib/changelog/getPackageChangelogs.d.ts.map +1 -1
  15. package/lib/changelog/getPackageChangelogs.js +7 -17
  16. package/lib/changelog/getPackageChangelogs.js.map +1 -1
  17. package/lib/changelog/writeChangelog.js +2 -3
  18. package/lib/changelog/writeChangelog.js.map +1 -1
  19. package/lib/cli.js +20 -37
  20. package/lib/cli.js.map +1 -1
  21. package/lib/commands/bump.d.ts +0 -2
  22. package/lib/commands/bump.d.ts.map +1 -1
  23. package/lib/commands/bump.js +4 -3
  24. package/lib/commands/bump.js.map +1 -1
  25. package/lib/commands/canary.d.ts +0 -2
  26. package/lib/commands/canary.d.ts.map +1 -1
  27. package/lib/commands/canary.js +4 -3
  28. package/lib/commands/canary.js.map +1 -1
  29. package/lib/commands/change.d.ts +0 -2
  30. package/lib/commands/change.d.ts.map +1 -1
  31. package/lib/commands/change.js +8 -4
  32. package/lib/commands/change.js.map +1 -1
  33. package/lib/commands/configGet.d.ts.map +1 -1
  34. package/lib/commands/configGet.js +4 -2
  35. package/lib/commands/configGet.js.map +1 -1
  36. package/lib/commands/migrate.d.ts.map +1 -1
  37. package/lib/commands/migrate.js +40 -0
  38. package/lib/commands/migrate.js.map +1 -1
  39. package/lib/commands/publish.d.ts +0 -2
  40. package/lib/commands/publish.d.ts.map +1 -1
  41. package/lib/commands/publish.js +4 -3
  42. package/lib/commands/publish.js.map +1 -1
  43. package/lib/commands/sync.d.ts +0 -2
  44. package/lib/commands/sync.d.ts.map +1 -1
  45. package/lib/commands/sync.js +5 -6
  46. package/lib/commands/sync.js.map +1 -1
  47. package/lib/env.d.ts +1 -0
  48. package/lib/env.d.ts.map +1 -1
  49. package/lib/env.js +2 -1
  50. package/lib/env.js.map +1 -1
  51. package/lib/githubAuth/appTokenBin.d.ts +2 -0
  52. package/lib/githubAuth/appTokenBin.d.ts.map +1 -0
  53. package/lib/githubAuth/appTokenBin.js +13 -0
  54. package/lib/githubAuth/appTokenBin.js.map +1 -0
  55. package/lib/githubAuth/appTokenCli.d.ts +15 -0
  56. package/lib/githubAuth/appTokenCli.d.ts.map +1 -0
  57. package/lib/githubAuth/appTokenCli.js +88 -0
  58. package/lib/githubAuth/appTokenCli.js.map +1 -0
  59. package/lib/githubAuth/createAppTokenHelper.d.ts +7 -0
  60. package/lib/githubAuth/createAppTokenHelper.d.ts.map +1 -0
  61. package/lib/githubAuth/createAppTokenHelper.js +93 -0
  62. package/lib/githubAuth/createAppTokenHelper.js.map +1 -0
  63. package/lib/githubAuth/requestHelpers.d.ts +11 -0
  64. package/lib/githubAuth/requestHelpers.d.ts.map +1 -0
  65. package/lib/githubAuth/requestHelpers.js +64 -0
  66. package/lib/githubAuth/requestHelpers.js.map +1 -0
  67. package/lib/githubAuth/revokeAppToken.d.ts +6 -0
  68. package/lib/githubAuth/revokeAppToken.d.ts.map +1 -0
  69. package/lib/githubAuth/revokeAppToken.js +15 -0
  70. package/lib/githubAuth/revokeAppToken.js.map +1 -0
  71. package/lib/githubAuth/signWithAzureCli.d.ts +14 -0
  72. package/lib/githubAuth/signWithAzureCli.d.ts.map +1 -0
  73. package/lib/githubAuth/signWithAzureCli.js +64 -0
  74. package/lib/githubAuth/signWithAzureCli.js.map +1 -0
  75. package/lib/githubAuth/types.d.ts +62 -0
  76. package/lib/githubAuth/types.d.ts.map +1 -0
  77. package/lib/githubAuth/types.js +3 -0
  78. package/lib/githubAuth/types.js.map +1 -0
  79. package/lib/githubAuth/validationHelpers.d.ts +20 -0
  80. package/lib/githubAuth/validationHelpers.d.ts.map +1 -0
  81. package/lib/githubAuth/validationHelpers.js +98 -0
  82. package/lib/githubAuth/validationHelpers.js.map +1 -0
  83. package/lib/monorepo/createCommandContext.d.ts +4 -10
  84. package/lib/monorepo/createCommandContext.d.ts.map +1 -1
  85. package/lib/monorepo/createCommandContext.js +15 -11
  86. package/lib/monorepo/createCommandContext.js.map +1 -1
  87. package/lib/monorepo/getPackageGroups.d.ts.map +1 -1
  88. package/lib/monorepo/getPackageGroups.js +1 -1
  89. package/lib/monorepo/getPackageGroups.js.map +1 -1
  90. package/lib/monorepo/getPackageInfos.d.ts +1 -3
  91. package/lib/monorepo/getPackageInfos.d.ts.map +1 -1
  92. package/lib/monorepo/getPackageInfos.js +13 -8
  93. package/lib/monorepo/getPackageInfos.js.map +1 -1
  94. package/lib/monorepo/getScopedPackages.d.ts.map +1 -1
  95. package/lib/monorepo/getScopedPackages.js +3 -2
  96. package/lib/monorepo/getScopedPackages.js.map +1 -1
  97. package/lib/monorepo/isPathIncluded.d.ts +9 -7
  98. package/lib/monorepo/isPathIncluded.d.ts.map +1 -1
  99. package/lib/monorepo/isPathIncluded.js +4 -14
  100. package/lib/monorepo/isPathIncluded.js.map +1 -1
  101. package/lib/options/BeachballCommand.d.ts +49 -0
  102. package/lib/options/BeachballCommand.d.ts.map +1 -0
  103. package/lib/options/BeachballCommand.js +115 -0
  104. package/lib/options/BeachballCommand.js.map +1 -0
  105. package/lib/options/BeachballHelp.d.ts +66 -0
  106. package/lib/options/BeachballHelp.d.ts.map +1 -0
  107. package/lib/options/BeachballHelp.js +217 -0
  108. package/lib/options/BeachballHelp.js.map +1 -0
  109. package/lib/options/BeachballOption.d.ts +54 -0
  110. package/lib/options/BeachballOption.d.ts.map +1 -0
  111. package/lib/options/BeachballOption.js +99 -0
  112. package/lib/options/BeachballOption.js.map +1 -0
  113. package/lib/options/commandDefinitions.d.ts +24 -0
  114. package/lib/options/commandDefinitions.d.ts.map +1 -0
  115. package/lib/options/commandDefinitions.js +43 -0
  116. package/lib/options/commandDefinitions.js.map +1 -0
  117. package/lib/options/getCliOptions.d.ts +27 -4
  118. package/lib/options/getCliOptions.d.ts.map +1 -1
  119. package/lib/options/getCliOptions.js +48 -137
  120. package/lib/options/getCliOptions.js.map +1 -1
  121. package/lib/options/getDefaultOptions.d.ts.map +1 -1
  122. package/lib/options/getDefaultOptions.js +0 -1
  123. package/lib/options/getDefaultOptions.js.map +1 -1
  124. package/lib/options/getOptions.d.ts +3 -8
  125. package/lib/options/getOptions.d.ts.map +1 -1
  126. package/lib/options/getOptions.js +1 -15
  127. package/lib/options/getOptions.js.map +1 -1
  128. package/lib/options/getPackageInfosWithOptions.d.ts +0 -2
  129. package/lib/options/getPackageInfosWithOptions.d.ts.map +1 -1
  130. package/lib/options/getPackageInfosWithOptions.js +8 -6
  131. package/lib/options/getPackageInfosWithOptions.js.map +1 -1
  132. package/lib/options/optionDefinitions.d.ts +67 -0
  133. package/lib/options/optionDefinitions.d.ts.map +1 -0
  134. package/lib/options/optionDefinitions.js +209 -0
  135. package/lib/options/optionDefinitions.js.map +1 -0
  136. package/lib/publish/bumpAndPush.d.ts.map +1 -1
  137. package/lib/publish/bumpAndPush.js +9 -3
  138. package/lib/publish/bumpAndPush.js.map +1 -1
  139. package/lib/types/BeachballOptions.d.ts +24 -7
  140. package/lib/types/BeachballOptions.d.ts.map +1 -1
  141. package/lib/types/BumpInfo.d.ts +2 -0
  142. package/lib/types/BumpInfo.d.ts.map +1 -1
  143. package/lib/types/ChangeLog.d.ts +4 -8
  144. package/lib/types/ChangeLog.d.ts.map +1 -1
  145. package/lib/types/ChangelogOptions.d.ts +2 -4
  146. package/lib/types/ChangelogOptions.d.ts.map +1 -1
  147. package/lib/validation/isValidAuthType.d.ts +2 -0
  148. package/lib/validation/isValidAuthType.d.ts.map +1 -1
  149. package/lib/validation/isValidAuthType.js +3 -2
  150. package/lib/validation/isValidAuthType.js.map +1 -1
  151. package/lib/validation/isValidChangelogOptions.d.ts.map +1 -1
  152. package/lib/validation/isValidChangelogOptions.js +22 -4
  153. package/lib/validation/isValidChangelogOptions.js.map +1 -1
  154. package/lib/validation/isValidGroupOptions.d.ts.map +1 -1
  155. package/lib/validation/isValidGroupOptions.js +9 -0
  156. package/lib/validation/isValidGroupOptions.js.map +1 -1
  157. package/lib/validation/validate.d.ts +1 -3
  158. package/lib/validation/validate.d.ts.map +1 -1
  159. package/lib/validation/validate.js +17 -7
  160. package/lib/validation/validate.js.map +1 -1
  161. package/package.json +7 -5
  162. package/lib/bump/gatherBumpInfo.d.ts +0 -8
  163. package/lib/bump/gatherBumpInfo.d.ts.map +0 -1
  164. package/lib/bump/gatherBumpInfo.js +0 -13
  165. package/lib/bump/gatherBumpInfo.js.map +0 -1
  166. package/lib/git/tempGetDefaultRemoteBranch.d.ts +0 -39
  167. package/lib/git/tempGetDefaultRemoteBranch.d.ts.map +0 -1
  168. package/lib/git/tempGetDefaultRemoteBranch.js +0 -72
  169. package/lib/git/tempGetDefaultRemoteBranch.js.map +0 -1
  170. package/lib/help.d.ts +0 -3
  171. package/lib/help.d.ts.map +0 -1
  172. package/lib/help.js +0 -103
  173. package/lib/help.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":";;;;;AAcA,0BAgCC;AA9CD,4CAAoB;AACpB,gDAAwB;AACxB,qDAAqF;AACrF,0DAAwE;AACxE,iEAAiE;AACjE,4DAAyD;AAGzD;;;;;GAKG;AACH,SAAgB,OAAO,CAAC,aAA4B;IAClD,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC;IAC/C,MAAM,OAAO,GAAe,EAAE,CAAC;IAC/B,MAAM,QAAQ,GAAe,EAAE,CAAC;IAEhC,MAAM,eAAe,GAAG,IAAA,oCAAkB,EAAC;QACzC,WAAW,EAAE,OAAO,CAAC,IAAI;QACzB,WAAW,EAAE,IAAA,iCAAe,EAAC,OAAO,CAAC,IAAI,CAAC;QAC1C,OAAO;KACR,CAAC,CAAC;IAEH,IAAK,WAAiC,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;IACxF,CAAC;IAED,IAAI,eAAe,EAAE,CAAC;QACpB,kBAAkB,CAAC,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QAC3D,kBAAkB,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;QACnE,OAAO,CAAC,IAAI,CAAC,IAAA,2BAAY,EAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAC1D,OAAO,CAAC,KAAK,CAAC,IAAA,2BAAY,EAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;QAC5C,MAAM,IAAI,+BAAc,CAAC,uBAAuB,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,MAI3B;IACC,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAEtD,sEAAsE;IACtE,MAAM,yBAAyB,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,aAAa,KAAK,KAAK,CAAC,CAAC;IACxG,MAAM,gCAAgC,GAAG,yBAAyB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC9F,MAAM,+BAA+B,GAAG,yBAAyB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAE9F,IAAI,gCAAgC,CAAC,MAAM,EAAE,CAAC;QAC5C,OAAO,CAAC,IAAI,CACV,yDAAyD;YACvD,wEAAwE,EAC1E,gCAAgC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CACxE,CAAC;IACJ,CAAC;IAED,IAAI,+BAA+B,CAAC,MAAM,EAAE,CAAC;QAC3C,QAAQ,CAAC,IAAI,CACX,uGAAuG;YACrG,4FAA4F,EAC9F,+BAA+B,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,EAAE,CACvE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,MAK3B;IACC,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;IAClE,IAAI,WAAW,CAAC,iBAAiB,KAAK,SAAS,EAAE,CAAC;QAChD,mDAAmD;QACnD,OAAO;IACT,CAAC;IAED,MAAM,iBAAiB,GAAG;QACxB,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,cAAI,CAAC,IAAI,CAAC,cAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAC7F,GAAG,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAC7C,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAClE,IAAI,EAAE,CAAC;KACT,CAAC;IACF,MAAM,cAAc,GAAG,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IAE7E,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO,CAAC,IAAI,CACV,uFAAuF;YACrF,oEAAoE,EACtE;YACE,6FAA6F;YAC7F,0DAA0D;YAC1D,cAAc,CAAC,IAAI,EAAE;SACtB,CACF,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,4 @@ import type { CommandContext } from '../types/CommandContext';
5
5
  * @param context Command context from `validate()`
6
6
  */
7
7
  export declare function publish(options: BeachballOptions, context: CommandContext): Promise<void>;
8
- /** @deprecated Use other signature */
9
- export declare function publish(options: BeachballOptions): Promise<void>;
10
8
  //# sourceMappingURL=publish.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAElE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAG9D;;;GAGG;AACH,wBAAsB,OAAO,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AACjG,sCAAsC;AACtC,wBAAsB,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAElE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAG9D;;;GAGG;AACH,wBAAsB,OAAO,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAiH/F"}
@@ -7,15 +7,16 @@ exports.publish = publish;
7
7
  const prompts_1 = __importDefault(require("prompts"));
8
8
  const workspace_tools_1 = require("workspace-tools");
9
9
  const bumpInMemory_1 = require("../bump/bumpInMemory");
10
- const createCommandContext_1 = require("../monorepo/createCommandContext");
11
10
  const bumpAndPush_1 = require("../publish/bumpAndPush");
12
11
  const publishToRegistry_1 = require("../publish/publishToRegistry");
13
12
  const npmAuthEnvPassthrough_1 = require("../packageManager/npmAuthEnvPassthrough");
13
+ /**
14
+ * Potentially bump, publish, and push package changes depending on options.
15
+ * @param context Command context from `validate()`
16
+ */
14
17
  async function publish(options, context) {
15
18
  console.log('Preparing to publish\n');
16
19
  const { path: cwd, branch, registry, tag, packToPath } = options;
17
- // eslint-disable-next-line @ms-cloudpack/no-deprecated -- compat code
18
- context ??= (0, createCommandContext_1.createCommandContext)(options);
19
20
  // First, validate that we have changes to publish
20
21
  const { changeSet: changes } = context;
21
22
  if (!changes.length) {
@@ -1 +1 @@
1
- {"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"publish.js","sourceRoot":"","sources":["../../src/commands/publish.ts"],"names":[],"mappings":";;;;;AAcA,0BAiHC;AA/HD,sDAA8B;AAC9B,qDAAkF;AAClF,uDAAoD;AACpD,wDAAqD;AACrD,oEAAiE;AAIjE,mFAAqF;AAErF;;;GAGG;AACI,KAAK,UAAU,OAAO,CAAC,OAAyB,EAAE,OAAuB;IAC9E,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAEtC,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAEjE,kDAAkD;IAClD,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAEvC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,MAAM,aAAa,GAAG,IAAA,+BAAa,EAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,IAAA,gCAAc,EAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5C,MAAM,iBAAiB,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;IAErE,OAAO,CAAC,GAAG,CAAC;;cAEA,QAAQ;;oBAEF,aAAa;kBACf,WAAW;mBACV,MAAM;kBACP,GAAG;;0BAEK,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;IAE3F,UAAU;QACR,CAAC,CAAC,wDAAwD,UAAU,EAAE;QACtE,CAAC,CAAC,8BAA8B,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAClE;gBACc,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,wBAC9D,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAC9B;;CAED,CAAC,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACjB,MAAM,QAAQ,GAAG,MAAM,IAAA,iBAAO,EAAC;YAC7B,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,sEAAsE;SAChF,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,sFAAsF;QACtF,MAAM,IAAA,kDAA0B,EAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,0BAA0B;IAC1B,MAAM,aAAa,GAAG,WAAW,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;IAE9C,OAAO,CAAC,GAAG,CAAC,qCAAqC,aAAa,IAAI,CAAC,CAAC;IACpE,IAAA,6BAAW,EAAC,CAAC,UAAU,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAExD,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACtB,iEAAiE;QACjE,OAAO,CAAC,GAAG,CAAC,kBAAkB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,4BAA4B,IAAI,CAAC,CAAC;QACpG,OAAO,CAAC,QAAQ,GAAG,IAAA,2BAAY,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,QAAQ,GAAa,OAAO,CAAC,QAAQ,CAAC;IAE5C,qCAAqC;IACrC,qBAAqB;IACrB,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,EAAE,CAAC;QAClC,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,uBAAuB,UAAU,EAAE,CAAC,CAAC,CAAC,qCAAqC,CAAC;QAChH,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI;YAC1B,CAAC,CAAC,wBAAwB,cAAc,EAAE;YAC1C,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;QAE5B,MAAM,IAAA,qCAAiB,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IACpC,CAAC;IAED,UAAU;IACV,gFAAgF;IAChF,qCAAqC;IACrC,IAAI,iBAAiB,EAAE,CAAC;QACtB,oCAAoC;QACpC,MAAM,IAAA,yBAAW,EAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACjD,CAAC;IAED,UAAU;IACV,iEAAiE;IACjE,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAE7B,IAAI,aAAa,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,gBAAgB,aAAa,EAAE,CAAC,CAAC;QAC7C,IAAA,6BAAW,EAAC,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IACpD,CAAC;SAAM,IAAI,WAAW,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,gBAAgB,WAAW,EAAE,CAAC,CAAC;QAC3C,IAAA,6BAAW,EAAC,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,aAAa,IAAI,WAAW,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,qCAAqC,aAAa,EAAE,CAAC,CAAC;QAClE,MAAM,cAAc,GAAG,IAAA,qBAAG,EAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QACrE,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YAC5B,OAAO,CAAC,IAAI,CAAC,sCAAsC,aAAa,iBAAiB,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5G,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -5,6 +5,4 @@ export type SyncCommandContext = Pick<BasicCommandContext, 'originalPackageInfos
5
5
  * Sync with the latest versions on the registry.
6
6
  */
7
7
  export declare function sync(options: BeachballOptions, context: SyncCommandContext): Promise<void>;
8
- /** @deprecated Use other signature */
9
- export declare function sync(options: BeachballOptions): Promise<void>;
10
8
  //# sourceMappingURL=sync.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAQlE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,mBAAmB,EAAE,sBAAsB,GAAG,gBAAgB,CAAC,CAAC;AAEtG;;GAEG;AACH,wBAAsB,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAClG,sCAAsC;AACtC,wBAAsB,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAKlE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,mBAAmB,EAAE,sBAAsB,GAAG,gBAAgB,CAAC,CAAC;AAEtG;;GAEG;AACH,wBAAsB,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsChG"}
@@ -4,17 +4,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.sync = sync;
7
- const getScopedPackages_1 = require("../monorepo/getScopedPackages");
8
- const getPackageInfos_1 = require("../monorepo/getPackageInfos");
9
- const listPackageVersions_1 = require("../packageManager/listPackageVersions");
10
7
  const semver_1 = __importDefault(require("semver"));
8
+ const listPackageVersions_1 = require("../packageManager/listPackageVersions");
11
9
  const setDependentVersions_1 = require("../bump/setDependentVersions");
12
10
  const updateLockFile_1 = require("../bump/updateLockFile");
13
11
  const updatePackageJsons_1 = require("../bump/updatePackageJsons");
12
+ /**
13
+ * Sync with the latest versions on the registry.
14
+ */
14
15
  async function sync(options, context) {
15
- // eslint-disable-next-line @ms-cloudpack/no-deprecated
16
- const packageInfos = context?.originalPackageInfos ?? (0, getPackageInfos_1.getPackageInfos)(options.path);
17
- const scopedPackages = context?.scopedPackages ?? (0, getScopedPackages_1.getScopedPackages)(options, packageInfos);
16
+ const { originalPackageInfos: packageInfos, scopedPackages } = context;
18
17
  const infos = new Map(Object.entries(packageInfos).filter(([pkg, info]) => !info.private && scopedPackages.has(pkg)));
19
18
  console.log(`Getting versions from registry for ${infos.size} package(s)...`);
20
19
  const publishedVersions = await (0, listPackageVersions_1.listPackageVersionsByTag)([...infos.values()], options);
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":";;;;;AAkBA,oBAwCC;AAzDD,qEAAkE;AAClE,iEAA8D;AAC9D,+EAAiF;AACjF,oDAA4B;AAC5B,uEAAoE;AACpE,2DAAwD;AACxD,mEAAgE;AAWzD,KAAK,UAAU,IAAI,CAAC,OAAyB,EAAE,OAA4B;IAChF,uDAAuD;IACvD,MAAM,YAAY,GAAG,OAAO,EAAE,oBAAoB,IAAI,IAAA,iCAAe,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACpF,MAAM,cAAc,GAAG,OAAO,EAAE,cAAc,IAAI,IAAA,qCAAiB,EAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAE3F,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAEtH,OAAO,CAAC,GAAG,CAAC,sCAAsC,KAAK,CAAC,IAAI,gBAAgB,CAAC,CAAC;IAE9E,MAAM,iBAAiB,GAAG,MAAM,IAAA,8CAAwB,EAAC,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAEvF,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE3C,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC1C,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAEhD,IAAI,gBAAgB,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,gBAAM,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC;gBAC7F,OAAO,CAAC,GAAG,CACT,gCAAgC,GAAG,IAAI,IAAI,CAAC,OAAO,uCAAuC,gBAAgB,EAAE,CAC7G,CAAC;gBAEF,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,gBAAgB,CAAC;gBAC7C,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAED,wGAAwG;IACxG,MAAM,yBAAyB,GAAG,IAAA,2CAAoB,EAAC;QACrD,QAAQ,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE;QAC5D,OAAO;QACP,iBAAiB,EAAE,IAAI;KACxB,CAAC,CAAC;IACH,mFAAmF;IACnF,mEAAmE;IACnE,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAEjF,IAAA,uCAAkB,EAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACnD,MAAM,IAAA,+BAAc,EAAC,OAAO,CAAC,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../src/commands/sync.ts"],"names":[],"mappings":";;;;;AAaA,oBAsCC;AAnDD,oDAA4B;AAE5B,+EAAiF;AACjF,uEAAoE;AACpE,2DAAwD;AACxD,mEAAgE;AAKhE;;GAEG;AACI,KAAK,UAAU,IAAI,CAAC,OAAyB,EAAE,OAA2B;IAC/E,MAAM,EAAE,oBAAoB,EAAE,YAAY,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;IAEvE,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAEtH,OAAO,CAAC,GAAG,CAAC,sCAAsC,KAAK,CAAC,IAAI,gBAAgB,CAAC,CAAC;IAE9E,MAAM,iBAAiB,GAAG,MAAM,IAAA,8CAAwB,EAAC,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAEvF,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE3C,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC1C,IAAI,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAEhD,IAAI,gBAAgB,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,gBAAM,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC;gBAC7F,OAAO,CAAC,GAAG,CACT,gCAAgC,GAAG,IAAI,IAAI,CAAC,OAAO,uCAAuC,gBAAgB,EAAE,CAC7G,CAAC;gBAEF,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,gBAAgB,CAAC;gBAC7C,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAED,wGAAwG;IACxG,MAAM,yBAAyB,GAAG,IAAA,2CAAoB,EAAC;QACrD,QAAQ,EAAE,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE;QAC5D,OAAO;QACP,iBAAiB,EAAE,IAAI;KACxB,CAAC,CAAC;IACH,mFAAmF;IACnF,mEAAmE;IACnE,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAEjF,IAAA,uCAAkB,EAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACnD,MAAM,IAAA,+BAAc,EAAC,OAAO,CAAC,CAAC;AAChC,CAAC"}
package/lib/env.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  export declare const env: Readonly<{
2
2
  isCI: boolean;
3
3
  isJest: boolean;
4
+ isAzurePipelines: boolean;
4
5
  /** Whether this is one of the beachball repo's official release pipelines */
5
6
  isBeachballAdoRelease: boolean | undefined;
6
7
  /**
package/lib/env.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,GAAG;;;IAMd,6EAA6E;;IAI7E;;;;;OAKG;;;;IAMH,mDAAmD;;EAInD,CAAC"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,GAAG;;;;IAQd,6EAA6E;;IAG7E;;;;;OAKG;;;;IAMH,mDAAmD;;EAInD,CAAC"}
package/lib/env.js CHANGED
@@ -8,8 +8,9 @@ exports.env = Object.freeze({
8
8
  // most everything but ADO sets process.env.CI by default
9
9
  isCI: !!process.env.CI || isAzurePipelines,
10
10
  isJest,
11
+ isAzurePipelines,
11
12
  /** Whether this is one of the beachball repo's official release pipelines */
12
- isBeachballAdoRelease: adoBuildNumber?.startsWith('beachball-prepublish') || adoBuildNumber?.startsWith('beachball-release'),
13
+ isBeachballAdoRelease: adoBuildNumber?.startsWith('beachball-release'),
13
14
  /**
14
15
  * @deprecated This should likely be replaced with a different strategy (it's never set)
15
16
  * but actually disabling all the caching e.g. whenever running in jest would cause major
package/lib/env.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":";;;AAAA,MAAM,gBAAgB,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;AAChD,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;AAC5C,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;AAExC,QAAA,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;IAC/B,yDAAyD;IACzD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,gBAAgB;IAE1C,MAAM;IAEN,6EAA6E;IAC7E,qBAAqB,EACnB,cAAc,EAAE,UAAU,CAAC,sBAAsB,CAAC,IAAI,cAAc,EAAE,UAAU,CAAC,mBAAmB,CAAC;IAEvG;;;;;OAKG;IACH,qBAAqB,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB;IAE5D,0CAA0C;IAC1C,sBAAsB,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS;IAC/C,0BAA0B,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,SAAS;IACjH,mDAAmD;IACnD,mEAAmE;IACnE,kFAAkF;IAClF,cAAc,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC3G,CAAC,CAAC"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":";;;AAAA,MAAM,gBAAgB,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;AAChD,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;AAC5C,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;AAExC,QAAA,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;IAC/B,yDAAyD;IACzD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,gBAAgB;IAE1C,MAAM;IAEN,gBAAgB;IAEhB,6EAA6E;IAC7E,qBAAqB,EAAE,cAAc,EAAE,UAAU,CAAC,mBAAmB,CAAC;IAEtE;;;;;OAKG;IACH,qBAAqB,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB;IAE5D,0CAA0C;IAC1C,sBAAsB,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS;IAC/C,0BAA0B,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,IAAI,SAAS;IACjH,mDAAmD;IACnD,mEAAmE;IACnE,kFAAkF;IAClF,cAAc,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC3G,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=appTokenBin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appTokenBin.d.ts","sourceRoot":"","sources":["../../src/githubAuth/appTokenBin.ts"],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const env_1 = require("../env");
4
+ const appTokenCli_1 = require("./appTokenCli");
5
+ const validationHelpers_1 = require("./validationHelpers");
6
+ // This is a separate file so most of the CLI can be tested in Jest
7
+ void (0, appTokenCli_1.runAppTokenCli)({ argv: process.argv }).catch((err) => {
8
+ const message = err instanceof validationHelpers_1.AuthError ? err.message : err instanceof Error ? err.stack || err.message : String(err);
9
+ const errorPrefix = env_1.env.isAzurePipelines ? '##vso[task.logissue type=error] ' : '';
10
+ console.error(`${errorPrefix}${message}`);
11
+ process.exitCode = 1;
12
+ });
13
+ //# sourceMappingURL=appTokenBin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appTokenBin.js","sourceRoot":"","sources":["../../src/githubAuth/appTokenBin.ts"],"names":[],"mappings":";;AAAA,gCAA6B;AAC7B,+CAA+C;AAC/C,2DAAgD;AAEhD,mEAAmE;AACnE,KAAK,IAAA,4BAAc,EAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;IACjE,MAAM,OAAO,GACX,GAAG,YAAY,6BAAS,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACzG,MAAM,WAAW,GAAG,SAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnF,OAAO,CAAC,KAAK,CAAC,GAAG,WAAW,GAAG,OAAO,EAAE,CAAC,CAAC;IAC1C,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { Command, type OutputConfiguration } from 'commander';
2
+ /** Injectable dependencies so the CLI can be driven and observed in tests. */
3
+ export interface CliContext {
4
+ /** Full argv (including `node` and the script path), e.g. `process.argv`. */
5
+ argv: string[];
6
+ /** Environment override for tests */
7
+ env?: NodeJS.ProcessEnv;
8
+ outputOptions?: OutputConfiguration;
9
+ exitOverride?: boolean;
10
+ }
11
+ /** Build the commander program with the default `create` command and the `revoke` subcommand. */
12
+ export declare function buildProgram(context: CliContext): Command;
13
+ /** Build and run the CLI, wiring commander's error handling to the provided context. */
14
+ export declare function runAppTokenCli(context: CliContext): Promise<void>;
15
+ //# sourceMappingURL=appTokenCli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appTokenCli.d.ts","sourceRoot":"","sources":["../../src/githubAuth/appTokenCli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,KAAK,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAOtE,8EAA8E;AAC9E,MAAM,WAAW,UAAU;IACzB,6EAA6E;IAC7E,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,qCAAqC;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAwCD,iGAAiG;AACjG,wBAAgB,YAAY,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAyDzD;AAID,wFAAwF;AACxF,wBAAsB,cAAc,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAQvE"}
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildProgram = buildProgram;
4
+ exports.runAppTokenCli = runAppTokenCli;
5
+ const commander_1 = require("commander");
6
+ const createAppTokenHelper_1 = require("./createAppTokenHelper");
7
+ const validationHelpers_1 = require("./validationHelpers");
8
+ const requestHelpers_1 = require("./requestHelpers");
9
+ const revokeAppToken_1 = require("./revokeAppToken");
10
+ const outputModes = ['azure', 'azure-pipelines', 'stdout'];
11
+ async function runCreateToken(options) {
12
+ const { output, azureTokenVariable } = options;
13
+ if (output !== 'stdout') {
14
+ if (!azureTokenVariable) {
15
+ throw new validationHelpers_1.AuthError('--azure-token-variable (AZURE_TOKEN_VARIABLE) is required unless --output is stdout');
16
+ }
17
+ if (!/^[A-Za-z_]\w*$/.test(azureTokenVariable)) {
18
+ throw new validationHelpers_1.AuthError('--azure-token-variable (AZURE_TOKEN_VARIABLE) must be an environment-style variable name');
19
+ }
20
+ }
21
+ const getInstallationToken = (0, createAppTokenHelper_1.createAppTokenHelper)({
22
+ appClientId: options.appClientId,
23
+ keyId: options.keyId,
24
+ githubApiUrl: options.githubApiUrl,
25
+ });
26
+ const { token } = await getInstallationToken({
27
+ repository: options.repository,
28
+ permissions: options.permissions,
29
+ });
30
+ if (output === 'stdout') {
31
+ console.log(token);
32
+ }
33
+ else {
34
+ console.log(`##vso[task.setvariable variable=${azureTokenVariable};isSecret=true]${token}`);
35
+ }
36
+ }
37
+ /** Build the commander program with the default `create` command and the `revoke` subcommand. */
38
+ function buildProgram(context) {
39
+ const program = new commander_1.Command()
40
+ .name('github-app-token')
41
+ .description('Create or revoke GitHub App installation tokens signed with an Azure Key Vault key.');
42
+ context.exitOverride && program.exitOverride();
43
+ context.outputOptions && program.configureOutput(context.outputOptions);
44
+ const githubApiUrlOption = () => new commander_1.Option('--github-api-url <url>', 'GitHub REST API URL (for GitHub Enterprise Server)')
45
+ .env('GITHUB_API_URL')
46
+ .default(requestHelpers_1.defaultGitHubApiUrl);
47
+ program
48
+ .command('create', { isDefault: true })
49
+ .description('Create a GitHub App installation token')
50
+ .addOption(new commander_1.Option('--app-client-id <id>', 'GitHub App client ID (not a secret)')
51
+ .env('APP_CLIENT_ID')
52
+ .makeOptionMandatory())
53
+ .addOption(new commander_1.Option('--key-id <keyId>', 'Azure Key Vault key ID used to sign the app JWT')
54
+ .env('KEY_ID')
55
+ .makeOptionMandatory())
56
+ .addOption(new commander_1.Option('--repository <owner/repo>', 'Repository to scope the token to, in owner/repo format')
57
+ .env('REPOSITORY')
58
+ .makeOptionMandatory())
59
+ .addOption(new commander_1.Option('--permissions <list>', 'Comma- or newline-separated permission:level entries')
60
+ .env('PERMISSIONS')
61
+ .argParser(validationHelpers_1.parsePermissionsArg))
62
+ .addOption(new commander_1.Option('--output <mode>', 'Where to write the token').choices(outputModes).default('stdout').env('OUTPUT'))
63
+ .addOption(new commander_1.Option('--azure-token-variable <name>', 'Azure Pipelines variable name for the token (required unless --output is stdout)').env('AZURE_TOKEN_VARIABLE'))
64
+ .addOption(githubApiUrlOption())
65
+ .action(runCreateToken);
66
+ program
67
+ .command('revoke')
68
+ .description('Revoke a GitHub App installation token')
69
+ .addOption(new commander_1.Option('--token <token>', 'Installation token to revoke').env('TOKEN').makeOptionMandatory())
70
+ .addOption(githubApiUrlOption())
71
+ .action(async (options) => {
72
+ await (0, revokeAppToken_1.revokeAppToken)(options);
73
+ });
74
+ return program;
75
+ }
76
+ const originalEnv = process.env;
77
+ /** Build and run the CLI, wiring commander's error handling to the provided context. */
78
+ async function runAppTokenCli(context) {
79
+ const program = buildProgram(context);
80
+ context.env && (process.env = context.env);
81
+ try {
82
+ await program.parseAsync(context.argv);
83
+ }
84
+ finally {
85
+ process.env = originalEnv;
86
+ }
87
+ }
88
+ //# sourceMappingURL=appTokenCli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appTokenCli.js","sourceRoot":"","sources":["../../src/githubAuth/appTokenCli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { AppTokenHelperOptions, AppTokenHelper } from './types';
2
+ /**
3
+ * Creates a helper function that can be used to get a GitHub App installation token.
4
+ * The helper caches installation discovery and tokens to avoid unnecessary requests.
5
+ */
6
+ export declare function createAppTokenHelper(options: AppTokenHelperOptions): AppTokenHelper;
7
+ //# sourceMappingURL=createAppTokenHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createAppTokenHelper.d.ts","sourceRoot":"","sources":["../../src/githubAuth/createAppTokenHelper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAA+B,qBAAqB,EAAqB,cAAc,EAAE,MAAM,SAAS,CAAC;AAqBrH;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CAiGnF"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createAppTokenHelper = createAppTokenHelper;
4
+ const signWithAzureCli_1 = require("./signWithAzureCli");
5
+ const requestHelpers_1 = require("./requestHelpers");
6
+ const validationHelpers_1 = require("./validationHelpers");
7
+ const defaultRefreshWindowMs = 5 * 60 * 1000;
8
+ function base64url(value) {
9
+ return Buffer.from(value).toString('base64url');
10
+ }
11
+ function stableObject(value) {
12
+ if (!value || typeof value !== 'object' || Array.isArray(value)) {
13
+ return value;
14
+ }
15
+ return Object.fromEntries(Object.entries(value)
16
+ .sort(([left], [right]) => left.localeCompare(right))
17
+ .map(([key, entry]) => [key, stableObject(entry)]));
18
+ }
19
+ /**
20
+ * Creates a helper function that can be used to get a GitHub App installation token.
21
+ * The helper caches installation discovery and tokens to avoid unnecessary requests.
22
+ */
23
+ function createAppTokenHelper(options) {
24
+ const { appClientId, keyId, githubApiUrl = requestHelpers_1.defaultGitHubApiUrl } = options;
25
+ const installationCache = new Map();
26
+ const tokenCache = new Map();
27
+ async function createJwt() {
28
+ const now = Math.floor(Date.now() / 1000);
29
+ const iat = now - 60;
30
+ const exp = now + 9 * 60;
31
+ const header = base64url(JSON.stringify({ typ: 'JWT', alg: 'RS256' }));
32
+ const payload = base64url(JSON.stringify({ iat, exp, iss: appClientId }));
33
+ const signingInput = `${header}.${payload}`;
34
+ const signature = await (0, signWithAzureCli_1.signWithAzureCli)(keyId, signingInput);
35
+ return `${signingInput}.${signature}`;
36
+ }
37
+ async function discoverInstallation(repository, getJwt) {
38
+ const cacheKey = `${repository.owner}/${repository.name}`;
39
+ const cached = installationCache.get(cacheKey);
40
+ if (cached) {
41
+ return cached;
42
+ }
43
+ const jwt = await getJwt();
44
+ const installation = await (0, requestHelpers_1.requestJson)(`${githubApiUrl}/repos/${repository.owner}/${repository.name}/installation`, { headers: (0, requestHelpers_1.githubHeaders)(jwt) }, 'Could not discover GitHub App installation ID');
45
+ const result = {
46
+ id: (0, validationHelpers_1.requiredIntegerProperty)(installation, 'id', 'GitHub did not return an installation ID'),
47
+ appSlug: (0, validationHelpers_1.requiredStringProperty)(installation, 'app_slug', 'GitHub did not return an App slug'),
48
+ };
49
+ installationCache.set(cacheKey, result);
50
+ return result;
51
+ }
52
+ return async function getInstallationToken(opts) {
53
+ const repository = (0, validationHelpers_1.parseRepository)(opts.repository);
54
+ const { permissions } = opts;
55
+ return (0, requestHelpers_1.retryTransient)(async () => {
56
+ // Reuse a single JWT per attempt across installation discovery and token creation.
57
+ let jwtPromise;
58
+ const getJwt = () => (jwtPromise ??= createJwt());
59
+ const installation = await discoverInstallation(repository, getJwt);
60
+ const repositories = [repository.name];
61
+ const cacheKey = JSON.stringify({
62
+ installationId: installation.id,
63
+ repositories,
64
+ permissions: stableObject(permissions),
65
+ });
66
+ const cached = tokenCache.get(cacheKey);
67
+ if (cached && Date.now() < new Date(cached.expiresAt).getTime() - defaultRefreshWindowMs) {
68
+ return cached;
69
+ }
70
+ const jwt = await getJwt();
71
+ const body = {
72
+ repositories,
73
+ ...(permissions ? { permissions } : {}),
74
+ };
75
+ const token = await (0, requestHelpers_1.requestJson)(`${githubApiUrl}/app/installations/${installation.id}/access_tokens`, {
76
+ method: 'POST',
77
+ headers: (0, requestHelpers_1.githubHeaders)(jwt, true),
78
+ body: JSON.stringify(body),
79
+ }, 'Could not create GitHub App installation token');
80
+ const result = {
81
+ token: (0, validationHelpers_1.requiredStringProperty)(token, 'token', 'GitHub did not return an installation token'),
82
+ expiresAt: (0, validationHelpers_1.requiredStringProperty)(token, 'expires_at', 'GitHub did not return an installation token expiration'),
83
+ installationId: installation.id,
84
+ appSlug: installation.appSlug,
85
+ repositories,
86
+ permissions: (0, validationHelpers_1.isRecord)(token?.permissions) ? token.permissions : (permissions ?? {}),
87
+ };
88
+ tokenCache.set(cacheKey, result);
89
+ return result;
90
+ });
91
+ };
92
+ }
93
+ //# sourceMappingURL=createAppTokenHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createAppTokenHelper.js","sourceRoot":"","sources":["../../src/githubAuth/createAppTokenHelper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { AuthError } from './validationHelpers';
2
+ export declare const defaultGitHubApiUrl = "https://api.github.com";
3
+ export declare class GitHubRequestError extends AuthError {
4
+ status: number;
5
+ constructor(message: string, status: number);
6
+ }
7
+ export declare function retryTransient<T>(operation: () => Promise<T>): Promise<T>;
8
+ export declare function requestJson<T = unknown>(url: string | URL, init: RequestInit, failureMessage: string): Promise<T>;
9
+ export declare function requestNoContent(url: string | URL, init: RequestInit, failureMessage: string): Promise<void>;
10
+ export declare function githubHeaders(token: string, json?: boolean): Record<string, string>;
11
+ //# sourceMappingURL=requestHelpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestHelpers.d.ts","sourceRoot":"","sources":["../../src/githubAuth/requestHelpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAI5D,qBAAa,kBAAmB,SAAQ,SAAS;IAC/C,MAAM,EAAE,MAAM,CAAC;gBACH,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAI5C;AAMD,wBAAsB,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAY/E;AAED,wBAAsB,WAAW,CAAC,CAAC,GAAG,OAAO,EAC3C,GAAG,EAAE,MAAM,GAAG,GAAG,EACjB,IAAI,EAAE,WAAW,EACjB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,CAAC,CAAC,CAcZ;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CASlH;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,UAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAOjF"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GitHubRequestError = exports.defaultGitHubApiUrl = void 0;
4
+ exports.retryTransient = retryTransient;
5
+ exports.requestJson = requestJson;
6
+ exports.requestNoContent = requestNoContent;
7
+ exports.githubHeaders = githubHeaders;
8
+ const validationHelpers_1 = require("./validationHelpers");
9
+ exports.defaultGitHubApiUrl = 'https://api.github.com';
10
+ const transientRetryCount = 3;
11
+ class GitHubRequestError extends validationHelpers_1.AuthError {
12
+ status;
13
+ constructor(message, status) {
14
+ super(message);
15
+ this.status = status;
16
+ }
17
+ }
18
+ exports.GitHubRequestError = GitHubRequestError;
19
+ function isRetryableError(error) {
20
+ return error instanceof GitHubRequestError ? error.status >= 500 : error instanceof TypeError;
21
+ }
22
+ async function retryTransient(operation) {
23
+ for (let attempt = 0;; attempt++) {
24
+ try {
25
+ return await operation();
26
+ }
27
+ catch (error) {
28
+ if (attempt >= transientRetryCount || !isRetryableError(error)) {
29
+ throw error;
30
+ }
31
+ const timeout = 2 ** attempt * 1000;
32
+ await new Promise(resolve => setTimeout(resolve, timeout));
33
+ }
34
+ }
35
+ }
36
+ async function requestJson(url, init, failureMessage) {
37
+ const response = await fetch(url, init);
38
+ const body = await response.text();
39
+ if (!response.ok) {
40
+ throw new GitHubRequestError(`${failureMessage}: ${response.status} ${response.statusText}: ${body}`, response.status);
41
+ }
42
+ try {
43
+ return JSON.parse(body);
44
+ }
45
+ catch {
46
+ throw new validationHelpers_1.AuthError(`${failureMessage}: GitHub returned invalid JSON`);
47
+ }
48
+ }
49
+ async function requestNoContent(url, init, failureMessage) {
50
+ const response = await fetch(url, init);
51
+ if (!response.ok) {
52
+ const body = await response.text();
53
+ throw new GitHubRequestError(`${failureMessage}: ${response.status} ${response.statusText}: ${body}`, response.status);
54
+ }
55
+ }
56
+ function githubHeaders(token, json = false) {
57
+ return {
58
+ Accept: 'application/vnd.github+json',
59
+ Authorization: `Bearer ${token}`,
60
+ ...(json ? { 'Content-Type': 'application/json' } : {}),
61
+ 'X-GitHub-Api-Version': '2022-11-28',
62
+ };
63
+ }
64
+ //# sourceMappingURL=requestHelpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requestHelpers.js","sourceRoot":"","sources":["../../src/githubAuth/requestHelpers.ts"],"names":[],"mappings":";;;AAkBA,wCAYC;AAED,kCAkBC;AAED,4CASC;AAED,sCAOC;AAtED,2DAAgD;AAEnC,QAAA,mBAAmB,GAAG,wBAAwB,CAAC;AAE5D,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B,MAAa,kBAAmB,SAAQ,6BAAS;IAC/C,MAAM,CAAS;IACf,YAAY,OAAe,EAAE,MAAc;QACzC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AAND,gDAMC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,OAAO,KAAK,YAAY,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,YAAY,SAAS,CAAC;AAChG,CAAC;AAEM,KAAK,UAAU,cAAc,CAAI,SAA2B;IACjE,KAAK,IAAI,OAAO,GAAG,CAAC,GAAI,OAAO,EAAE,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,OAAO,MAAM,SAAS,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,OAAO,IAAI,mBAAmB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/D,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,IAAI,CAAC;YACpC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,GAAiB,EACjB,IAAiB,EACjB,cAAsB;IAEtB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACxC,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,kBAAkB,CAC1B,GAAG,cAAc,KAAK,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,KAAK,IAAI,EAAE,EACvE,QAAQ,CAAC,MAAM,CAChB,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,6BAAS,CAAC,GAAG,cAAc,gCAAgC,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,gBAAgB,CAAC,GAAiB,EAAE,IAAiB,EAAE,cAAsB;IACjG,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACxC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,MAAM,IAAI,kBAAkB,CAC1B,GAAG,cAAc,KAAK,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,KAAK,IAAI,EAAE,EACvE,QAAQ,CAAC,MAAM,CAChB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAgB,aAAa,CAAC,KAAa,EAAE,IAAI,GAAG,KAAK;IACvD,OAAO;QACL,MAAM,EAAE,6BAA6B;QACrC,aAAa,EAAE,UAAU,KAAK,EAAE;QAChC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,sBAAsB,EAAE,YAAY;KACrC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ import type { RevokeAppTokenOptions } from './types';
2
+ /**
3
+ * Revoke a GitHub app installation token.
4
+ */
5
+ export declare function revokeAppToken(options: RevokeAppTokenOptions): Promise<void>;
6
+ //# sourceMappingURL=revokeAppToken.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"revokeAppToken.d.ts","sourceRoot":"","sources":["../../src/githubAuth/revokeAppToken.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAErD;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAUlF"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.revokeAppToken = revokeAppToken;
4
+ const requestHelpers_1 = require("./requestHelpers");
5
+ /**
6
+ * Revoke a GitHub app installation token.
7
+ */
8
+ async function revokeAppToken(options) {
9
+ const { githubApiUrl = requestHelpers_1.defaultGitHubApiUrl, token } = options;
10
+ await (0, requestHelpers_1.requestNoContent)(`${githubApiUrl}/installation/token`, {
11
+ method: 'DELETE',
12
+ headers: (0, requestHelpers_1.githubHeaders)(token),
13
+ }, 'Could not revoke GitHub App installation token');
14
+ }
15
+ //# sourceMappingURL=revokeAppToken.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"revokeAppToken.js","sourceRoot":"","sources":["../../src/githubAuth/revokeAppToken.ts"],"names":[],"mappings":";;AAMA,wCAUC;AAhBD,qDAAwF;AAGxF;;GAEG;AACI,KAAK,UAAU,cAAc,CAAC,OAA8B;IACjE,MAAM,EAAE,YAAY,GAAG,oCAAmB,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAC9D,MAAM,IAAA,iCAAgB,EACpB,GAAG,YAAY,qBAAqB,EACpC;QACE,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,IAAA,8BAAa,EAAC,KAAK,CAAC;KAC9B,EACD,gDAAgD,CACjD,CAAC;AACJ,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Signs a JWT signing input with an Azure Key Vault RSA key via the Azure CLI
3
+ * (`az keyvault key sign` with the `RS256` algorithm). This is the low-dependency signing path:
4
+ * it shells out to `az` rather than using the Azure SDK, so the Azure CLI must be installed and
5
+ * already authenticated (e.g. `az login` or running within an `AzureCLI@2` pipeline task) as an
6
+ * identity with `sign` permission on the key.
7
+ *
8
+ * @param keyId Azure Key Vault key ID for the key holding the GitHub App private key, for example
9
+ * `https://my-vault.vault.azure.net/keys/my-github-app-key`
10
+ * @param signingInput The JWT signing input (`header.payload`) to sign.
11
+ * @returns The base64url-encoded RSA signature.
12
+ */
13
+ export declare function signWithAzureCli(keyId: string, signingInput: string): Promise<string>;
14
+ //# sourceMappingURL=signWithAzureCli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signWithAzureCli.d.ts","sourceRoot":"","sources":["../../src/githubAuth/signWithAzureCli.ts"],"names":[],"mappings":"AA4CA;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAO3F"}