@shopify/oxygen-cli 2.1.2-unstable.202310121637.0 → 2.1.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -17,7 +17,10 @@ import { getMetadata, createLabels, getEnvironmentInput } from './metadata.js';
17
17
  async function createDeploy(options) {
18
18
  initializeBugsnag(!options.config.bugsnag);
19
19
  const Bugsnag = getBugsnag();
20
- Bugsnag?.addMetadata("config", { ...options.config, accessToken: "***" });
20
+ Bugsnag?.addMetadata("config", {
21
+ ...options.config,
22
+ deploymentToken: { ...options.config.deploymentToken, accessToken: "***" }
23
+ });
21
24
  const { config, hooks } = options;
22
25
  const logger = options.logger ?? stderrLogger;
23
26
  const build = {};
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/deploy/index.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Logger,\n outputInfo,\n outputSuccess,\n outputWarn,\n} from '@shopify/cli-kit/node/output';\n\nimport {stderrLogger, verifyConfig} from '../utils/utils.js';\nimport {getBugsnag, initializeBugsnag} from '../utils/bugsnag.js';\n\nimport {buildInitiate} from './build-initiate.js';\nimport {buildCancel} from './build-cancel.js';\nimport {getUploadFiles} from './get-upload-files.js';\nimport {deploymentInitiate} from './deployment-initiate.js';\nimport {deploymentComplete} from './deployment-complete.js';\nimport {verifyDeployment} from './verify-deployment.js';\nimport {deploymentCancel} from './deployment-cancel.js';\nimport {uploadFiles} from './upload-files.js';\nimport {\n Build,\n DeploymentConfig,\n DeploymentHooks,\n VerificationError,\n} from './types.js';\nimport {buildProject} from './build-project.js';\nimport {createLabels, getMetadata, getEnvironmentInput} from './metadata.js';\n\ninterface CreateDeployOptions {\n config: DeploymentConfig;\n hooks?: DeploymentHooks;\n logger?: Logger;\n}\n\nexport async function createDeploy(\n options: CreateDeployOptions,\n): Promise<string | undefined> {\n initializeBugsnag(!options.config.bugsnag);\n const Bugsnag = getBugsnag();\n Bugsnag?.addMetadata('config', {...options.config, accessToken: '***'});\n\n const {config, hooks} = options;\n const logger = options.logger ?? stderrLogger;\n const build = {} as Build;\n let buildCompleted;\n let deployment;\n\n try {\n const metadata = await getMetadata(config, logger);\n const labels = createLabels(metadata);\n const environment = getEnvironmentInput(config, metadata);\n Bugsnag?.addMetadata('metadata', {\n environment,\n labels,\n metadata,\n });\n\n if (!config.workerOnly && !config.skipBuild) {\n const buildInitiateResponse = await buildInitiate({\n config,\n environment,\n labels,\n logger,\n });\n build.id = buildInitiateResponse.build.id;\n build.assetPath = buildInitiateResponse.build.assetPath;\n }\n\n if (!config.skipBuild) {\n await buildProject({\n config,\n assetPath: build.assetPath,\n hooks,\n });\n verifyConfig({config, performedBuild: true});\n }\n buildCompleted = true;\n\n const manifest = await getUploadFiles(config);\n Bugsnag?.addMetadata('manifest', manifest);\n const deploymentInitiateInput = build.id\n ? {buildId: build.id, manifest}\n : {environment, manifest, labels};\n\n deployment = await deploymentInitiate({\n config,\n input: deploymentInitiateInput,\n logger,\n });\n Bugsnag?.addMetadata('targets', deployment.deploymentTargets);\n await uploadFiles({\n config,\n targets: deployment.deploymentTargets,\n hooks,\n logger,\n });\n const deploymentCompleteOp = await deploymentComplete(\n config,\n deployment.deployment.id,\n );\n\n if (!config.skipVerification) {\n await verifyDeployment({\n config,\n url: deploymentCompleteOp.deployment.url,\n logger,\n hooks,\n });\n }\n\n const urlMessage = config.publicDeployment ? 'public' : 'private';\n outputSuccess(\n `\\nThe deployment can be reached at the ${deploymentCompleteOp.deployment.url} ${urlMessage} preview URL`,\n logger,\n );\n // in CI environments, we want to output the URL to stdout\n if (metadata.name !== 'none') {\n outputInfo(deploymentCompleteOp.deployment.url);\n }\n\n return deploymentCompleteOp.deployment.url;\n } catch (error) {\n if (\n config.bugsnag &&\n Bugsnag &&\n (error instanceof Error || typeof error === 'string')\n ) {\n Bugsnag.notify(error);\n }\n\n if (!(error instanceof Error)) {\n // eslint-disable-next-line no-console\n console.error('Unknown error', error);\n return Promise.reject(new Error('Unknown error'));\n }\n\n if (error instanceof VerificationError) {\n outputWarn(error.message, logger);\n } else if (build.id && !buildCompleted) {\n outputWarn(\n `Build failed with: ${error.message}, cancelling build.`,\n logger,\n );\n await buildCancel({\n config,\n buildId: build.id!,\n reason: error.message,\n logger,\n }).catch((err) => {\n if (err instanceof Error) {\n outputWarn(`Failed to cancel build: ${err.message}`, logger);\n }\n });\n } else if (deployment?.deployment.id) {\n outputWarn(\n `Deployment failed with: ${error.message}, cancelling deployment.`,\n logger,\n );\n await deploymentCancel({\n config,\n deploymentId: deployment.deployment.id,\n reason: error.message,\n logger,\n }).catch((err) => {\n if (err instanceof Error) {\n outputWarn(`Failed to cancel deployment: ${err.message}`, logger);\n }\n });\n }\n return Promise.reject(error);\n }\n}\n\nexport type {DeploymentConfig, DeploymentHooks};\nexport {parseToken} from '../utils/utils.js';\n"]}
1
+ {"version":3,"sources":["../../src/deploy/index.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n Logger,\n outputInfo,\n outputSuccess,\n outputWarn,\n} from '@shopify/cli-kit/node/output';\n\nimport {stderrLogger, verifyConfig} from '../utils/utils.js';\nimport {getBugsnag, initializeBugsnag} from '../utils/bugsnag.js';\n\nimport {buildInitiate} from './build-initiate.js';\nimport {buildCancel} from './build-cancel.js';\nimport {getUploadFiles} from './get-upload-files.js';\nimport {deploymentInitiate} from './deployment-initiate.js';\nimport {deploymentComplete} from './deployment-complete.js';\nimport {verifyDeployment} from './verify-deployment.js';\nimport {deploymentCancel} from './deployment-cancel.js';\nimport {uploadFiles} from './upload-files.js';\nimport {\n Build,\n DeploymentConfig,\n DeploymentHooks,\n VerificationError,\n} from './types.js';\nimport {buildProject} from './build-project.js';\nimport {createLabels, getMetadata, getEnvironmentInput} from './metadata.js';\n\ninterface CreateDeployOptions {\n config: DeploymentConfig;\n hooks?: DeploymentHooks;\n logger?: Logger;\n}\n\nexport async function createDeploy(\n options: CreateDeployOptions,\n): Promise<string | undefined> {\n initializeBugsnag(!options.config.bugsnag);\n const Bugsnag = getBugsnag();\n Bugsnag?.addMetadata('config', {\n ...options.config,\n deploymentToken: {...options.config.deploymentToken, accessToken: '***'},\n });\n\n const {config, hooks} = options;\n const logger = options.logger ?? stderrLogger;\n const build = {} as Build;\n let buildCompleted;\n let deployment;\n\n try {\n const metadata = await getMetadata(config, logger);\n const labels = createLabels(metadata);\n const environment = getEnvironmentInput(config, metadata);\n Bugsnag?.addMetadata('metadata', {\n environment,\n labels,\n metadata,\n });\n\n if (!config.workerOnly && !config.skipBuild) {\n const buildInitiateResponse = await buildInitiate({\n config,\n environment,\n labels,\n logger,\n });\n build.id = buildInitiateResponse.build.id;\n build.assetPath = buildInitiateResponse.build.assetPath;\n }\n\n if (!config.skipBuild) {\n await buildProject({\n config,\n assetPath: build.assetPath,\n hooks,\n });\n verifyConfig({config, performedBuild: true});\n }\n buildCompleted = true;\n\n const manifest = await getUploadFiles(config);\n Bugsnag?.addMetadata('manifest', manifest);\n const deploymentInitiateInput = build.id\n ? {buildId: build.id, manifest}\n : {environment, manifest, labels};\n\n deployment = await deploymentInitiate({\n config,\n input: deploymentInitiateInput,\n logger,\n });\n Bugsnag?.addMetadata('targets', deployment.deploymentTargets);\n await uploadFiles({\n config,\n targets: deployment.deploymentTargets,\n hooks,\n logger,\n });\n const deploymentCompleteOp = await deploymentComplete(\n config,\n deployment.deployment.id,\n );\n\n if (!config.skipVerification) {\n await verifyDeployment({\n config,\n url: deploymentCompleteOp.deployment.url,\n logger,\n hooks,\n });\n }\n\n const urlMessage = config.publicDeployment ? 'public' : 'private';\n outputSuccess(\n `\\nThe deployment can be reached at the ${deploymentCompleteOp.deployment.url} ${urlMessage} preview URL`,\n logger,\n );\n // in CI environments, we want to output the URL to stdout\n if (metadata.name !== 'none') {\n outputInfo(deploymentCompleteOp.deployment.url);\n }\n\n return deploymentCompleteOp.deployment.url;\n } catch (error) {\n if (\n config.bugsnag &&\n Bugsnag &&\n (error instanceof Error || typeof error === 'string')\n ) {\n Bugsnag.notify(error);\n }\n\n if (!(error instanceof Error)) {\n // eslint-disable-next-line no-console\n console.error('Unknown error', error);\n return Promise.reject(new Error('Unknown error'));\n }\n\n if (error instanceof VerificationError) {\n outputWarn(error.message, logger);\n } else if (build.id && !buildCompleted) {\n outputWarn(\n `Build failed with: ${error.message}, cancelling build.`,\n logger,\n );\n await buildCancel({\n config,\n buildId: build.id!,\n reason: error.message,\n logger,\n }).catch((err) => {\n if (err instanceof Error) {\n outputWarn(`Failed to cancel build: ${err.message}`, logger);\n }\n });\n } else if (deployment?.deployment.id) {\n outputWarn(\n `Deployment failed with: ${error.message}, cancelling deployment.`,\n logger,\n );\n await deploymentCancel({\n config,\n deploymentId: deployment.deployment.id,\n reason: error.message,\n logger,\n }).catch((err) => {\n if (err instanceof Error) {\n outputWarn(`Failed to cancel deployment: ${err.message}`, logger);\n }\n });\n }\n return Promise.reject(error);\n }\n}\n\nexport type {DeploymentConfig, DeploymentHooks};\nexport {parseToken} from '../utils/utils.js';\n"]}
@@ -1,145 +1,172 @@
1
1
  {
2
- "version": "2.1.2-unstable.202310121637.0",
3
2
  "commands": {
4
3
  "oxygen:deploy": {
5
- "id": "oxygen:deploy",
6
- "description": "Creates a deployment to Oxygen",
7
- "strict": true,
8
- "pluginName": "@shopify/oxygen-cli",
9
- "pluginAlias": "@shopify/oxygen-cli",
10
- "pluginType": "core",
11
- "hidden": false,
12
4
  "aliases": [],
5
+ "args": {},
6
+ "description": "Creates a deployment to Oxygen",
13
7
  "flags": {
14
8
  "assetsFolder": {
15
- "name": "assetsFolder",
16
- "type": "option",
17
9
  "char": "a",
18
10
  "description": "Assets folder",
11
+ "name": "assetsFolder",
19
12
  "required": false,
13
+ "default": "dist/client/",
14
+ "hasDynamicHelp": false,
20
15
  "multiple": false,
21
- "default": "dist/client/"
16
+ "type": "option"
22
17
  },
23
18
  "buildCommand": {
24
- "name": "buildCommand",
25
- "type": "option",
26
19
  "char": "b",
27
20
  "description": "Build command",
21
+ "name": "buildCommand",
28
22
  "required": false,
23
+ "default": "yarn build",
24
+ "hasDynamicHelp": false,
29
25
  "multiple": false,
30
- "default": "yarn build"
26
+ "type": "option"
31
27
  },
32
28
  "disableBugsnag": {
33
- "name": "disableBugsnag",
34
- "type": "boolean",
35
29
  "description": "Disable Bugsnag error reporting",
30
+ "name": "disableBugsnag",
36
31
  "required": false,
37
- "allowNo": false
32
+ "allowNo": false,
33
+ "type": "boolean"
38
34
  },
39
35
  "environmentTag": {
40
- "name": "environmentTag",
41
- "type": "option",
42
36
  "char": "e",
43
37
  "description": "Tag of the environment to deploy to",
38
+ "name": "environmentTag",
44
39
  "required": false,
45
- "multiple": false
40
+ "hasDynamicHelp": false,
41
+ "multiple": false,
42
+ "type": "option"
46
43
  },
47
44
  "verificationMaxDuration": {
48
- "name": "verificationMaxDuration",
49
- "type": "option",
50
45
  "char": "d",
51
46
  "description": "the maximum duration (in seconds) that the deployment verification step is allowed to run before it is considered failed.",
47
+ "name": "verificationMaxDuration",
52
48
  "required": false,
53
- "multiple": false
49
+ "hasDynamicHelp": false,
50
+ "multiple": false,
51
+ "type": "option"
54
52
  },
55
53
  "path": {
56
- "name": "path",
57
- "type": "option",
58
54
  "char": "p",
59
55
  "description": "Root path",
56
+ "name": "path",
60
57
  "required": false,
58
+ "default": "./",
59
+ "hasDynamicHelp": false,
61
60
  "multiple": false,
62
- "default": "./"
61
+ "type": "option"
63
62
  },
64
63
  "publicDeployment": {
65
- "name": "publicDeployment",
66
- "type": "boolean",
67
64
  "description": "Marks a preview deployment as publicly accessible.",
65
+ "env": "OXYGEN_PUBLIC_DEPLOYMENT",
66
+ "name": "publicDeployment",
68
67
  "required": false,
69
- "allowNo": false
68
+ "allowNo": false,
69
+ "type": "boolean"
70
70
  },
71
71
  "skipBuild": {
72
- "name": "skipBuild",
73
- "type": "boolean",
74
72
  "char": "s",
75
73
  "description": "Skip running build command",
74
+ "name": "skipBuild",
76
75
  "required": false,
77
- "allowNo": false
76
+ "allowNo": false,
77
+ "type": "boolean"
78
78
  },
79
79
  "skipVerification": {
80
- "name": "skipVerification",
81
- "type": "boolean",
82
80
  "char": "v",
83
81
  "description": "Skip running deployment verification step",
82
+ "name": "skipVerification",
84
83
  "required": false,
85
- "allowNo": false
84
+ "allowNo": false,
85
+ "type": "boolean"
86
86
  },
87
87
  "token": {
88
- "name": "token",
89
- "type": "option",
90
88
  "char": "t",
91
89
  "description": "Oxygen deployment token",
90
+ "env": "OXYGEN_DEPLOYMENT_TOKEN",
91
+ "name": "token",
92
92
  "required": true,
93
- "multiple": false
93
+ "hasDynamicHelp": false,
94
+ "multiple": false,
95
+ "type": "option"
94
96
  },
95
97
  "workerFolder": {
96
- "name": "workerFolder",
97
- "type": "option",
98
98
  "char": "w",
99
99
  "description": "Worker folder",
100
+ "name": "workerFolder",
100
101
  "required": false,
102
+ "default": "dist/worker/",
103
+ "hasDynamicHelp": false,
101
104
  "multiple": false,
102
- "default": "dist/worker/"
105
+ "type": "option"
103
106
  },
104
107
  "workerOnly": {
105
- "name": "workerOnly",
106
- "type": "boolean",
107
108
  "char": "o",
108
109
  "description": "Worker only deployment",
110
+ "name": "workerOnly",
109
111
  "required": false,
110
- "allowNo": false
112
+ "allowNo": false,
113
+ "type": "boolean"
111
114
  },
112
115
  "metadataDescription": {
113
- "name": "metadataDescription",
114
- "type": "option",
115
116
  "description": "Description of the deployment. Will be saved and displayed in the Shopify admin",
117
+ "env": "OXYGEN_METADATA_DESCRIPTION",
118
+ "name": "metadataDescription",
116
119
  "required": false,
117
- "multiple": false
120
+ "hasDynamicHelp": false,
121
+ "multiple": false,
122
+ "type": "option"
118
123
  },
119
124
  "metadataUrl": {
120
- "name": "metadataUrl",
121
- "type": "option",
122
125
  "description": "URL that links to the deployment. Will be saved and displayed in the Shopify admin",
126
+ "env": "OXYGEN_METADATA_URL",
127
+ "name": "metadataUrl",
123
128
  "required": false,
124
- "multiple": false
129
+ "hasDynamicHelp": false,
130
+ "multiple": false,
131
+ "type": "option"
125
132
  },
126
133
  "metadataUser": {
127
- "name": "metadataUser",
128
- "type": "option",
129
134
  "description": "User that initiated the deployment. Will be saved and displayed in the Shopify admin",
135
+ "env": "OXYGEN_METADATA_USER",
136
+ "name": "metadataUser",
130
137
  "required": false,
131
- "multiple": false
138
+ "hasDynamicHelp": false,
139
+ "multiple": false,
140
+ "type": "option"
132
141
  },
133
142
  "metadataVersion": {
134
- "name": "metadataVersion",
135
- "type": "option",
136
143
  "description": "A version identifier for the deployment. Will be saved and displayed in the Shopify admin",
144
+ "env": "OXYGEN_METADATA_VERSION",
145
+ "name": "metadataVersion",
137
146
  "required": false,
138
- "multiple": false
147
+ "hasDynamicHelp": false,
148
+ "multiple": false,
149
+ "type": "option"
139
150
  }
140
151
  },
141
- "args": {},
142
- "hasCustomBuildCommand": false
152
+ "hasDynamicHelp": false,
153
+ "hidden": false,
154
+ "hiddenAliases": [],
155
+ "id": "oxygen:deploy",
156
+ "pluginAlias": "@shopify/oxygen-cli",
157
+ "pluginName": "@shopify/oxygen-cli",
158
+ "pluginType": "core",
159
+ "strict": true,
160
+ "enableJsonFlag": false,
161
+ "hasCustomBuildCommand": false,
162
+ "isESM": true,
163
+ "relativePath": [
164
+ "dist",
165
+ "commands",
166
+ "oxygen",
167
+ "deploy.js"
168
+ ]
143
169
  }
144
- }
170
+ },
171
+ "version": "2.1.2"
145
172
  }
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "@shopify:registry": "https://registry.npmjs.org"
6
6
  },
