gitverse-release 3.6.0 → 3.7.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 +82 -2
- package/dist/cli.js +5989 -258
- package/dist/cli.js.map +44 -9
- package/dist/index.js +5988 -257
- package/dist/index.js.map +44 -9
- package/dist/types.d.ts +70 -1
- package/dist/utils/binary-archive-extractor.d.ts +19 -0
- package/dist/utils/binary-package-generator.d.ts +4 -1
- package/dist/utils/binary-platforms.d.ts +56 -5
- package/package.json +3 -2
- package/schema.json +32 -3
package/README.md
CHANGED
|
@@ -340,7 +340,7 @@ npx gitverse-release publish-binaries
|
|
|
340
340
|
{
|
|
341
341
|
"binaries": {
|
|
342
342
|
"enabled": true,
|
|
343
|
-
"scope": "@rainypixel", // npm scope
|
|
343
|
+
"scope": "@rainypixel", // npm scope (опционально)
|
|
344
344
|
"name": "yougile", // базовое имя пакетов
|
|
345
345
|
"binName": "yougile", // имя бинарника в $PATH (опционально)
|
|
346
346
|
"distDir": "./dist", // директория с бинарниками
|
|
@@ -360,9 +360,58 @@ npx gitverse-release publish-binaries
|
|
|
360
360
|
}
|
|
361
361
|
```
|
|
362
362
|
|
|
363
|
+
### Пакеты без scope
|
|
364
|
+
|
|
365
|
+
`scope` опционален. Без него пакеты публикуются как `myapp-linux-x64` вместо `@org/myapp-linux-x64`:
|
|
366
|
+
|
|
367
|
+
```jsonc
|
|
368
|
+
{
|
|
369
|
+
"binaries": {
|
|
370
|
+
"enabled": true,
|
|
371
|
+
"name": "myapp", // без scope!
|
|
372
|
+
"distDir": "./dist",
|
|
373
|
+
"platforms": ["linux-x64", "darwin-arm64"]
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
// Результат: myapp-linux-x64, myapp-darwin-arm64
|
|
377
|
+
```
|
|
378
|
+
|
|
379
|
+
### Кастомный шаблон имени пакета
|
|
380
|
+
|
|
381
|
+
Используйте `packageNameTemplate` для гибкой настройки имён:
|
|
382
|
+
|
|
383
|
+
```jsonc
|
|
384
|
+
{
|
|
385
|
+
"binaries": {
|
|
386
|
+
"name": "myapp",
|
|
387
|
+
"packageNameTemplate": "{{name}}-bin-{{platform}}"
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
// Результат: myapp-bin-linux-x64
|
|
391
|
+
```
|
|
392
|
+
|
|
393
|
+
```jsonc
|
|
394
|
+
{
|
|
395
|
+
"binaries": {
|
|
396
|
+
"name": "myapp",
|
|
397
|
+
"scope": "@org",
|
|
398
|
+
"packageNameTemplate": "@{{scope}}/{{name}}-cli-{{platform}}"
|
|
399
|
+
}
|
|
400
|
+
}
|
|
401
|
+
// Результат: @org/myapp-cli-linux-x64
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
**Плейсхолдеры:** `{{scope}}`, `{{name}}`, `{{platform}}`
|
|
405
|
+
|
|
406
|
+
**Дефолтные шаблоны:**
|
|
407
|
+
- Без scope: `{{name}}-{{platform}}`
|
|
408
|
+
- Со scope: `@{{scope}}/{{name}}-{{platform}}`
|
|
409
|
+
|
|
363
410
|
### Структура бинарников
|
|
364
411
|
|
|
365
|
-
|
|
412
|
+
#### Формат "directory" (по умолчанию)
|
|
413
|
+
|
|
414
|
+
Бинарники в директориях:
|
|
366
415
|
|
|
367
416
|
```
|
|
368
417
|
dist/
|
|
@@ -374,6 +423,37 @@ dist/
|
|
|
374
423
|
yougile.exe # бинарник для Windows
|
|
375
424
|
```
|
|
376
425
|
|
|
426
|
+
#### Формат "tar.gz"
|
|
427
|
+
|
|
428
|
+
Бинарники в tar.gz архивах (удобно для CI артефактов):
|
|
429
|
+
|
|
430
|
+
```jsonc
|
|
431
|
+
{
|
|
432
|
+
"binaries": {
|
|
433
|
+
"inputFormat": "tar.gz",
|
|
434
|
+
"sourceBinName": "cli", // имя бинарника внутри архива
|
|
435
|
+
"platformMap": { // маппинг имён архивов на платформы
|
|
436
|
+
"linux-amd64": "linux-x64",
|
|
437
|
+
"darwin-arm64": "darwin-arm64",
|
|
438
|
+
"windows-x64": "win32-x64"
|
|
439
|
+
}
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
```
|
|
443
|
+
|
|
444
|
+
Структура архивов:
|
|
445
|
+
```
|
|
446
|
+
dist/
|
|
447
|
+
myapp-linux-amd64.tar.gz # содержит cli (или cli внутри поддиректории)
|
|
448
|
+
myapp-darwin-arm64.tar.gz
|
|
449
|
+
myapp-windows-x64.tar.gz
|
|
450
|
+
```
|
|
451
|
+
|
|
452
|
+
**Опции для tar.gz:**
|
|
453
|
+
- `inputFormat: "tar.gz"` — включает режим архивов
|
|
454
|
+
- `sourceBinName` — имя бинарника внутри архива (если отличается от `name`)
|
|
455
|
+
- `platformMap` — маппинг ключей в именах архивов на npm платформы
|
|
456
|
+
|
|
377
457
|
### Генерируемая структура
|
|
378
458
|
|
|
379
459
|
```
|