@aetherpush/cli 0.1.1 → 0.3.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../script/types/cli.ts"],"names":[],"mappings":";AAAA,6CAA6C;;;AAI7C,IAAY,WAgCX;AAhCD,WAAY,WAAW;IACrB,6DAAY,CAAA;IACZ,iEAAc,CAAA;IACd,+DAAa,CAAA;IACb,mEAAe,CAAA;IACf,iDAAM,CAAA;IACN,mDAAO,CAAA;IACP,uDAAS,CAAA;IACT,uDAAS,CAAA;IACT,2DAAW,CAAA;IACX,mEAAe,CAAA;IACf,sEAAgB,CAAA;IAChB,0EAAkB,CAAA;IAClB,gDAAK,CAAA;IACL,gEAAa,CAAA;IACb,wEAAiB,CAAA;IACjB,kFAAsB,CAAA;IACtB,kEAAc,CAAA;IACd,wEAAiB,CAAA;IACjB,sEAAgB,CAAA;IAChB,sEAAgB,CAAA;IAChB,gDAAK,CAAA;IACL,kDAAM,CAAA;IACN,gDAAK,CAAA;IACL,oDAAO,CAAA;IACP,sDAAQ,CAAA;IACR,oDAAO,CAAA;IACP,8DAAY,CAAA;IACZ,sDAAQ,CAAA;IACR,4DAAW,CAAA;IACX,gEAAa,CAAA;IACb,kDAAM,CAAA;AACR,CAAC,EAhCW,WAAW,2BAAX,WAAW,QAgCtB"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../script/types/cli.ts"],"names":[],"mappings":";AAAA,6CAA6C;;;AAK7C,IAAY,WAoCX;AApCD,WAAY,WAAW;IACrB,6DAAY,CAAA;IACZ,iEAAc,CAAA;IACd,+DAAa,CAAA;IACb,mEAAe,CAAA;IACf,uDAAS,CAAA;IACT,2DAAW,CAAA;IACX,yDAAU,CAAA;IACV,6DAAY,CAAA;IACZ,iDAAM,CAAA;IACN,mDAAO,CAAA;IACP,wDAAS,CAAA;IACT,wDAAS,CAAA;IACT,4DAAW,CAAA;IACX,oEAAe,CAAA;IACf,sEAAgB,CAAA;IAChB,0EAAkB,CAAA;IAClB,gDAAK,CAAA;IACL,gEAAa,CAAA;IACb,wEAAiB,CAAA;IACjB,kFAAsB,CAAA;IACtB,kEAAc,CAAA;IACd,wEAAiB,CAAA;IACjB,sEAAgB,CAAA;IAChB,sEAAgB,CAAA;IAChB,gDAAK,CAAA;IACL,kDAAM,CAAA;IACN,gDAAK,CAAA;IACL,oDAAO,CAAA;IACP,sDAAQ,CAAA;IACR,oDAAO,CAAA;IACP,8DAAY,CAAA;IACZ,sDAAQ,CAAA;IACR,4DAAW,CAAA;IACX,gEAAa,CAAA;IACb,kDAAM,CAAA;AACR,CAAC,EApCW,WAAW,2BAAX,WAAW,QAoCtB"}
@@ -0,0 +1,12 @@
1
+ import * as cli from "../types/cli";
2
+ export type CiProvider = "github" | "gitlab" | "circleci" | "jenkins";
3
+ export interface CiMetadata {
4
+ provider: CiProvider;
5
+ sha?: string;
6
+ branch?: string;
7
+ pr?: string;
8
+ run?: string;
9
+ }
10
+ export declare function detectCiMetadata(): CiMetadata | null;
11
+ export declare function formatCiMetadata(meta: CiMetadata): string;
12
+ export declare function enrichDescriptionWithCiMetadata(command: cli.ICommand): void;
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ // Copyright (c) Aether. All rights reserved.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.detectCiMetadata = detectCiMetadata;
5
+ exports.formatCiMetadata = formatCiMetadata;
6
+ exports.enrichDescriptionWithCiMetadata = enrichDescriptionWithCiMetadata;
7
+ const SHA_SHORT_LENGTH = 7;
8
+ function shortSha(sha) {
9
+ if (!sha) {
10
+ return undefined;
11
+ }
12
+ return sha.length > SHA_SHORT_LENGTH ? sha.substring(0, SHA_SHORT_LENGTH) : sha;
13
+ }
14
+ function parseGithubPrNumber(ref) {
15
+ if (!ref) {
16
+ return undefined;
17
+ }
18
+ const match = ref.match(/^refs\/pull\/(\d+)\//);
19
+ return match ? match[1] : undefined;
20
+ }
21
+ function detectGithub(env) {
22
+ if (env.GITHUB_ACTIONS !== "true") {
23
+ return null;
24
+ }
25
+ let run;
26
+ if (env.GITHUB_SERVER_URL && env.GITHUB_REPOSITORY && env.GITHUB_RUN_ID) {
27
+ run = `${env.GITHUB_SERVER_URL}/${env.GITHUB_REPOSITORY}/actions/runs/${env.GITHUB_RUN_ID}`;
28
+ }
29
+ return {
30
+ provider: "github",
31
+ sha: shortSha(env.GITHUB_SHA),
32
+ branch: env.GITHUB_REF_NAME || undefined,
33
+ pr: parseGithubPrNumber(env.GITHUB_REF),
34
+ run,
35
+ };
36
+ }
37
+ function detectGitlab(env) {
38
+ if (env.GITLAB_CI !== "true") {
39
+ return null;
40
+ }
41
+ return {
42
+ provider: "gitlab",
43
+ sha: shortSha(env.CI_COMMIT_SHA),
44
+ branch: env.CI_COMMIT_REF_NAME || undefined,
45
+ pr: env.CI_MERGE_REQUEST_IID || undefined,
46
+ run: env.CI_JOB_URL || undefined,
47
+ };
48
+ }
49
+ function detectCircleci(env) {
50
+ if (env.CIRCLECI !== "true") {
51
+ return null;
52
+ }
53
+ return {
54
+ provider: "circleci",
55
+ sha: shortSha(env.CIRCLE_SHA1),
56
+ branch: env.CIRCLE_BRANCH || undefined,
57
+ pr: env.CIRCLE_PR_NUMBER || undefined,
58
+ run: env.CIRCLE_BUILD_URL || undefined,
59
+ };
60
+ }
61
+ function detectJenkins(env) {
62
+ if (!env.JENKINS_URL) {
63
+ return null;
64
+ }
65
+ return {
66
+ provider: "jenkins",
67
+ sha: shortSha(env.GIT_COMMIT),
68
+ branch: env.GIT_BRANCH || undefined,
69
+ pr: env.CHANGE_ID || undefined,
70
+ run: env.BUILD_URL || undefined,
71
+ };
72
+ }
73
+ function detectCiMetadata() {
74
+ const env = process.env;
75
+ return detectGithub(env) || detectGitlab(env) || detectCircleci(env) || detectJenkins(env);
76
+ }
77
+ function formatCiMetadata(meta) {
78
+ const parts = [`ci=${meta.provider}`];
79
+ if (meta.sha) {
80
+ parts.push(`sha=${meta.sha}`);
81
+ }
82
+ if (meta.branch) {
83
+ parts.push(`branch=${meta.branch}`);
84
+ }
85
+ if (meta.pr) {
86
+ parts.push(`pr=${meta.pr}`);
87
+ }
88
+ if (meta.run) {
89
+ parts.push(`run=${meta.run}`);
90
+ }
91
+ return `[${parts.join(" ")}]`;
92
+ }
93
+ function enrichDescriptionWithCiMetadata(command) {
94
+ if (command.ciMetadata === false) {
95
+ return;
96
+ }
97
+ const meta = detectCiMetadata();
98
+ if (!meta) {
99
+ return;
100
+ }
101
+ const formatted = formatCiMetadata(meta);
102
+ const target = command;
103
+ const existing = target.description ? target.description.trim() : "";
104
+ if (existing) {
105
+ target.description = `${existing}\n\n${formatted}`;
106
+ }
107
+ else {
108
+ target.description = formatted;
109
+ }
110
+ }
111
+ //# sourceMappingURL=ci-metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ci-metadata.js","sourceRoot":"","sources":["../../../script/utils/ci-metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Package } from "../types";
2
+ export declare function formatReleaseJson(pkg: Package): string;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ // Copyright (c) Aether. All rights reserved.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.formatReleaseJson = formatReleaseJson;
5
+ function formatReleaseJson(pkg) {
6
+ return JSON.stringify({
7
+ label: pkg.label,
8
+ packageHash: pkg.packageHash,
9
+ size: pkg.size,
10
+ appVersion: pkg.appVersion,
11
+ blobUrl: pkg.blobUrl,
12
+ manifestBlobUrl: pkg.manifestBlobUrl,
13
+ description: pkg.description,
14
+ releasedBy: pkg.releasedBy,
15
+ releaseMethod: pkg.releaseMethod,
16
+ uploadTime: pkg.uploadTime,
17
+ rollout: pkg.rollout,
18
+ isMandatory: pkg.isMandatory,
19
+ isDisabled: pkg.isDisabled,
20
+ });
21
+ }
22
+ //# sourceMappingURL=release-json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release-json.js","sourceRoot":"","sources":["../../../script/utils/release-json.ts"],"names":[],"mappings":";AAAA,6CAA6C;;AAI7C,8CAgBC;AAhBD,SAAgB,iBAAiB,CAAC,GAAY;IAC5C,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,eAAe,EAAE,GAAG,CAAC,eAAe;QACpC,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,UAAU,EAAE,GAAG,CAAC,UAAU;KAC3B,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aetherpush/cli",
3
- "version": "0.1.1",
3
+ "version": "0.3.0",
4
4
  "description": "Command-line interface for Aether — over-the-air updates for React Native apps.",
5
5
  "main": "./bin/script/index.js",
6
6
  "types": "./bin/script/index.d.ts",