@corva/create-app 0.42.0-0 → 0.42.0-1
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.
- package/README.md +1 -0
- package/lib/bump-version.option.js +12 -5
- package/lib/flow.js +1 -1
- package/lib/flows/attach.js +8 -0
- package/lib/flows/lib/api.js +108 -77
- package/lib/flows/lib/notification.js +139 -0
- package/lib/flows/lib/waitForMs.js +1 -1
- package/lib/flows/release.js +1 -1
- package/lib/flows/steps/attach/add-app-to-stream.js +24 -0
- package/lib/flows/steps/attach/get-all-live-assets.js +142 -0
- package/lib/flows/steps/attach/index.js +9 -0
- package/lib/flows/steps/attach/prepare-data.js +20 -0
- package/lib/flows/steps/release/add-label.js +2 -3
- package/lib/flows/steps/release/add-notes.js +2 -2
- package/lib/flows/steps/release/get-config.js +4 -1
- package/lib/flows/steps/release/prepare-data.js +3 -3
- package/lib/flows/steps/release/publish.js +6 -4
- package/lib/flows/steps/release/remove-failed-upload.js +7 -5
- package/lib/flows/steps/release/upload-zip-to-corva.js +9 -6
- package/lib/flows/steps/release/wait-for-build.js +4 -4
- package/lib/flows/steps/rerun/create-task.js +12 -15
- package/lib/flows/steps/rerun/ensure-that-app-in-stream.js +33 -25
- package/lib/flows/steps/rerun/get-app-version.js +14 -12
- package/lib/flows/steps/rerun/prepare-data.js +6 -8
- package/lib/flows/steps/rerun/prepare-well-and-stream-data.js +29 -36
- package/lib/flows/steps/rerun/rerun.js +5 -5
- package/lib/helpers/logger.js +22 -22
- package/lib/main.js +55 -31
- package/package.json +3 -2
- package/templates/python/scheduler/README.md +1 -1
- package/templates/python/stream/README.md +1 -1
- package/templates/python/task/README.md +1 -1
package/lib/main.js
CHANGED
|
@@ -7,11 +7,7 @@ import os from 'node:os';
|
|
|
7
7
|
import path from 'node:path';
|
|
8
8
|
import semver from 'semver';
|
|
9
9
|
|
|
10
|
-
import {
|
|
11
|
-
ensureLatestVersion,
|
|
12
|
-
warnIfOutdated,
|
|
13
|
-
ensureBumpVersion,
|
|
14
|
-
} from './scripts/utils/version.js';
|
|
10
|
+
import { ensureLatestVersion, warnIfOutdated, ensureBumpVersion } from './scripts/utils/version.js';
|
|
15
11
|
import * as utils from './helpers/utils.js';
|
|
16
12
|
import * as manifestHelpers from './helpers/manifest.js';
|
|
17
13
|
import * as versioning from './helpers/versioning.js';
|
|
@@ -27,8 +23,15 @@ import { ERROR_ICON } from './constants/messages.js';
|
|
|
27
23
|
import { StepError } from './flows/lib/step-error.js';
|
|
28
24
|
import { RELEASE_FLOW } from './flows/release.js';
|
|
29
25
|
import { RERUN_FLOW } from './flows/rerun.js';
|
|
26
|
+
import { ATTACH_FLOW } from './flows/attach.js';
|
|
30
27
|
import { ZIP_FLOW } from './flows/zip.js';
|
|
31
|
-
import {
|
|
28
|
+
import {
|
|
29
|
+
bumpVersionOption,
|
|
30
|
+
apiKeyOption,
|
|
31
|
+
envOption,
|
|
32
|
+
silentOption,
|
|
33
|
+
appVersion,
|
|
34
|
+
} from './bump-version.option.js';
|
|
32
35
|
import { Manifest } from './flows/lib/manifest.js';
|
|
33
36
|
import { resolveAppRuntime } from './helpers/resolve-app-runtime.js';
|
|
34
37
|
import { existsSync } from 'node:fs';
|
|
@@ -44,13 +47,15 @@ const writejsonOptions = {
|
|
|
44
47
|
EOL: os.EOL,
|
|
45
48
|
};
|
|
46
49
|
|
|
47
|
-
const silencer =
|
|
48
|
-
|
|
50
|
+
const silencer =
|
|
51
|
+
(handler) =>
|
|
52
|
+
async (...args) => {
|
|
53
|
+
const result = await handler(...args);
|
|
49
54
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
}
|
|
55
|
+
if (args[args.length - 2].silent && result) {
|
|
56
|
+
console.log(result);
|
|
57
|
+
}
|
|
58
|
+
};
|
|
54
59
|
|
|
55
60
|
function startingMessage() {
|
|
56
61
|
clear();
|
|
@@ -66,7 +71,7 @@ function checkNodeVersion() {
|
|
|
66
71
|
logger.log(
|
|
67
72
|
chalk.red(
|
|
68
73
|
`\nYou are using Node ${process.version}.\n\n` +
|
|
69
|
-
|
|
74
|
+
`Please update to Node 16 or higher for a better, fully supported experience.\n`
|
|
70
75
|
)
|
|
71
76
|
);
|
|
72
77
|
// Fall back to latest supported react-scripts on Node 4
|
|
@@ -96,7 +101,7 @@ function checkOptions(opts) {
|
|
|
96
101
|
const printDeprecationNotice = (param) =>
|
|
97
102
|
console.warn(
|
|
98
103
|
chalk.bgYellowBright`DEPRECATED OPTION: ${param}` +
|
|
99
|
-
|
|
104
|
+
` Use ${chalk.cyan(`create-corva-app ${param} .`)} instead`
|
|
100
105
|
);
|
|
101
106
|
|
|
102
107
|
export async function run() {
|
|
@@ -118,9 +123,10 @@ export async function run() {
|
|
|
118
123
|
manifestConstants.manifestOptions().forEach((value) => {
|
|
119
124
|
const type = typeof value.default;
|
|
120
125
|
const option = new Option(
|
|
121
|
-
`${value.alias ? `-${value.alias}, ` : ''}--${value.name} [${
|
|
126
|
+
`${value.alias ? `-${value.alias}, ` : ''}--${value.name} [${
|
|
127
|
+
(type !== 'undefined' && type) || 'string'
|
|
122
128
|
}]`,
|
|
123
|
-
value.message
|
|
129
|
+
value.message
|
|
124
130
|
);
|
|
125
131
|
|
|
126
132
|
if (value.choices) {
|
|
@@ -144,8 +150,7 @@ export async function run() {
|
|
|
144
150
|
createCommand.addOption(option);
|
|
145
151
|
});
|
|
146
152
|
|
|
147
|
-
createCommand
|
|
148
|
-
.version(packageJson.version)
|
|
153
|
+
createCommand.version(packageJson.version);
|
|
149
154
|
|
|
150
155
|
createCommand.action(async (dirName, options) => {
|
|
151
156
|
if (options.zip || options.release) {
|
|
@@ -166,11 +171,13 @@ export async function run() {
|
|
|
166
171
|
.addOption(bumpVersionOption)
|
|
167
172
|
.addOption(new Option('--ignored-files [ignoredFiles...]', 'Patterns to skip zip', []))
|
|
168
173
|
.addOption(silentOption)
|
|
169
|
-
.action(
|
|
170
|
-
|
|
174
|
+
.action(
|
|
175
|
+
silencer(async (dirName, patterns, options) => {
|
|
176
|
+
options.bumpVersion = await ensureBumpVersion(options.bumpVersion);
|
|
171
177
|
|
|
172
|
-
|
|
173
|
-
|
|
178
|
+
return runFlow(ZIP_FLOW, { dirName, patterns, options }).then(_.get('zipFileName'));
|
|
179
|
+
})
|
|
180
|
+
);
|
|
174
181
|
|
|
175
182
|
program
|
|
176
183
|
.command('release')
|
|
@@ -183,8 +190,15 @@ export async function run() {
|
|
|
183
190
|
.addOption(envOption)
|
|
184
191
|
.addOption(apiKeyOption)
|
|
185
192
|
.addOption(new Option('--notes [string]', 'Add custom notes to published app'))
|
|
186
|
-
.addOption(
|
|
187
|
-
|
|
193
|
+
.addOption(
|
|
194
|
+
new Option('--label [string]', 'Put a label on the release').choices(['BETA', 'PROD'])
|
|
195
|
+
)
|
|
196
|
+
.addOption(
|
|
197
|
+
new Option(
|
|
198
|
+
'--remove-on-fail [boolean]',
|
|
199
|
+
'Remove release if it fails during deployment'
|
|
200
|
+
).default(false)
|
|
201
|
+
)
|
|
188
202
|
// .addOption(new Option('--zip-file-name [string]', 'Prebuilt zip file name in dir'))
|
|
189
203
|
.action(async (dirName, patterns, options) => {
|
|
190
204
|
options.bumpVersion = await ensureBumpVersion(options.bumpVersion);
|
|
@@ -199,13 +213,25 @@ export async function run() {
|
|
|
199
213
|
.addOption(apiKeyOption)
|
|
200
214
|
.addOption(envOption)
|
|
201
215
|
.addOption(silentOption)
|
|
216
|
+
.addOption(appVersion)
|
|
202
217
|
.addOption(new Option('--assets [assets...]', 'Assets ids list', []))
|
|
203
|
-
.addOption(new Option('--app-version [number]', 'App version (exp. 1, 2, 3)'))
|
|
204
218
|
.addOption(new Option('--interval [number]', 'Interval for scheduler apps (exp. 1200)'))
|
|
205
219
|
.action(async (dirName, options) => {
|
|
206
220
|
await runFlow(RERUN_FLOW, { dirName, options });
|
|
207
221
|
});
|
|
208
222
|
|
|
223
|
+
program
|
|
224
|
+
.command('attach')
|
|
225
|
+
.description('Add app to live assets streams')
|
|
226
|
+
.argument('<project-directory>', 'Project directory to work with')
|
|
227
|
+
.addOption(apiKeyOption)
|
|
228
|
+
.addOption(envOption)
|
|
229
|
+
.addOption(silentOption)
|
|
230
|
+
.addOption(appVersion)
|
|
231
|
+
.action(async (dirName, options) => {
|
|
232
|
+
await runFlow(ATTACH_FLOW, { dirName, options });
|
|
233
|
+
});
|
|
234
|
+
|
|
209
235
|
try {
|
|
210
236
|
await program.parseAsync(process.argv);
|
|
211
237
|
} catch (e) {
|
|
@@ -248,9 +274,7 @@ const handleCommanderError = (e) => {
|
|
|
248
274
|
);
|
|
249
275
|
logger.log();
|
|
250
276
|
logger.log('For example:');
|
|
251
|
-
logger.log(
|
|
252
|
-
` ${chalk.cyan(program.name())} ${commandName} ${chalk.green('my-react-app')}`
|
|
253
|
-
);
|
|
277
|
+
logger.log(` ${chalk.cyan(program.name())} ${commandName} ${chalk.green('my-react-app')}`);
|
|
254
278
|
logger.log();
|
|
255
279
|
logger.log(
|
|
256
280
|
`Run ${chalk.cyan(`${program.name()} help ${commandName}`)} to see all options.`
|
|
@@ -477,9 +501,9 @@ async function installApp(root, manifest, runtime) {
|
|
|
477
501
|
const proc =
|
|
478
502
|
manifest.isJs() && existsSync(`${os.homedir()}/.nvm/nvm.sh`)
|
|
479
503
|
? spawn.sync(`\\. ${os.homedir()}/.nvm/nvm.sh && nvm i && ${command} ${args.join(' ')}`, {
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
504
|
+
shell: true,
|
|
505
|
+
...opts,
|
|
506
|
+
})
|
|
483
507
|
: spawn.sync(command, args, opts);
|
|
484
508
|
|
|
485
509
|
if (proc.stderr) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@corva/create-app",
|
|
3
|
-
"version": "0.42.0-
|
|
3
|
+
"version": "0.42.0-1",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Create app to use it in CORVA.AI",
|
|
6
6
|
"keywords": [
|
|
@@ -49,7 +49,8 @@
|
|
|
49
49
|
"is-glob": "^4.0.3",
|
|
50
50
|
"lodash": "^4.17.21",
|
|
51
51
|
"npm-api": "^1.0.0",
|
|
52
|
-
"semver": "7.3.2"
|
|
52
|
+
"semver": "7.3.2",
|
|
53
|
+
"terminal-link": "^3.0.0"
|
|
53
54
|
},
|
|
54
55
|
"devDependencies": {
|
|
55
56
|
"@corva/eslint-config-browser": "^0.0.4",
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
### 1. Install
|
|
8
8
|
|
|
9
9
|
You need to have `make` installed:
|
|
10
|
-
|
|
10
|
+
|
|
11
11
|
- Windows: [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/install)
|
|
12
12
|
- OS X: [Command Line Tools for Xcode](https://developer.apple.com/download/more/)
|
|
13
13
|
- Linux: refer to your distro-specific docs
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
### 1. Install
|
|
8
8
|
|
|
9
9
|
You need to have `make` installed:
|
|
10
|
-
|
|
10
|
+
|
|
11
11
|
- Windows: [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/install)
|
|
12
12
|
- OS X: [Command Line Tools for Xcode](https://developer.apple.com/download/more/)
|
|
13
13
|
- Linux: refer to your distro-specific docs
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
### 1. Install
|
|
8
8
|
|
|
9
9
|
You need to have `make` installed:
|
|
10
|
-
|
|
10
|
+
|
|
11
11
|
- Windows: [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/install)
|
|
12
12
|
- OS X: [Command Line Tools for Xcode](https://developer.apple.com/download/more/)
|
|
13
13
|
- Linux: refer to your distro-specific docs
|