@adinsure-ops/ops-cli 4.0.0-rc6 → 4.0.0-rc7

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/CHANGELOGS.md CHANGED
@@ -3,6 +3,7 @@
3
3
  ## 4.0.0: 2021-05-31
4
4
 
5
5
  - new auth options
6
+ - [DEPRECATED] `--servicePrincipal` login is no longer available or required. 'AZURE_CLIENT_ID' and 'AZURE_CLIENT_SECRET' environment variables are required with every command in order to use service principal.
6
7
 
7
8
  ## 3.9.0: 2021-05-30
8
9
 
package/README.md CHANGED
@@ -4,7 +4,7 @@ Operations CLI for supporting AdInsure development processes.
4
4
 
5
5
  # Latest version
6
6
 
7
- 3.6.1
7
+ 4.0.0
8
8
 
9
9
  ## Install
10
10
 
@@ -14,8 +14,10 @@ or [download a JSON](https://adinsure.blob.core.windows.net/ops-cli/version) con
14
14
 
15
15
  | Platform| Link|
16
16
  |:---|:---|
17
- |Windows 64-bit|https://adinsure.blob.core.windows.net/ops-cli/win/ops-v3.6.1-x64.exe|
18
- |Debian 64-bit |https://adinsure.blob.core.windows.net/ops-cli/deb/ops_3.6.1-1_amd64.deb|
17
+ |Windows 64-bit|https://adinsure.blob.core.windows.net/ops-cli/win/ops-v4.0.0-x64.exe|
18
+ |Debian 64-bit |https://adinsure.blob.core.windows.net/ops-cli/deb/ops_4.0.0-1_amd64.deb|
19
+
20
+
19
21
 
20
22
  ## CLI development
21
23
 
@@ -36,12 +38,25 @@ You can run and debug commands directly from terminal by running `ops [command]`
36
38
 
37
39
  <!-- commands -->
38
40
  * [`ops help [COMMAND]`](#ops-help-command)
41
+ * [`ops doctor`](#ops-doctor)
42
+ * [`ops download:client <flags>`](#ops-download-client-flags)
43
+ * [`ops download:identity-server <flags>`](#ops-download-identity-server-flags)
44
+ * [`ops download:platform <flags>`](#ops-download-platform-flags)
45
+ * [`ops download:scheduler <flags>`](#ops-download-scheduler-flags)
46
+ * [`ops download:server <flags>`](#ops-download-server-flags)
47
+ * [`ops download:studio <flags>`](#ops-download-studio-flags)
48
+ * [`ops gitlab:next-nightly-tag`](#ops-gitlab-next-nightly-tag)
39
49
  * [`ops log <component> <issue> [options]`](#ops-log-component-issue-options)
40
50
  * [`ops log:gen [options]`](#ops-loggen-options)
41
51
  * [`ops log:validate [options]`](#ops-logvalidate-options)
42
52
  * [`ops login`](#ops-login)
43
- * [`ops version <type> [flags]`](#ops-version)
53
+ * [`ops npm:check-publish`](#ops-npm-check-publish)
54
+ * [`ops npm:publish`](#ops-npm-publish)
55
+ * [`ops prepare-content`](#ops-prepare-content)
44
56
  * [`ops sql <type> <module> [flags]`](#ops-sql-type-module-flags)
57
+ * [`ops translate`](#ops-translate)
58
+ * [`ops update`](#ops-update)
59
+ * [`ops version <type> [flags]`](#ops-version)
45
60
 
46
61
  ## `ops help [COMMAND]`
47
62
 
@@ -60,9 +75,57 @@ OPTIONS
60
75
 
61
76
  _See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v2.2.0/src\commands\help.ts)_
62
77
 
63
- ## `ops download <flags>`
64
78
 
65
- download platform from azure storage
79
+ ## `ops doctor`
80
+
81
+ check if everyting is installed
82
+
83
+ ```
84
+ USAGE
85
+ $ ops doctor
86
+
87
+ OPTIONS
88
+ -p, --fix try to install missing packages
89
+
90
+ EXAMPLE
91
+ $ ops doctor
92
+ ```
93
+
94
+ ## `ops download:client <flags>`
95
+
96
+ download AdInsure Client zip from Azure storage
97
+
98
+ ```
99
+ USAGE
100
+ $ ops download:client <flags>
101
+
102
+ OPTIONS
103
+ -o, --output=output [default: ./] output directory
104
+ -v, --version=version (required) version we want to download
105
+
106
+ EXAMPLE
107
+ $ ops download:client -v 3.2.0 -o ~/Downloads
108
+ ```
109
+
110
+ ## `ops download:identity-server <flags>`
111
+
112
+ download AdInsure Identity Server zip from Azure storage
113
+
114
+ ```
115
+ USAGE
116
+ $ ops download:identity-server <flags>
117
+
118
+ OPTIONS
119
+ -o, --output=output [default: ./] output directory
120
+ -v, --version=version (required) version we want to download
121
+
122
+ EXAMPLE
123
+ $ ops download:identity-server -v 3.0.3 -o ~/Downloads
124
+ ```
125
+
126
+ ## `ops download:platform <flags>`
127
+
128
+ download AdInsure Platform bundle containing zip of Client, Server and IdentityServer from azure storage
66
129
 
67
130
  ```
68
131
  USAGE
@@ -74,15 +137,46 @@ OPTIONS
74
137
 
75
138
  ALIASES
76
139
  $ ops download
77
- $ ops download:platform
78
140
 
79
141
  EXAMPLE
80
142
  $ ops download -v 6.0.0 -o ~/Downloads
81
143
  ```
82
144
 
145
+ ## `ops download:scheduler <flags>`
146
+
147
+ download AdInsure Scheduler zip from azure storage
148
+
149
+ ```
150
+ USAGE
151
+ $ ops download:scheduler <flags>
152
+
153
+ OPTIONS
154
+ -o, --output=output [default: ./] output directory
155
+ -v, --version=version (required) version we want to download
156
+
157
+ EXAMPLE
158
+ $ ops download:scheduler -v 3.2.0 -o ~/Downloads
159
+ ```
160
+
161
+ ## `ops download:server <flags>`
162
+
163
+ download AdInsure Server zip from Azure storage
164
+
165
+ ```
166
+ USAGE
167
+ $ ops download:server <flags>
168
+
169
+ OPTIONS
170
+ -o, --output=output [default: ./] output directory
171
+ -v, --version=version (required) version we want to download
172
+
173
+ EXAMPLE
174
+ $ ops download:server -v 3.2.0 -o ~/Downloads
175
+ ```
176
+
83
177
  ## `ops download:studio <flags>`
84
178
 
85
- download studio vsix from azure storage
179
+ download AdInsure Studio vsix from azure storage
86
180
 
87
181
  ```
88
182
  USAGE
@@ -93,24 +187,46 @@ OPTIONS
93
187
  -o, --output=output [default: ./] output directory
94
188
  -v, --version=version (required) version we want to download
95
189
 
96
- ALIASES
97
- $ ops download:studio
190
+ EXAMPLES
191
+ $ ops download:studio -v 15.0.0 -o ~/Downloads
192
+ $ ops download:studio -v 15.0.0 -i
193
+ ```
194
+
195
+ ## `ops download:studio <flags>`
196
+
197
+ download AdInsure Studio vsix from azure storage
198
+
199
+ ```
200
+ USAGE
201
+ $ ops download:studio <flags>
202
+
203
+ OPTIONS
204
+ -i, --install install plugin to vscode. save to temp folder and remove vsix after.
205
+ -o, --output=output [default: ./] output directory
206
+ -v, --version=version (required) version we want to download
98
207
 
99
208
  EXAMPLES
100
209
  $ ops download:studio -v 15.0.0 -o ~/Downloads
101
210
  $ ops download:studio -v 15.0.0 -i
102
211
  ```
103
212
 
104
- ## `ops doctor`
213
+ ## `ops gitlab:next-nightly-tag`
105
214
 
106
- check if everyting is installed
215
+ creates new gitlab tag
107
216
 
108
217
  ```
109
218
  USAGE
110
- $ ops doctor
219
+ $ ops gitlab:next-nightly-tag <version>
111
220
 
112
- EXAMPLE
113
- $ ops doctor
221
+ ARGUMENTS
222
+ VERSION Tag version
223
+
224
+ OPTIONS
225
+ --dryRun Only printout version and don't create it
226
+ --host=host (required) [default: https://git.adacta-fintech.com] Server hostname
227
+ --pat=pat (required) Token from user that has permissions to list and create tags
228
+ --project=project (required) [default: 413] Project ID
229
+ --reference=reference (required) Reference to create tag on (branch, commit, tag)
114
230
  ```
115
231
 
116
232
  ## `ops jira:issue <issue>`
@@ -247,86 +363,11 @@ EXAMPLES
247
363
  $ ops login --servicePrincipal -c {client id} -s {secret}
248
364
  ```
249
365
 
250
- ## `ops version <type>`
251
-
252
- creates everything necessary for the new release
253
-
254
- ```
255
- USAGE
256
- $ ops version <type> [flags]
257
-
258
- ARGUMENTS
259
- TYPE (patch|minor|major|prerelease|preminor|premajor|new) Type of release
260
-
261
- OPTIONS
262
- -i, --independent increment npm packages independent of VERSION file
263
- -v, --version=version force version
264
- --no-deps skip dependency update
265
- --no-script skip creation of script
266
- --only-npm-packages=only-npm-packages [default: .*] regular expression for which NPM packages to include
267
- --script-prefix=script-prefix [default: 7.10] prefix for db script version creation.
268
- --exclude-dir exclude directories where to search for package.json
269
-
270
- EXAMPLES
271
- $ ops version minor
272
- $ ops version new-version -v 3.4.0
273
- $ ops version new-version -v 3.2.1 --script-prefix 7.10
274
- $ ops version patch --no-deps
275
- $ ops version patch --no-script
276
- $ ops version new -v 3.2.1 --only-npm-packages "@adinsure/"
277
- ```
278
-
279
- * *prerelease* is generated from YearMonth incremental number (example: 201909.1) or RC (example: rc.0). prereleases generated in same month will have only last number incremented and first prerelease generated in next month will bump first number and start with 0 (example: 201910.0)
280
-
281
- * *patch* increments third number and prerelease number is ommited. (example: 3.4.0-201909.2 -> 3.4.0 and 3.3.11 -> 3.3.12)
282
-
283
- * *preminor* increments for prerelease in second number (example: 3.2.3 -> 3.3.0-201910.0)
284
-
285
- * *minor* increments second number (example: 3.4.3 -> 3.5.0)
286
-
287
- * *premajor* increments to prerelease in first number (example: 3.4.3 -> 4.0.0-201911.0)
288
-
289
- * *major* increments first number (example: 3.4.5 -> 4.0.0)
290
-
291
- * *new-version* allows setting own version regardles of VERSION file. **Incrementing NPM version separately is not supported in this case. NPM packages are also bumped to specified version.**
292
-
293
- > Prerelease Note: Prerelease should only be user in **master** branch.
294
-
295
- > Patch Note: Patch is used on **release/x.x** branches for creating patch releases
296
-
297
- > When creating new **release/x.x** branch 2 steps are needed:
298
- > * creating *patch* version on **release/x.x** branch
299
- > * creating *preminor* or *premajor* version on **master** branch
300
-
301
- > Dependencies for packages are updated on all package.json files. If prerelease version in specified full version is specified (example: 4.0.0-201911.0), or if non prerelease version ends with x (example: 3.5.x)
302
-
303
- > NPM packages node: For npm package to update properly *wsrun-version* preset needs to be in *scripts* portion of *package.json*. (example: `"wsrun-version": "yarn wsrun -p @adinsure-tools/* -p @adinsure/* -c"`)
304
-
305
- ## `ops sql <type> <module> [flags]`
306
-
307
- creates a new database script
308
-
309
- ```
310
- USAGE
311
- $ ops sql <type> <module> [flags]
312
-
313
- ARGUMENTS
314
- TYPE (schema|data|migration) Type of database scripts
315
- MODULE (acc|claims|core|pas|reins|shared) Module of data database scripts
366
+ ## `ops npm:check-publish`
316
367
 
317
- OPTIONS
318
- -l, --layer=layer name of the configuration layer for which you are generating database script
319
- -v, --version=version version for which you're generating database script
368
+ check if npm packages were published
320
369
 
321
- EXAMPLES
322
- $ ops sql schema
323
- $ ops sql data shared --layer basic
324
370
  ```
325
-
326
- ## `ops npm:check-publish [options]`
327
-
328
- check if npm packages was published
329
-
330
371
  USAGE
331
372
  $ ops npm:check-publish [options]
332
373
 
@@ -336,18 +377,17 @@ OPTIONS
336
377
  -x, --exclude=exclude exclude packages from filter
337
378
  --pat=pat PAT token or AZURE_DEVOPS_EXT_PAT environment variable
338
379
 
339
- ALIASES
340
- $ ops npm:check-publish
341
-
342
380
  EXAMPLES
343
381
  $ ops npm:check-publish -v 6.0.1
344
382
  $ ops npm:check-publish -p @adinsure/* -v 6.0.0
345
383
  $ ops npm:check-publish -p @adinsure/* -x @adisure/demo -v 6.0.0
384
+ ```
346
385
 
347
- ## `ops npm:publish [options]`
386
+ ## `ops npm:publish`
348
387
 
349
388
  publish npm packages
350
389
 
390
+ ```
351
391
  USAGE
352
392
  $ ops npm:publish [options]
353
393
 
@@ -357,14 +397,12 @@ OPTIONS
357
397
  -x, --exclude=exclude exclude packages from filter
358
398
  --pat=pat PAT token or AZURE_DEVOPS_EXT_PAT environment variable
359
399
 
360
- ALIASES
361
- $ ops npm:publish
362
-
363
400
  EXAMPLES
364
401
  $ ops npm:publish -v 15.0.0
365
402
  $ ops npm:publish -v 15.0.0
366
403
  $ ops npm:publish -p @adinsure-tooling/* -v 15.0.0
367
404
  $ ops npm:publish -p @adinsure-tooling/* -x @adisure-tooling/studio-services -v 6.0.0
405
+ ```
368
406
 
369
407
  ## `ops prepare-content -d <destination> -s [source]`
370
408
 
@@ -574,3 +612,114 @@ module.exports = {
574
612
 
575
613
  Any file/directory prefixed by `!` will be removed from the destination based on it's full path
576
614
  relative from `ops` execution directory to source file/directory path.
615
+ ## `ops version <type>`
616
+
617
+ creates everything necessary for the new release
618
+
619
+ ```
620
+ USAGE
621
+ $ ops version <type> [flags]
622
+
623
+ ARGUMENTS
624
+ TYPE (patch|minor|major|prerelease|preminor|premajor|new) Type of release
625
+
626
+ OPTIONS
627
+ -i, --independent increment npm packages independent of VERSION file
628
+ -v, --version=version force version
629
+ --no-deps skip dependency update
630
+ --no-script skip creation of script
631
+ --only-npm-packages=only-npm-packages [default: .*] regular expression for which NPM packages to include
632
+ --script-prefix=script-prefix [default: 7.10] prefix for db script version creation.
633
+ --exclude-dir exclude directories where to search for package.json
634
+
635
+ EXAMPLES
636
+ $ ops version minor
637
+ $ ops version new-version -v 3.4.0
638
+ $ ops version new-version -v 3.2.1 --script-prefix 7.10
639
+ $ ops version patch --no-deps
640
+ $ ops version patch --no-script
641
+ $ ops version new -v 3.2.1 --only-npm-packages "@adinsure/"
642
+ ```
643
+
644
+ * *prerelease* is generated from YearMonth incremental number (example: 201909.1) or RC (example: rc.0). prereleases generated in same month will have only last number incremented and first prerelease generated in next month will bump first number and start with 0 (example: 201910.0)
645
+
646
+ * *patch* increments third number and prerelease number is ommited. (example: 3.4.0-201909.2 -> 3.4.0 and 3.3.11 -> 3.3.12)
647
+
648
+ * *preminor* increments for prerelease in second number (example: 3.2.3 -> 3.3.0-201910.0)
649
+
650
+ * *minor* increments second number (example: 3.4.3 -> 3.5.0)
651
+
652
+ * *premajor* increments to prerelease in first number (example: 3.4.3 -> 4.0.0-201911.0)
653
+
654
+ * *major* increments first number (example: 3.4.5 -> 4.0.0)
655
+
656
+ * *new-version* allows setting own version regardles of VERSION file. **Incrementing NPM version separately is not supported in this case. NPM packages are also bumped to specified version.**
657
+
658
+ > Prerelease Note: Prerelease should only be user in **master** branch.
659
+
660
+ > Patch Note: Patch is used on **release/x.x** branches for creating patch releases
661
+
662
+ > When creating new **release/x.x** branch 2 steps are needed:
663
+ > * creating *patch* version on **release/x.x** branch
664
+ > * creating *preminor* or *premajor* version on **master** branch
665
+
666
+ > Dependencies for packages are updated on all package.json files. If prerelease version in specified full version is specified (example: 4.0.0-201911.0), or if non prerelease version ends with x (example: 3.5.x)
667
+
668
+ > NPM packages node: For npm package to update properly *wsrun-version* preset needs to be in *scripts* portion of *package.json*. (example: `"wsrun-version": "yarn wsrun -p @adinsure-tools/* -p @adinsure/* -c"`)
669
+
670
+ ## `ops sql <type> <module> [flags]`
671
+
672
+ creates a new database script
673
+
674
+ ```
675
+ USAGE
676
+ $ ops sql <type> <module> [flags]
677
+
678
+ ARGUMENTS
679
+ TYPE (schema|data|migration) Type of database scripts
680
+ MODULE (acc|claims|core|pas|reins|shared) Module of data database scripts
681
+
682
+ OPTIONS
683
+ -l, --layer=layer name of the configuration layer for which you are generating database script
684
+ -v, --version=version version for which you're generating database script
685
+
686
+ EXAMPLES
687
+ $ ops sql schema
688
+ $ ops sql data shared --layer basic
689
+ ```
690
+
691
+ ## `ops translate`
692
+
693
+ downloads translate from AdDictionary service
694
+
695
+ ```
696
+ USAGE
697
+ $ ops translate <language> [flags]
698
+
699
+ ARGUMENTS
700
+ LANGUAGE language id you want to download. Values must be semi-colon (;) separated.
701
+
702
+ OPTIONS
703
+ -f, --format=json|xml (required) translations format [xml - server translations, json - client translations]
704
+ -m, --module=module module name you want to download. Values must be semi-colon (;) separated.
705
+ -o, --output=output [default: .] absolute or relative destination path to a folder where translations are extracted.
706
+ --filename=filename specify filename of output (XML only).
707
+ --respectServerFilename respect filename that is returned from AdDictionary server (XML only).
708
+
709
+ EXAMPLES
710
+ $ ops translate "en-US=en-US;ru-Ru=ru-RU" -f json -m "Client business accounting;Client business base;"
711
+ $ ops translate "en-US=en-US;ru-Ru=ru-RU" -f xml -o translationDestination
712
+ ```
713
+
714
+ ## `ops update`
715
+
716
+ update the ops CLI
717
+
718
+ ```
719
+ USAGE
720
+ $ ops update [CHANNEL]
721
+
722
+ OPTIONS
723
+ --from-local interactively choose an already installed version
724
+ ```
725
+
@@ -1,7 +1,6 @@
1
1
  import { flags } from '@oclif/command';
2
2
  import CommandBase from '../../command.base';
3
3
  export default class DownloadClient extends CommandBase {
4
- static aliases: string[];
5
4
  static description: string;
6
5
  static usage: string;
7
6
  static examples: string[];
@@ -52,8 +52,7 @@ class DownloadClient extends command_base_1.default {
52
52
  }
53
53
  }
54
54
  exports.default = DownloadClient;
55
- DownloadClient.aliases = ['download:client'];
56
- DownloadClient.description = 'download AdInsure Client from Azure storage';
55
+ DownloadClient.description = 'download AdInsure Client zip from Azure storage';
57
56
  DownloadClient.usage = 'download:client <flags>';
58
57
  DownloadClient.examples = [
59
58
  `$ ops download:client -v 3.2.0 -o ~/Downloads`
@@ -1,7 +1,6 @@
1
1
  import { flags } from '@oclif/command';
2
2
  import CommandBase from '../../command.base';
3
3
  export default class DownloadIdentityServer extends CommandBase {
4
- static aliases: string[];
5
4
  static description: string;
6
5
  static usage: string;
7
6
  static examples: string[];
@@ -52,8 +52,7 @@ class DownloadIdentityServer extends command_base_1.default {
52
52
  }
53
53
  }
54
54
  exports.default = DownloadIdentityServer;
55
- DownloadIdentityServer.aliases = ['download:identity-server'];
56
- DownloadIdentityServer.description = 'download AdInsure Identity Server from Azure storage';
55
+ DownloadIdentityServer.description = 'download AdInsure Identity Server zip from Azure storage';
57
56
  DownloadIdentityServer.usage = 'download:identity-server <flags>';
58
57
  DownloadIdentityServer.examples = [
59
58
  `$ ops download:identity-server -v 3.0.3 -o ~/Downloads`
@@ -52,8 +52,8 @@ class DownloadPlatform extends command_base_1.default {
52
52
  }
53
53
  }
54
54
  exports.default = DownloadPlatform;
55
- DownloadPlatform.aliases = ['download', 'download:platform'];
56
- DownloadPlatform.description = 'download platform from azure storage';
55
+ DownloadPlatform.aliases = ['download'];
56
+ DownloadPlatform.description = 'download AdInsure Platform bundle containing zip of Client, Server and IdentityServer from azure storage';
57
57
  DownloadPlatform.usage = 'download <flags>';
58
58
  DownloadPlatform.examples = [
59
59
  `$ ops download -v 6.0.0 -o ~/Downloads`
@@ -1,7 +1,6 @@
1
1
  import { flags } from '@oclif/command';
2
2
  import CommandBase from '../../command.base';
3
3
  export default class DownloadScheduler extends CommandBase {
4
- static aliases: string[];
5
4
  static description: string;
6
5
  static usage: string;
7
6
  static examples: string[];
@@ -52,8 +52,7 @@ class DownloadScheduler extends command_base_1.default {
52
52
  }
53
53
  }
54
54
  exports.default = DownloadScheduler;
55
- DownloadScheduler.aliases = ['download:scheduler'];
56
- DownloadScheduler.description = 'download scheduler from azure storage';
55
+ DownloadScheduler.description = 'download AdInsure Scheduler zip from azure storage';
57
56
  DownloadScheduler.usage = 'download:scheduler <flags>';
58
57
  DownloadScheduler.examples = [
59
58
  `$ ops download:scheduler -v 3.2.0 -o ~/Downloads`
@@ -1,7 +1,6 @@
1
1
  import { flags } from '@oclif/command';
2
2
  import CommandBase from '../../command.base';
3
3
  export default class DownloadServer extends CommandBase {
4
- static aliases: string[];
5
4
  static description: string;
6
5
  static usage: string;
7
6
  static examples: string[];
@@ -52,8 +52,7 @@ class DownloadServer extends command_base_1.default {
52
52
  }
53
53
  }
54
54
  exports.default = DownloadServer;
55
- DownloadServer.aliases = ['download:server'];
56
- DownloadServer.description = 'download AdInsure Server from Azure storage';
55
+ DownloadServer.description = 'download AdInsure Server zip from Azure storage';
57
56
  DownloadServer.usage = 'download:server <flags>';
58
57
  DownloadServer.examples = [
59
58
  `$ ops download:server -v 3.2.0 -o ~/Downloads`
@@ -1,7 +1,6 @@
1
1
  import { flags } from '@oclif/command';
2
2
  import CommandBase from '../../command.base';
3
3
  export default class DownloadStudio extends CommandBase {
4
- static aliases: string[];
5
4
  static description: string;
6
5
  static usage: string;
7
6
  static examples: string[];
@@ -63,8 +63,7 @@ class DownloadStudio extends command_base_1.default {
63
63
  }
64
64
  }
65
65
  exports.default = DownloadStudio;
66
- DownloadStudio.aliases = ['download:studio'];
67
- DownloadStudio.description = 'download studio vsix from azure storage';
66
+ DownloadStudio.description = 'download AdInsure Studio vsix from azure storage';
68
67
  DownloadStudio.usage = 'download:studio <flags>';
69
68
  DownloadStudio.examples = [
70
69
  `$ ops download:studio -v 15.0.0 -o ~/Downloads`,
@@ -2,7 +2,6 @@ import { flags } from '@oclif/command';
2
2
  import * as semver from 'semver';
3
3
  import CommandBase from '../../command.base';
4
4
  export default class GitlabNextNightlyTag extends CommandBase {
5
- static aliases: string[];
6
5
  static description: string;
7
6
  static usage: string;
8
7
  static examples: string[];
@@ -128,12 +128,10 @@ class GitlabNextNightlyTag extends command_base_1.default {
128
128
  }
129
129
  }
130
130
  exports.default = GitlabNextNightlyTag;
131
- GitlabNextNightlyTag.aliases = ['gitlab:next-nightly-tag'];
132
131
  GitlabNextNightlyTag.description = 'creates new gitlab tag';
133
- GitlabNextNightlyTag.usage = 'gitlab:next-nightly-tag <version> -n';
132
+ GitlabNextNightlyTag.usage = 'gitlab:next-nightly-tag <version>';
134
133
  GitlabNextNightlyTag.examples = [
135
- `$ ops gitlab:tag 17.0.0`,
136
- `$ ops gitlab:tag 17.0.0 -n`
134
+ `$ ops gitlab:next-nightly-tag 17.0.0`
137
135
  ];
138
136
  GitlabNextNightlyTag.args = [
139
137
  {
@@ -1,18 +1,19 @@
1
1
  import { flags } from '@oclif/command';
2
2
  import CommandBase from '../command.base';
3
3
  export default class Login extends CommandBase {
4
- private readonly npmRegistries;
5
4
  static description: string;
6
5
  static usage: string;
7
6
  static examples: string[];
8
7
  static flags: {
8
+ servicePrincipal: import("@oclif/parser/lib/flags").IBooleanFlag<boolean>;
9
9
  deviceFlow: import("@oclif/parser/lib/flags").IBooleanFlag<boolean>;
10
10
  clientId: flags.IOptionFlag<string | undefined>;
11
- clientSecret: flags.IOptionFlag<string | undefined>;
11
+ secret: flags.IOptionFlag<string | undefined>;
12
12
  npm: import("@oclif/parser/lib/flags").IBooleanFlag<boolean>;
13
13
  skipCI: flags.IOptionFlag<string | undefined>;
14
14
  };
15
15
  static responsePageContent: string;
16
+ private readonly npmRegistries;
16
17
  /**
17
18
  * Get NPM token for adinsure npm repositories
18
19
  *
@@ -28,8 +28,10 @@ class Login extends command_base_1.default {
28
28
  token = await this.security.getNPMToken();
29
29
  this.npmRegistries.forEach(registry => {
30
30
  const registryUrl = url.parse(registry);
31
+ // tslint:disable-next-line: no-floating-promises
31
32
  npmRc.set(`//${registryUrl.hostname}${registryUrl.pathname}:_authToken`, token);
32
33
  });
34
+ // tslint:disable-next-line: no-floating-promises
33
35
  npmRc.save();
34
36
  this.log(`${chalk_1.default.green('NPM token generated!')}`);
35
37
  resolve();
@@ -50,7 +52,7 @@ class Login extends command_base_1.default {
50
52
  await this.setNPM();
51
53
  return;
52
54
  }
53
- catch (err) {
55
+ catch (_a) {
54
56
  this.log(`${chalk_1.default.yellow('Note: Login is needed to get NPM token!')}`);
55
57
  }
56
58
  }
@@ -63,9 +65,11 @@ class Login extends command_base_1.default {
63
65
  this.error(err);
64
66
  }
65
67
  }
68
+ else if (flags.servicePrincipal || flags.clientId || flags.secret) {
69
+ this.warn(`${chalk_1.default.red('[DEPRECATED] --servicePrincipal parameter is deprecated. To use with service principal, please set environment variables AZURE_CLIENT_ID and AZURE_CLIENT_SECRET! Login is not required!')}`);
70
+ }
66
71
  else {
67
72
  this.log(`${chalk_1.default.yellow('Note: We have launched a browser for you to login.')}`);
68
- // await open(this.security.getAuthUrl());
69
73
  let loginUrl = await this.security.getLoginUrl();
70
74
  await open(loginUrl);
71
75
  let server = http.createServer(async (req, res) => {
@@ -102,9 +106,15 @@ Login.description = 'log in to use ops services';
102
106
  Login.usage = 'login';
103
107
  Login.examples = [
104
108
  `$ ops login`,
105
- `$ ops login -c {client id} -s {secret}`
109
+ `$ ops login --npm`,
110
+ `$ ops login --skipCi CI`,
111
+ `$ ops login --deviceFlow`
106
112
  ];
107
113
  Login.flags = {
114
+ servicePrincipal: command_1.flags.boolean({
115
+ description: 'authenticate using service principal credentials',
116
+ default: false
117
+ }),
108
118
  deviceFlow: command_1.flags.boolean({
109
119
  description: 'authenticate using device flow',
110
120
  default: false
@@ -112,12 +122,12 @@ Login.flags = {
112
122
  clientId: command_1.flags.string({
113
123
  char: 'c',
114
124
  env: 'AZURE_CLIENT_ID',
115
- description: '(application) client id'
125
+ description: '[DEPRECATED] (application) client id'
116
126
  }),
117
- clientSecret: command_1.flags.string({
127
+ secret: command_1.flags.string({
118
128
  char: 's',
119
129
  env: 'AZURE_CLIENT_SECRET',
120
- description: 'client secret'
130
+ description: '[DEPRECATED] client secret'
121
131
  }),
122
132
  npm: command_1.flags.boolean({
123
133
  description: 'register also for npm',
@@ -2,7 +2,6 @@ import { flags } from '@oclif/command';
2
2
  import CommandBase from '../../command.base';
3
3
  import { AzurePackageArray, NpmPackage } from '../../types/npm.types';
4
4
  export default class NpmCheckPublish extends CommandBase {
5
- static aliases: string[];
6
5
  static description: string;
7
6
  static usage: string;
8
7
  static examples: string[];
@@ -48,8 +48,7 @@ class NpmCheckPublish extends command_base_1.default {
48
48
  }
49
49
  }
50
50
  exports.default = NpmCheckPublish;
51
- NpmCheckPublish.aliases = ['npm:check-publish'];
52
- NpmCheckPublish.description = 'check if npm packages was published';
51
+ NpmCheckPublish.description = 'check if npm packages were published';
53
52
  NpmCheckPublish.usage = 'npm:check-publish [options]';
54
53
  NpmCheckPublish.examples = [
55
54
  '$ ops npm:check-publish -v 6.0.1',
@@ -2,7 +2,6 @@ import { flags } from '@oclif/command';
2
2
  import CommandBase from '../../command.base';
3
3
  import { AzurePackageArray, NpmPackage } from '../../types/npm.types';
4
4
  export default class NpmPublish extends CommandBase {
5
- static aliases: string[];
6
5
  static description: string;
7
6
  static usage: string;
8
7
  static examples: string[];
@@ -131,7 +131,6 @@ class NpmPublish extends command_base_1.default {
131
131
  }
132
132
  }
133
133
  exports.default = NpmPublish;
134
- NpmPublish.aliases = ['npm:publish'];
135
134
  NpmPublish.description = 'Publish npm packages';
136
135
  NpmPublish.usage = 'npm:publish [options]';
137
136
  NpmPublish.examples = [
@@ -1,11 +1,11 @@
1
1
  export default class NpmRc {
2
- private filePath;
2
+ private readonly filePath;
3
3
  private config;
4
4
  constructor(createIfNotExists?: boolean);
5
5
  /**
6
6
  * Load config file
7
7
  */
8
- load(): Promise<void>;
8
+ load(): void;
9
9
  /**
10
10
  * Add registry to config file
11
11
  */
package/lib/lib/npmrc.js CHANGED
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const fs = require("fs");
4
3
  const child_process_1 = require("child_process");
5
- const os = require("os");
4
+ const fs = require("fs");
6
5
  const ini = require("ini");
6
+ const os = require("os");
7
7
  class NpmRc {
8
8
  constructor(createIfNotExists = true) {
9
9
  this.config = {};
10
10
  try {
11
- this.filePath = child_process_1.execSync("npm config get userconfig", { stdio: ["pipe", "pipe", "ignore"] })
11
+ this.filePath = child_process_1.execSync('npm config get userconfig', { stdio: ['pipe', 'pipe', 'ignore'] })
12
12
  .toString()
13
13
  .trim();
14
14
  }
@@ -25,8 +25,8 @@ class NpmRc {
25
25
  /**
26
26
  * Load config file
27
27
  */
28
- async load() {
29
- this.config = ini.parse(fs.readFileSync(this.filePath, "utf8"));
28
+ load() {
29
+ this.config = ini.parse(fs.readFileSync(this.filePath, 'utf8'));
30
30
  }
31
31
  /**
32
32
  * Add registry to config file
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const path = require("path");
4
3
  const fs = require("fs-extra");
4
+ const path = require("path");
5
5
  class LocalCachePlugin {
6
6
  constructor(path) {
7
7
  this._accessTokenPath = path;
@@ -15,7 +15,7 @@ class LocalCachePlugin {
15
15
  }
16
16
  // Load file only if exists
17
17
  if (fs.existsSync(this._accessTokenPath)) {
18
- cacheContext.tokenCache.deserialize(await fs.readFile(this._accessTokenPath, "utf-8"));
18
+ cacheContext.tokenCache.deserialize(await fs.readFile(this._accessTokenPath, 'utf-8'));
19
19
  }
20
20
  }
21
21
  async afterCacheAccess(cacheContext) {
@@ -12,8 +12,8 @@ export default class SecurityContext {
12
12
  private readonly redirectUri;
13
13
  private readonly resource;
14
14
  private readonly _accessTokenPath;
15
- private _pca;
16
- private _cryptoProvider;
15
+ private readonly _pca;
16
+ private readonly _cryptoProvider;
17
17
  private _verifier;
18
18
  private _challenge;
19
19
  /**
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const msal_node_1 = require("@azure/msal-node");
4
+ const lodash_1 = require("lodash");
4
5
  const path = require("path");
5
6
  const cache_1 = require("./cache");
6
7
  /**
@@ -41,23 +42,25 @@ class SecurityContext {
41
42
  * @returns [[Promise<TokenResponse>]]
42
43
  */
43
44
  getLoginUrl() {
44
- return new Promise((resolve, reject) => {
45
+ return new Promise((resolve, _reject) => {
45
46
  // Generate PKCE Codes before starting the authorization flow
46
47
  this._cryptoProvider.generatePkceCodes().then(({ verifier, challenge }) => {
47
48
  this._verifier = verifier;
48
49
  this._challenge = challenge;
49
50
  const authCodeUrlParameters = {
50
- scopes: [this.resource + "/.default"],
51
+ scopes: [this.resource + '/.default'],
51
52
  redirectUri: this.redirectUri,
52
53
  codeChallenge: this._challenge,
53
54
  codeChallengeMethod: 'S256'
54
55
  };
55
56
  // Get url to sign user in and consent to scopes needed for applicatio
56
- this._pca.getAuthCodeUrl(authCodeUrlParameters).then((url) => {
57
+ this._pca.getAuthCodeUrl(authCodeUrlParameters).then(url => {
57
58
  resolve(url);
58
- }).catch((error) => {
59
- console.log(JSON.stringify(error));
59
+ }).catch(error => {
60
+ lodash_1.reject(JSON.stringify(error));
60
61
  });
62
+ }).catch(reason => {
63
+ lodash_1.reject(reason);
61
64
  });
62
65
  });
63
66
  }
@@ -75,7 +78,7 @@ class SecurityContext {
75
78
  if (cachedAccounts.length > 0) {
76
79
  this._pca.acquireTokenSilent({
77
80
  account: cachedAccounts[0],
78
- scopes: [this.resource + "/.default", "offline_access"]
81
+ scopes: [this.resource + '/.default', 'offline_access']
79
82
  }).then(response => {
80
83
  if (response) {
81
84
  let accessToken = response.accessToken;
@@ -104,7 +107,7 @@ class SecurityContext {
104
107
  if (ccaCachedAccounts.length > 0) {
105
108
  cca.acquireTokenSilent({
106
109
  account: ccaCachedAccounts[0],
107
- scopes: [this.resource + "/.default"]
110
+ scopes: [this.resource + '/.default']
108
111
  }).then(response => {
109
112
  if (response) {
110
113
  let accessToken = response.accessToken;
@@ -119,7 +122,7 @@ class SecurityContext {
119
122
  }
120
123
  else {
121
124
  cca.acquireTokenByClientCredential({
122
- scopes: [this.resource + "/.default", "offline_access"]
125
+ scopes: [this.resource + '/.default', 'offline_access']
123
126
  }).then(response => {
124
127
  if (response) {
125
128
  let accessToken = response.accessToken;
@@ -152,12 +155,12 @@ class SecurityContext {
152
155
  // Add PKCE code verifier to token request object
153
156
  const tokenRequest = {
154
157
  code: query.code,
155
- scopes: [this.resource + "/.default", "offline_access"],
158
+ scopes: [this.resource + '/.default', 'offline_access'],
156
159
  redirectUri: this.redirectUri,
157
160
  codeVerifier: this._verifier,
158
161
  clientInfo: query.client_info
159
162
  };
160
- this._pca.acquireTokenByCode(tokenRequest).then((token) => {
163
+ this._pca.acquireTokenByCode(tokenRequest).then(token => {
161
164
  var _a;
162
165
  if (token === null) {
163
166
  throw new Error(`PKCE getting token.`);
@@ -165,7 +168,7 @@ class SecurityContext {
165
168
  if ((_a = token.account) === null || _a === void 0 ? void 0 : _a.name) {
166
169
  resolve(token.account.name);
167
170
  }
168
- }).catch((err) => {
171
+ }).catch(err => {
169
172
  throw new Error(err);
170
173
  });
171
174
  });
@@ -178,15 +181,16 @@ class SecurityContext {
178
181
  acquireTokenDeviceFlow() {
179
182
  return new Promise((resolve, reject) => {
180
183
  this._pca.acquireTokenByDeviceCode({
181
- deviceCodeCallback: (response) => {
184
+ deviceCodeCallback: response => {
182
185
  if (response.message) {
186
+ // tslint:disable-next-line: no-console
183
187
  console.log(response.message);
184
188
  }
185
189
  },
186
- scopes: [this.resource + "/.default", "offline_access"]
187
- }).then(response => {
190
+ scopes: [this.resource + '/.default', 'offline_access']
191
+ }).then(_response => {
188
192
  resolve();
189
- }).catch((err) => {
193
+ }).catch(err => {
190
194
  reject(err);
191
195
  });
192
196
  });
@@ -203,7 +207,7 @@ class SecurityContext {
203
207
  if (cachedAccounts.length > 0) {
204
208
  this._pca.acquireTokenSilent({
205
209
  account: cachedAccounts[0],
206
- scopes: [this.devopsResourceId + "/.default", "offline_access"]
210
+ scopes: [this.devopsResourceId + '/.default', 'offline_access']
207
211
  }).then(response => {
208
212
  if (response) {
209
213
  resolve(response.accessToken);
@@ -1 +1 @@
1
- {"version":"4.0.0-rc6","commands":{"doctor":{"id":"doctor","description":"check if everyting is installed","usage":"doctor","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops doctor"],"flags":{"fix":{"name":"fix","type":"boolean","char":"p","description":"try to install missing packages","allowNo":false}},"args":[]},"login":{"id":"login","description":"log in to use ops services","usage":"login","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops login","$ ops login -c {client id} -s {secret}"],"flags":{"deviceFlow":{"name":"deviceFlow","type":"boolean","description":"authenticate using device flow","allowNo":false},"clientId":{"name":"clientId","type":"option","char":"c","description":"(application) client id"},"clientSecret":{"name":"clientSecret","type":"option","char":"s","description":"client secret"},"npm":{"name":"npm","type":"boolean","description":"register also for npm","allowNo":false},"skipCI":{"name":"skipCI","type":"option","description":"Skip login if environment variables is set"}},"args":[]},"prepare-content":{"id":"prepare-content","description":"copies files as described in .opsprepare which is at root of source directory","usage":"prepare-content -d <destination> [-s <source>]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops prepare-content -d .\\my_workspace","$ ops prepare-content -d .\\my_workspace -s .\\my_repository","$ ops prepare-content -d C:\\git\\my_workspace","$ ops prepare-content -d C:\\git\\my_workspace -s C:\\git\\my_repository\\my_repository"],"flags":{"destination":{"name":"destination","type":"option","char":"d","description":"where to copy the workspace files","required":true},"source":{"name":"source","type":"option","char":"s","description":"[optional] source directory, default: current dir","required":false,"default":"."}},"args":[]},"sql":{"id":"sql","description":"creates a new database script","usage":"sql <type> <module> [flags]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops sql schema ","$ ops sql data shared --layer basic"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version for which you're generating database script"},"layer":{"name":"layer","type":"option","char":"l","description":"name of the configuration layer for which you are generating database script"}},"args":[{"name":"type","description":"Type of database scripts","options":["schema","data","migration"]},{"name":"module","description":"Module of data database scripts","options":["acc","claims","core","pas","reins","shared"]}]},"translate":{"id":"translate","description":"downloads translate from AdDictionary service","usage":"translate <language> [flags]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops translate \"en-US=en-US;ru-Ru=ru-RU\" -f json -m \"Client business accounting;Client business base;\"","$ ops translate \"en-US=en-US;ru-Ru=ru-RU\" -f xml -o translationDestination"],"flags":{"format":{"name":"format","type":"option","char":"f","description":"translations format [xml - server translations, json - client translations]","required":true,"options":["json","xml"]},"module":{"name":"module","type":"option","char":"m","description":"module name you want to download. Values must be semi-colon (;) separated."},"output":{"name":"output","type":"option","char":"o","description":"absolute or relative destination path to a folder where translations are extracted.","default":"."},"filename":{"name":"filename","type":"option","description":"specify filename of output (XML only)."},"respectServerFilename":{"name":"respectServerFilename","type":"boolean","description":"respect filename that is returned from AdDictionary server (XML only).","allowNo":false}},"args":[{"name":"language","description":"language id you want to download. Values must be semi-colon (;) separated.","required":true}]},"version":{"id":"version","description":"release new version","usage":"version <type> [flags]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops version patch","$ ops version prerelease -i","$ ops version new -v 3.4.3"],"flags":{"independent":{"name":"independent","type":"boolean","char":"i","description":"increment npm packages independent of VERSION file","allowNo":false},"version":{"name":"version","type":"option","char":"v","description":"force version"},"script-prefix":{"name":"script-prefix","type":"option","description":"prefix for db script version creation. (default: 7.10)","default":"7.10"},"no-deps":{"name":"no-deps","type":"boolean","description":"skip dependency update","allowNo":false},"no-script":{"name":"no-script","type":"boolean","description":"skip creation of script","allowNo":false},"only-npm-packages":{"name":"only-npm-packages","type":"option","description":"regular expression for which NPM packages to include","default":".*"},"exclude-dir":{"name":"exclude-dir","type":"option","description":"exclude directories where to search for package.json"}},"args":[{"name":"type","description":"Type of release","required":true,"options":["patch","minor","major","prerelease","preminor","premajor","new"]}]},"download:client":{"id":"download:client","description":"download AdInsure Client from Azure storage","usage":"download:client <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["download:client"],"examples":["$ ops download:client -v 3.2.0 -o ~/Downloads"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"}},"args":[]},"download:identity-server":{"id":"download:identity-server","description":"download AdInsure Identity Server from Azure storage","usage":"download:identity-server <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["download:identity-server"],"examples":["$ ops download:identity-server -v 3.0.3 -o ~/Downloads"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"}},"args":[]},"download:platform":{"id":"download:platform","description":"download platform from azure storage","usage":"download <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["download","download:platform"],"examples":["$ ops download -v 6.0.0 -o ~/Downloads"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"}},"args":[]},"download:scheduler":{"id":"download:scheduler","description":"download scheduler from azure storage","usage":"download:scheduler <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["download:scheduler"],"examples":["$ ops download:scheduler -v 3.2.0 -o ~/Downloads"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"}},"args":[]},"download:server":{"id":"download:server","description":"download AdInsure Server from Azure storage","usage":"download:server <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["download:server"],"examples":["$ ops download:server -v 3.2.0 -o ~/Downloads"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"}},"args":[]},"download:studio":{"id":"download:studio","description":"download studio vsix from azure storage","usage":"download:studio <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["download:studio"],"examples":["$ ops download:studio -v 15.0.0 -o ~/Downloads","$ ops download:studio -v 15.0.0 -i"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"},"install":{"name":"install","type":"boolean","char":"i","description":"install plugin to vscode. save to temp folder and remove vsix after.","allowNo":false}},"args":[]},"gitlab:next-nightly-tag":{"id":"gitlab:next-nightly-tag","description":"creates new gitlab tag","usage":"gitlab:next-nightly-tag <version> -n","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["gitlab:next-nightly-tag"],"examples":["$ ops gitlab:tag 17.0.0","$ ops gitlab:tag 17.0.0 -n"],"flags":{"pat":{"name":"pat","type":"option","description":"Token from user that has permissions to list and create tags","required":true},"host":{"name":"host","type":"option","description":"Server hostname","required":true,"default":"https://git.adacta-fintech.com"},"project":{"name":"project","type":"option","description":"Project ID","required":true,"default":"413"},"reference":{"name":"reference","type":"option","description":"Reference to create tag on (branch, commit, tag)","required":true},"dryRun":{"name":"dryRun","type":"boolean","description":"Only printout version and don't create it","allowNo":false}},"args":[{"name":"version","description":"Tag version"}]},"jira:issue":{"id":"jira:issue","description":"get Jira issue","usage":"jira:issue <issue>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops jira:issue LJADIRD-1337"],"flags":{"username":{"name":"username","type":"option","description":"jira username","required":true},"password":{"name":"password","type":"option","description":"jira password","required":true},"hostname":{"name":"hostname","type":"option","description":"jira hostname","default":"https://jira.adacta-fintech.com"}},"args":[{"name":"issue","description":"Jira issue number","required":true}]},"jira:labels":{"id":"jira:labels","description":"list or edit labels on Jira issue","usage":"jira:labels <issue> -a [label] -r [label]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops jira:labels LJADIRD-1337"],"flags":{"username":{"name":"username","type":"option","description":"jira username","required":true},"password":{"name":"password","type":"option","description":"jira password","required":true},"hostname":{"name":"hostname","type":"option","description":"jira hostname","default":"https://jira.adacta-fintech.com"},"add":{"name":"add","type":"option","char":"a","description":"add label"},"remove":{"name":"remove","type":"option","char":"r","description":"remove label"}},"args":[{"name":"issue","description":"Jira issue number","required":true}]},"log:add":{"id":"log:add","description":"creates a new changelog entry","usage":"log <issue> -t [type] -c [options]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["log","log:add"],"examples":["$ ops log LJADIRD-1234 -t feature","$ ops log LJADIRD-5678 -t fixed","$ ops log LJADIRD-8765 -t breaking -c Platform","$ ops log LJADIRD-4321 -t improve -c Configuration"],"flags":{"type":{"name":"type","type":"option","char":"t","description":"type of changelog","options":["feature","fixed","improve","breaking"]},"component":{"name":"component","type":"option","char":"c","description":"Component for which new changelog should be generated","default":""}},"args":[{"name":"issue","description":"Jira issue number"}]},"log:generate":{"id":"log:generate","description":"generates final changelog from unreleased notes","usage":"log:gen [options]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["log:gen"],"examples":["$ ops log:gen","$ ops log:gen -p","$ ops log:gen -c Platform","$ ops log:gen -c Platform,Configuration","$ ops log:gen -c Implementation -f CHANGELOG.Implementation.md"],"flags":{"components":{"name":"components","type":"option","char":"c","description":"components separated by comma (,) to process for final changelog","default":""},"file":{"name":"file","type":"option","char":"f","description":"file to update with new changelogs","default":"CHANGELOG.md"},"force":{"name":"force","type":"boolean","description":"update target file without prompting for confirmation","allowNo":false},"preview":{"name":"preview","type":"boolean","char":"p","description":"generates a preview markdown of current unreleased changelogs","allowNo":false},"version":{"name":"version","type":"option","char":"v","description":"version for which you're generating changelogs"},"ignore-no-changelogs":{"name":"ignore-no-changelogs","type":"boolean","description":"generate final changelog even if no unreleased changelogs exist","allowNo":false}},"args":[]},"log:validate":{"id":"log:validate","description":"validates formatting of all unreleased changelogs","usage":"log:validate [options]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["log:validate"],"examples":["$ ops log:validate"],"flags":{},"args":[]},"npm:check.publish":{"id":"npm:check.publish","description":"check if npm packages was published","usage":"npm:check-publish [options]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["npm:check-publish"],"examples":["$ ops npm:check-publish -v 6.0.1","$ ops npm:check-publish -p @adinsure/* -v 6.0.0","$ ops npm:check-publish -p @adinsure/* -x @adisure/demo -v 6.0.0"],"flags":{"package":{"name":"package","type":"option","char":"p","description":"package name filter you want to check"},"exclude":{"name":"exclude","type":"option","char":"x","description":"exclude packages from filter"},"version":{"name":"version","type":"option","char":"v","description":"version we want to check if published","required":true},"pat":{"name":"pat","type":"option","description":"PAT token or AZURE_DEVOPS_EXT_PAT environment variable"}},"args":[]},"npm:publish":{"id":"npm:publish","description":"Publish npm packages","usage":"npm:publish [options]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["npm:publish"],"examples":["$ ops npm:publish -v 15.0.0","$ ops npm:publish -v 15.0.0","$ ops npm:publish -p @adinsure-tooling/* -v 15.0.0","$ ops npm:publish -p @adinsure-tooling/* -x @adisure-tooling/studio-services -v 6.0.0"],"flags":{"package":{"name":"package","type":"option","char":"p","description":"package name filter you want to check"},"exclude":{"name":"exclude","type":"option","char":"x","description":"exclude packages from filter"},"version":{"name":"version","type":"option","char":"v","description":"version we want to check if published","required":true},"pat":{"name":"pat","type":"option","description":"PAT token or AZURE_DEVOPS_EXT_PAT environment variable"}},"args":[]}}}
1
+ {"version":"4.0.0-rc7","commands":{"doctor":{"id":"doctor","description":"check if everyting is installed","usage":"doctor","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops doctor"],"flags":{"fix":{"name":"fix","type":"boolean","char":"p","description":"try to install missing packages","allowNo":false}},"args":[]},"login":{"id":"login","description":"log in to use ops services","usage":"login","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops login","$ ops login --npm","$ ops login --skipCi CI","$ ops login --deviceFlow"],"flags":{"servicePrincipal":{"name":"servicePrincipal","type":"boolean","description":"authenticate using service principal credentials","allowNo":false},"deviceFlow":{"name":"deviceFlow","type":"boolean","description":"authenticate using device flow","allowNo":false},"clientId":{"name":"clientId","type":"option","char":"c","description":"[DEPRECATED] (application) client id"},"secret":{"name":"secret","type":"option","char":"s","description":"[DEPRECATED] client secret"},"npm":{"name":"npm","type":"boolean","description":"register also for npm","allowNo":false},"skipCI":{"name":"skipCI","type":"option","description":"Skip login if environment variables is set"}},"args":[]},"prepare-content":{"id":"prepare-content","description":"copies files as described in .opsprepare which is at root of source directory","usage":"prepare-content -d <destination> [-s <source>]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops prepare-content -d .\\my_workspace","$ ops prepare-content -d .\\my_workspace -s .\\my_repository","$ ops prepare-content -d C:\\git\\my_workspace","$ ops prepare-content -d C:\\git\\my_workspace -s C:\\git\\my_repository\\my_repository"],"flags":{"destination":{"name":"destination","type":"option","char":"d","description":"where to copy the workspace files","required":true},"source":{"name":"source","type":"option","char":"s","description":"[optional] source directory, default: current dir","required":false,"default":"."}},"args":[]},"sql":{"id":"sql","description":"creates a new database script","usage":"sql <type> <module> [flags]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops sql schema ","$ ops sql data shared --layer basic"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version for which you're generating database script"},"layer":{"name":"layer","type":"option","char":"l","description":"name of the configuration layer for which you are generating database script"}},"args":[{"name":"type","description":"Type of database scripts","options":["schema","data","migration"]},{"name":"module","description":"Module of data database scripts","options":["acc","claims","core","pas","reins","shared"]}]},"translate":{"id":"translate","description":"downloads translate from AdDictionary service","usage":"translate <language> [flags]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops translate \"en-US=en-US;ru-Ru=ru-RU\" -f json -m \"Client business accounting;Client business base;\"","$ ops translate \"en-US=en-US;ru-Ru=ru-RU\" -f xml -o translationDestination"],"flags":{"format":{"name":"format","type":"option","char":"f","description":"translations format [xml - server translations, json - client translations]","required":true,"options":["json","xml"]},"module":{"name":"module","type":"option","char":"m","description":"module name you want to download. Values must be semi-colon (;) separated."},"output":{"name":"output","type":"option","char":"o","description":"absolute or relative destination path to a folder where translations are extracted.","default":"."},"filename":{"name":"filename","type":"option","description":"specify filename of output (XML only)."},"respectServerFilename":{"name":"respectServerFilename","type":"boolean","description":"respect filename that is returned from AdDictionary server (XML only).","allowNo":false}},"args":[{"name":"language","description":"language id you want to download. Values must be semi-colon (;) separated.","required":true}]},"version":{"id":"version","description":"release new version","usage":"version <type> [flags]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops version patch","$ ops version prerelease -i","$ ops version new -v 3.4.3"],"flags":{"independent":{"name":"independent","type":"boolean","char":"i","description":"increment npm packages independent of VERSION file","allowNo":false},"version":{"name":"version","type":"option","char":"v","description":"force version"},"script-prefix":{"name":"script-prefix","type":"option","description":"prefix for db script version creation. (default: 7.10)","default":"7.10"},"no-deps":{"name":"no-deps","type":"boolean","description":"skip dependency update","allowNo":false},"no-script":{"name":"no-script","type":"boolean","description":"skip creation of script","allowNo":false},"only-npm-packages":{"name":"only-npm-packages","type":"option","description":"regular expression for which NPM packages to include","default":".*"},"exclude-dir":{"name":"exclude-dir","type":"option","description":"exclude directories where to search for package.json"}},"args":[{"name":"type","description":"Type of release","required":true,"options":["patch","minor","major","prerelease","preminor","premajor","new"]}]},"download:client":{"id":"download:client","description":"download AdInsure Client zip from Azure storage","usage":"download:client <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops download:client -v 3.2.0 -o ~/Downloads"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"}},"args":[]},"download:identity-server":{"id":"download:identity-server","description":"download AdInsure Identity Server zip from Azure storage","usage":"download:identity-server <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops download:identity-server -v 3.0.3 -o ~/Downloads"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"}},"args":[]},"download:platform":{"id":"download:platform","description":"download AdInsure Platform bundle containing zip of Client, Server and IdentityServer from azure storage","usage":"download <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["download"],"examples":["$ ops download -v 6.0.0 -o ~/Downloads"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"}},"args":[]},"download:scheduler":{"id":"download:scheduler","description":"download AdInsure Scheduler zip from azure storage","usage":"download:scheduler <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops download:scheduler -v 3.2.0 -o ~/Downloads"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"}},"args":[]},"download:server":{"id":"download:server","description":"download AdInsure Server zip from Azure storage","usage":"download:server <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops download:server -v 3.2.0 -o ~/Downloads"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"}},"args":[]},"download:studio":{"id":"download:studio","description":"download AdInsure Studio vsix from azure storage","usage":"download:studio <flags>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops download:studio -v 15.0.0 -o ~/Downloads","$ ops download:studio -v 15.0.0 -i"],"flags":{"version":{"name":"version","type":"option","char":"v","description":"version we want to download","required":true},"output":{"name":"output","type":"option","char":"o","description":"output directory","default":"./"},"install":{"name":"install","type":"boolean","char":"i","description":"install plugin to vscode. save to temp folder and remove vsix after.","allowNo":false}},"args":[]},"gitlab:next-nightly-tag":{"id":"gitlab:next-nightly-tag","description":"creates new gitlab tag","usage":"gitlab:next-nightly-tag <version>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops gitlab:next-nightly-tag 17.0.0"],"flags":{"pat":{"name":"pat","type":"option","description":"Token from user that has permissions to list and create tags","required":true},"host":{"name":"host","type":"option","description":"Server hostname","required":true,"default":"https://git.adacta-fintech.com"},"project":{"name":"project","type":"option","description":"Project ID","required":true,"default":"413"},"reference":{"name":"reference","type":"option","description":"Reference to create tag on (branch, commit, tag)","required":true},"dryRun":{"name":"dryRun","type":"boolean","description":"Only printout version and don't create it","allowNo":false}},"args":[{"name":"version","description":"Tag version"}]},"jira:issue":{"id":"jira:issue","description":"get Jira issue","usage":"jira:issue <issue>","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops jira:issue LJADIRD-1337"],"flags":{"username":{"name":"username","type":"option","description":"jira username","required":true},"password":{"name":"password","type":"option","description":"jira password","required":true},"hostname":{"name":"hostname","type":"option","description":"jira hostname","default":"https://jira.adacta-fintech.com"}},"args":[{"name":"issue","description":"Jira issue number","required":true}]},"jira:labels":{"id":"jira:labels","description":"list or edit labels on Jira issue","usage":"jira:labels <issue> -a [label] -r [label]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops jira:labels LJADIRD-1337"],"flags":{"username":{"name":"username","type":"option","description":"jira username","required":true},"password":{"name":"password","type":"option","description":"jira password","required":true},"hostname":{"name":"hostname","type":"option","description":"jira hostname","default":"https://jira.adacta-fintech.com"},"add":{"name":"add","type":"option","char":"a","description":"add label"},"remove":{"name":"remove","type":"option","char":"r","description":"remove label"}},"args":[{"name":"issue","description":"Jira issue number","required":true}]},"log:add":{"id":"log:add","description":"creates a new changelog entry","usage":"log <issue> -t [type] -c [options]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["log","log:add"],"examples":["$ ops log LJADIRD-1234 -t feature","$ ops log LJADIRD-5678 -t fixed","$ ops log LJADIRD-8765 -t breaking -c Platform","$ ops log LJADIRD-4321 -t improve -c Configuration"],"flags":{"type":{"name":"type","type":"option","char":"t","description":"type of changelog","options":["feature","fixed","improve","breaking"]},"component":{"name":"component","type":"option","char":"c","description":"Component for which new changelog should be generated","default":""}},"args":[{"name":"issue","description":"Jira issue number"}]},"log:generate":{"id":"log:generate","description":"generates final changelog from unreleased notes","usage":"log:gen [options]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["log:gen"],"examples":["$ ops log:gen","$ ops log:gen -p","$ ops log:gen -c Platform","$ ops log:gen -c Platform,Configuration","$ ops log:gen -c Implementation -f CHANGELOG.Implementation.md"],"flags":{"components":{"name":"components","type":"option","char":"c","description":"components separated by comma (,) to process for final changelog","default":""},"file":{"name":"file","type":"option","char":"f","description":"file to update with new changelogs","default":"CHANGELOG.md"},"force":{"name":"force","type":"boolean","description":"update target file without prompting for confirmation","allowNo":false},"preview":{"name":"preview","type":"boolean","char":"p","description":"generates a preview markdown of current unreleased changelogs","allowNo":false},"version":{"name":"version","type":"option","char":"v","description":"version for which you're generating changelogs"},"ignore-no-changelogs":{"name":"ignore-no-changelogs","type":"boolean","description":"generate final changelog even if no unreleased changelogs exist","allowNo":false}},"args":[]},"log:validate":{"id":"log:validate","description":"validates formatting of all unreleased changelogs","usage":"log:validate [options]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":["log:validate"],"examples":["$ ops log:validate"],"flags":{},"args":[]},"npm:check-publish":{"id":"npm:check-publish","description":"check if npm packages were published","usage":"npm:check-publish [options]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops npm:check-publish -v 6.0.1","$ ops npm:check-publish -p @adinsure/* -v 6.0.0","$ ops npm:check-publish -p @adinsure/* -x @adisure/demo -v 6.0.0"],"flags":{"package":{"name":"package","type":"option","char":"p","description":"package name filter you want to check"},"exclude":{"name":"exclude","type":"option","char":"x","description":"exclude packages from filter"},"version":{"name":"version","type":"option","char":"v","description":"version we want to check if published","required":true},"pat":{"name":"pat","type":"option","description":"PAT token or AZURE_DEVOPS_EXT_PAT environment variable"}},"args":[]},"npm:publish":{"id":"npm:publish","description":"Publish npm packages","usage":"npm:publish [options]","pluginName":"@adinsure-ops/ops-cli","pluginType":"core","aliases":[],"examples":["$ ops npm:publish -v 15.0.0","$ ops npm:publish -v 15.0.0","$ ops npm:publish -p @adinsure-tooling/* -v 15.0.0","$ ops npm:publish -p @adinsure-tooling/* -x @adisure-tooling/studio-services -v 6.0.0"],"flags":{"package":{"name":"package","type":"option","char":"p","description":"package name filter you want to check"},"exclude":{"name":"exclude","type":"option","char":"x","description":"exclude packages from filter"},"version":{"name":"version","type":"option","char":"v","description":"version we want to check if published","required":true},"pat":{"name":"pat","type":"option","description":"PAT token or AZURE_DEVOPS_EXT_PAT environment variable"}},"args":[]}}}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@adinsure-ops/ops-cli",
3
3
  "description": "Operations CLI for working with AdInsure",
4
- "version": "4.0.0-rc6",
4
+ "version": "4.0.0-rc7",
5
5
  "author": "Adacta Digital Service Department",
6
6
  "bin": {
7
7
  "ops": "./bin/run"
@@ -93,9 +93,7 @@
93
93
  ],
94
94
  "warn-if-update-available": {
95
95
  "timeoutInDays": 1,
96
- "message": "ops-cli update available from <%= chalk.greenBright(config.version) %> to <%= chalk.greenBright(latest) %>.",
97
- "registry": "https://pkgs.dev.azure.com/adacta-fintech/_packaging/adacta-fintech/npm/registry/",
98
- "authorization": "Basic OnlibHJ5dm15NXZhd3lyM2VueHB4a3J1bWd2bG02em9nNHdqNHRxb3V0Z3pzZDNwM2ZtdmE="
96
+ "message": "ops-cli update available from <%= chalk.greenBright(config.version) %> to <%= chalk.greenBright(latest) %>."
99
97
  },
100
98
  "update": {
101
99
  "s3": {