onreza-release 1.0.0
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 +881 -0
- package/dist/binaries.d.ts +74 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +9073 -0
- package/dist/cli.js.map +73 -0
- package/dist/config.d.ts +58 -0
- package/dist/gitverse.d.ts +91 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.js +8545 -0
- package/dist/index.js.map +71 -0
- package/dist/types.d.ts +862 -0
- package/dist/utils/binary-archive-extractor.d.ts +19 -0
- package/dist/utils/binary-package-generator.d.ts +24 -0
- package/dist/utils/binary-platforms.d.ts +113 -0
- package/dist/utils/binary-publisher.d.ts +53 -0
- package/dist/utils/binary-wrapper-generator.d.ts +34 -0
- package/dist/utils/changelog.d.ts +14 -0
- package/dist/utils/commitlint-generator.d.ts +5 -0
- package/dist/utils/git.d.ts +101 -0
- package/dist/utils/parser.d.ts +36 -0
- package/dist/utils/retry.d.ts +39 -0
- package/dist/utils/version.d.ts +18 -0
- package/package.json +66 -0
- package/schema.json +461 -0
package/dist/config.d.ts
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import type { BinariesConfig, BinaryPlatform, ReleaseConfig } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* Дефолтное имя конфиг-файла
|
|
4
|
+
*/
|
|
5
|
+
export declare const DEFAULT_CONFIG_FILE_NAME = ".gitversereleaserc.jsonc";
|
|
6
|
+
/**
|
|
7
|
+
* Дефолтные платформы для бинарной дистрибуции
|
|
8
|
+
*/
|
|
9
|
+
export declare const DEFAULT_BINARY_PLATFORMS: BinaryPlatform[];
|
|
10
|
+
/**
|
|
11
|
+
* Дефолтная конфигурация бинарной дистрибуции
|
|
12
|
+
*/
|
|
13
|
+
export declare const DEFAULT_BINARIES_CONFIG: BinariesConfig;
|
|
14
|
+
/**
|
|
15
|
+
* Дефолтная конфигурация
|
|
16
|
+
*/
|
|
17
|
+
export declare const DEFAULT_CONFIG: Required<ReleaseConfig>;
|
|
18
|
+
/**
|
|
19
|
+
* Загружает конфигурацию из файла
|
|
20
|
+
*
|
|
21
|
+
* Порядок поиска:
|
|
22
|
+
* 1. Если указан configPath - используем его
|
|
23
|
+
* 2. Ищем .gitversereleaserc.jsonc
|
|
24
|
+
* 3. Ищем .gitversereleaserc.json
|
|
25
|
+
* 4. Если ничего не найдено - используем дефолтную конфигурацию
|
|
26
|
+
*/
|
|
27
|
+
export declare function loadConfig(configPath?: string): Promise<Required<ReleaseConfig>>;
|
|
28
|
+
/**
|
|
29
|
+
* Валидирует конфигурацию
|
|
30
|
+
*/
|
|
31
|
+
export declare function validateConfig(config: Required<ReleaseConfig>): void;
|
|
32
|
+
/**
|
|
33
|
+
* Валидирует конфигурацию бинарной дистрибуции
|
|
34
|
+
*/
|
|
35
|
+
export declare function validateBinariesConfig(config: BinariesConfig): void;
|
|
36
|
+
/**
|
|
37
|
+
* Проверяет, существует ли конфиг-файл
|
|
38
|
+
*/
|
|
39
|
+
export declare function configExists(): Promise<string | null>;
|
|
40
|
+
/**
|
|
41
|
+
* Опции для инициализации конфига
|
|
42
|
+
*/
|
|
43
|
+
export interface InitConfigOptions {
|
|
44
|
+
/** Режим монорепо */
|
|
45
|
+
monorepo?: boolean;
|
|
46
|
+
/** Дополнительные scopes для commitlint */
|
|
47
|
+
scopes?: string[];
|
|
48
|
+
/** Dry-run режим */
|
|
49
|
+
dryRun?: boolean;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Генерирует содержимое конфиг-файла в формате JSONC
|
|
53
|
+
*/
|
|
54
|
+
export declare function generateConfigContent(options?: InitConfigOptions): string;
|
|
55
|
+
/**
|
|
56
|
+
* Инициализирует конфиг-файл
|
|
57
|
+
*/
|
|
58
|
+
export declare function initConfig(options?: InitConfigOptions): Promise<string>;
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import type { GitRepoInfo } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* Retry функция type
|
|
4
|
+
*/
|
|
5
|
+
export type RetryFunction = <T>(fn: () => Promise<T>, operationName?: string) => Promise<T>;
|
|
6
|
+
/**
|
|
7
|
+
* Имя переменной окружения для токена
|
|
8
|
+
*/
|
|
9
|
+
export declare const TOKEN_ENV_VAR = "GVR_TOKEN";
|
|
10
|
+
/**
|
|
11
|
+
* Устаревшее имя переменной (для обратной совместимости)
|
|
12
|
+
* @deprecated Используйте GVR_TOKEN
|
|
13
|
+
*/
|
|
14
|
+
export declare const LEGACY_TOKEN_ENV_VAR = "GITVERSE_TOKEN";
|
|
15
|
+
/**
|
|
16
|
+
* Результат валидации токена
|
|
17
|
+
*/
|
|
18
|
+
export interface TokenValidationResult {
|
|
19
|
+
/** Валиден ли токен */
|
|
20
|
+
valid: boolean;
|
|
21
|
+
/** Имя пользователя (если токен валиден) */
|
|
22
|
+
username?: string;
|
|
23
|
+
/** Сообщение об ошибке (если токен невалиден) */
|
|
24
|
+
error?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Результат получения токена
|
|
28
|
+
*/
|
|
29
|
+
interface TokenResult {
|
|
30
|
+
/** Токен */
|
|
31
|
+
token: string;
|
|
32
|
+
/** Имя переменной из которой получен токен */
|
|
33
|
+
source: string;
|
|
34
|
+
/** Использован ли устаревший способ */
|
|
35
|
+
isLegacy: boolean;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Проверяет, запущен ли скрипт в GitVerse Actions CI
|
|
39
|
+
*/
|
|
40
|
+
export declare function isGitVerseActionsCI(): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Получает токен из переменных окружения
|
|
43
|
+
* Приоритет: GVR_TOKEN > GITVERSE_TOKEN (legacy, требует проверки)
|
|
44
|
+
*/
|
|
45
|
+
export declare function getToken(): TokenResult | null;
|
|
46
|
+
/**
|
|
47
|
+
* Генерирует сообщение об ошибке отсутствия токена
|
|
48
|
+
*/
|
|
49
|
+
export declare function getTokenNotFoundError(): string;
|
|
50
|
+
/**
|
|
51
|
+
* GitVerse API клиент для создания релизов
|
|
52
|
+
*/
|
|
53
|
+
export declare class GitVerseReleaseClient {
|
|
54
|
+
private client;
|
|
55
|
+
private repoInfo;
|
|
56
|
+
private retryFn?;
|
|
57
|
+
constructor(token: string, repoInfo: GitRepoInfo, retryFn?: RetryFunction);
|
|
58
|
+
/**
|
|
59
|
+
* Проверяет валидность токена через API
|
|
60
|
+
*/
|
|
61
|
+
validateToken(): Promise<TokenValidationResult>;
|
|
62
|
+
/**
|
|
63
|
+
* Создает релиз на GitVerse
|
|
64
|
+
*/
|
|
65
|
+
createRelease(tag: string, name: string, body: string, options?: {
|
|
66
|
+
draft?: boolean;
|
|
67
|
+
prerelease?: boolean;
|
|
68
|
+
}): Promise<string>;
|
|
69
|
+
/**
|
|
70
|
+
* Проверяет существование релиза по тегу
|
|
71
|
+
*/
|
|
72
|
+
releaseExists(tag: string): Promise<boolean>;
|
|
73
|
+
/**
|
|
74
|
+
* Получает информацию о релизе по тегу
|
|
75
|
+
*/
|
|
76
|
+
getRelease(tag: string): Promise<import("@onreza/gitverse-sdk").Release>;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Создает клиент для работы с GitVerse API
|
|
80
|
+
* Примечание: validateGitVerseToken() должен быть вызван до этой функции
|
|
81
|
+
* для проверки токена и вывода deprecation warnings
|
|
82
|
+
*/
|
|
83
|
+
export declare function createGitVerseClient(repoInfo: GitRepoInfo, retryFn?: RetryFunction): GitVerseReleaseClient;
|
|
84
|
+
/**
|
|
85
|
+
* Проверяет наличие и валидность токена до начала релиза
|
|
86
|
+
*
|
|
87
|
+
* @param repoInfo Информация о репозитории
|
|
88
|
+
* @returns Результат валидации токена
|
|
89
|
+
*/
|
|
90
|
+
export declare function validateGitVerseToken(repoInfo: GitRepoInfo): Promise<TokenValidationResult>;
|
|
91
|
+
export {};
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { CliOptions, ReleaseResult } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* Основная функция для создания релиза
|
|
4
|
+
*/
|
|
5
|
+
export declare function release(packageName?: string, options?: CliOptions): Promise<ReleaseResult>;
|
|
6
|
+
/**
|
|
7
|
+
* Создает только GitVerse Release для существующего тега (без commit/push)
|
|
8
|
+
* Полезно для recovery после failed release в CI/CD
|
|
9
|
+
*/
|
|
10
|
+
export declare function createReleaseOnly(tag: string, packageName?: string, configPath?: string): Promise<ReleaseResult>;
|
|
11
|
+
export { generateBinaryPackages, publishBinaries } from "./binaries";
|
|
12
|
+
export { configExists, DEFAULT_BINARIES_CONFIG, DEFAULT_BINARY_PLATFORMS, DEFAULT_CONFIG_FILE_NAME, generateConfigContent, initConfig, loadConfig, validateBinariesConfig, validateConfig, } from "./config";
|
|
13
|
+
export type { TokenValidationResult } from "./gitverse";
|
|
14
|
+
export { createGitVerseClient, getToken, getTokenNotFoundError, isGitVerseActionsCI, LEGACY_TOKEN_ENV_VAR, TOKEN_ENV_VAR, validateGitVerseToken, } from "./gitverse";
|
|
15
|
+
export * from "./types";
|
|
16
|
+
export { ALL_PLATFORMS, expandPlaceholders, getBinaryPath, getPackageName, getPackageOutputPath, getPlatformDir, isValidPlatform, PLATFORM_MAPPINGS, parsePlatforms, platformToNodeValues, validateAllBinaries, validateBinaryExists, } from "./utils/binary-platforms";
|