7
7
  "license": "MIT",
8
- "version": "2.1.2-unstable.202310121637.0",
8
+ "version": "2.1.2",
9
9
  "type": "module",
10
10
  "scripts": {
11
11
  "build": "tsup --sourcemap --clean --config ./tsup.config.ts && oclif manifest",
@@ -38,7 +38,7 @@
38
38
  "@bugsnag/core": "^7.19.0",
39
39
  "@bugsnag/js": "^7.21.0",
40
40
  "@bugsnag/node": "^7.19.0",
41
- "@oclif/core": "2.15.0",
41
+ "@oclif/core": "3.0.3",
42
42
  "@shopify/cli-kit": "^3.49.6",
43
43
  "async": "^3.2.4"
44
44
  },
@@ -48,14 +48,14 @@
48
48
  "@shopify/eslint-plugin": "^43.0.0",
49
49
  "@shopify/prettier-config": "^1.1.2",
50
50
  "@types/async": "^3.2.21",
51
- "@types/node": "^20.6.3",
52
- "eslint": "^8.50.0",
51
+ "@types/node": "^20.6.5",
52
+ "eslint": "^8.51.0",
53
53
  "eslint-plugin-prettier": "^5.0.1",
54
54
  "node-fetch": "^3.3.2",
55
- "oclif": "^3",
55
+ "oclif": "^4",
56
56
  "tsup": "^7.2.0",
57
57
  "typescript": "^5.2.2",
58
- "vite": "^4.4.9",
58
+ "vite": "^4.4.10",
59
59
  "vitest": "^0.34.6"
60
60
  },
61
61
  "prettier": "@shopify/prettier-config",