@shopify/oxygen-cli 2.1.2-unstable.202310121637.0 → 2.1.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.
@@ -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",