zarro 1.144.293 → 1.145.2

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.
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ (function () {
3
+ const taskName = "clear-packages-folder", gulp = requireModule("gulp"), env = requireModule("env");
4
+ env.associate([
5
+ env.PACK_TARGET_FOLDER
6
+ ], taskName);
7
+ gulp.task("clear-packages-folder", async () => {
8
+ const { rm, mkdir } = require("yafs"), packagesDir = env.resolve(env.PACK_TARGET_FOLDER);
9
+ await rm(packagesDir);
10
+ await mkdir(packagesDir);
11
+ });
12
+ })();
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  (function () {
3
- const gulp = requireModule("gulp"), env = requireModule("env"), gitTag = requireModule("git-tag"), gitPushTags = requireModule("git-push-tags"), gitPush = requireModule("git-push");
3
+ const gulp = requireModule("gulp"), env = requireModule("env"), gitTagAndPush = requireModule("git-tag-and-push");
4
4
  env.associate([
5
5
  env.GIT_TAG,
6
6
  env.GIT_VERSION_INCREMENT_MESSAGE,
@@ -9,9 +9,6 @@
9
9
  "git-tag-and-push"
10
10
  ]);
11
11
  gulp.task("git-tag-and-push", async () => {
12
- const tag = env.resolveRequired(env.GIT_TAG), dryRun = env.resolveFlag(env.DRY_RUN);
13
- await gitTag({ tag, dryRun });
14
- await gitPush(dryRun);
15
- await gitPushTags(dryRun);
12
+ await gitTagAndPush(env.resolveRequired(env.GIT_TAG), env.resolveFlag(env.DRY_RUN));
16
13
  });
17
14
  })();
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ (function () {
3
+ const env = requireModule("env");
4
+ async function gitTagAndPush(tag, dryRun) {
5
+ const gitTag = requireModule("git-tag"), gitPushTags = requireModule("git-push-tags"), gitPush = requireModule("git-push");
6
+ if (!tag) {
7
+ tag = env.resolveRequired(env.GIT_TAG);
8
+ }
9
+ if (dryRun === undefined) {
10
+ dryRun = env.resolveFlag(env.DRY_RUN);
11
+ }
12
+ await gitTag({
13
+ tag,
14
+ dryRun
15
+ });
16
+ await gitPush(dryRun);
17
+ await gitPushTags(dryRun);
18
+ }
19
+ module.exports = gitTagAndPush;
20
+ })();
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ (function () {
3
+ const taskName = "release-nuget", gulp = requireModule("gulp"), env = requireModule("env");
4
+ env.associate([
5
+ env.PACK_TARGET_FOLDER,
6
+ env.NUGET_SOURCE
7
+ ], taskName);
8
+ gulp.task(taskName, ["clear-packages-folder", "pack"], async () => {
9
+ const log = requireModule("log"), ZarroError = requireModule("zarro-error"), resolveNugetApiKey = requireModule("resolve-nuget-api-key"), { FsEntities, ls } = require("yafs"), { nugetPush } = requireModule("dotnet-cli"), packageDir = env.resolve(env.PACK_TARGET_FOLDER), packageFiles = await ls(packageDir, {
10
+ fullPaths: true,
11
+ recurse: false,
12
+ entities: FsEntities.files,
13
+ match: /\.nupkg$/
14
+ });
15
+ if (packageFiles.length === 0) {
16
+ throw new ZarroError(`Unable to find any .nupkg files under '${packageDir}'`);
17
+ }
18
+ let version = undefined;
19
+ for (const pkg of packageFiles) {
20
+ if (!version) {
21
+ const matches = pkg.match(/(?<version>\d+\.\d+\.\d+(?<tag>[a-zA-Z0-9-]+)?)/);
22
+ version = matches === null || matches === void 0 ? void 0 : matches.groups["version"];
23
+ }
24
+ const source = env.resolve(env.NUGET_SOURCE);
25
+ await nugetPush({
26
+ source,
27
+ target: pkg,
28
+ apiKey: resolveNugetApiKey(source)
29
+ });
30
+ }
31
+ if (!version) {
32
+ log.warn(`Unable to determine version to tag at - set '${env.GIT_TAG}' to manually override.`);
33
+ return;
34
+ }
35
+ const gitTagAndPush = requireModule("git-tag-and-push");
36
+ await gitTagAndPush(version);
37
+ });
38
+ })();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zarro",
3
- "version": "1.144.293",
3
+ "version": "1.145.2",
4
4
  "description": "Some glue to make gulp easier, perhaps even zero- or close-to-zero-conf",
5
5
  "bin": {
6
6
  "zarro": "./index.js"
package/types.d.ts CHANGED
@@ -1634,6 +1634,8 @@ declare global {
1634
1634
  type SpawnNuget = (args: string[], opts?: SystemOptions) => Promise<SystemResult>;
1635
1635
  type IsPromise = (obj: any) => obj is Promise<any>;
1636
1636
 
1637
+ type GitTagAndPush = (tag?: string, dryRun?: boolean) => Promise<void>;
1638
+
1637
1639
  // scraped from https://spdx.org/licenses/
1638
1640
  // with the following fragment from FF dev console
1639
1641
  // copy(Array.from(document.querySelector("table").querySelectorAll("tr")).map(tr => {