spectrum-cli 5.0.0 → 5.0.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.
- package/CHANGELOG.md +22 -0
- package/README.md +37 -17
- package/package.json +1 -1
- package/src/chart/helmrelease.js +1 -1
- package/src/chart/registry.js +14 -4
- package/src/cli/commands.js +2 -1
- package/src/preflight/chart.js +1 -1
- package/src/release/start.js +6 -2
- package/src/release/version.js +7 -3
- package/src/token/config.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -9,6 +9,28 @@ This is the changelog of the `spectrum-cli` npm package. Its version comes from
|
|
|
9
9
|
`package.json`; the release commands use Git tags and `CHANGELOG.md` in the
|
|
10
10
|
**target project** and do not update that project's `package.json`.
|
|
11
11
|
|
|
12
|
+
## 🚀 [5.0.2] - 2026-10-23
|
|
13
|
+
|
|
14
|
+
### Changed
|
|
15
|
+
|
|
16
|
+
- При baseline `0.x` обычные релизы с breaking/removed повышают minor, сохраняя тип записей; исправления повышают patch. Первый `1.0.0` требует явного `release start --stable`; другой открытый релиз блокирует переход. После `1.0.0` действует прежний SemVer.
|
|
17
|
+
|
|
18
|
+
- Команды `spectrum chart` используют `SC_DEVELOPER_PAT` вместо `SC_OWNER_PAT` для Helm-registry. Новое имя имеет приоритет. `SC_OWNER_PAT` сохранена как deprecated fallback с предупреждением при использовании; поддержка старого имени будет удалена в следующей версии. Owner для проверки registry не требуется. Запрос owner PAT в `token rotate` для управления групповыми CI/CD variables не изменён.
|
|
19
|
+
|
|
20
|
+
## 🚀 [5.0.1] - 2026-10-02
|
|
21
|
+
|
|
22
|
+
### 🛠 Changed
|
|
23
|
+
|
|
24
|
+
- Команды `spectrum chart` читают токен для Helm-registry из переменной окружения `SC_OWNER_PAT` вместо `GITLAB_PRIVATE_TOKEN`.
|
|
25
|
+
- Команда `spectrum token rotate` запрашивает и записывает в CI/CD variables `SC_BOT_PAT` вместо `GITLAB_PRIVATE_TOKEN`.
|
|
26
|
+
- `spectrum chart deploy` выводит строки изменений helmrelease-файлов с отступом.
|
|
27
|
+
|
|
28
|
+
### 🪲 Fixed
|
|
29
|
+
|
|
30
|
+
- Запрос к Helm-registry GitLab авторизуется через HTTP Basic auth; заголовок `PRIVATE-TOKEN` приводил к HTTP 401.
|
|
31
|
+
- Проверка публикации чарта находит версию в `index.yaml` GitLab, где элементы списка записаны без дополнительного отступа; `chart start` больше не ждёт бесконечно уже опубликованную версию.
|
|
32
|
+
- Версия чарта читается из заголовка changelog со ссылкой вида `## [X.Y.Z](url) - YYYY-MM-DD`.
|
|
33
|
+
|
|
12
34
|
## 🚀 [5.0.0] - 2026-10-01
|
|
13
35
|
|
|
14
36
|
### 💥 Breaking change
|
package/README.md
CHANGED
|
@@ -43,7 +43,7 @@ spectrum --help
|
|
|
43
43
|
spectrum -v # или spectrum --version
|
|
44
44
|
|
|
45
45
|
# 🚀 Управление релизами
|
|
46
|
-
spectrum release start
|
|
46
|
+
spectrum release start [--stable] # Схлопнуть fragments и атомарно отправить release commit в dev и main/master
|
|
47
47
|
spectrum release deploy # Создать стабильный тег release/X.Y.Z из заголовка CHANGELOG
|
|
48
48
|
spectrum release close # Свести stable main/master в dev
|
|
49
49
|
|
|
@@ -66,7 +66,7 @@ spectrum changelog check # Проверить CHANGELOG.md и вс
|
|
|
66
66
|
spectrum changelog write # Выравнять заголовки CHANGELOG.md и запустить Prettier
|
|
67
67
|
|
|
68
68
|
# 🔑 GitLab токены
|
|
69
|
-
spectrum token rotate # Пролить
|
|
69
|
+
spectrum token rotate # Пролить SC_BOT_PAT в CI variables
|
|
70
70
|
```
|
|
71
71
|
|
|
72
72
|
Все команды с действием показывают, какая предпроверка успешно пройдена;
|
|
@@ -163,7 +163,7 @@ spectrum-cli/
|
|
|
163
163
|
| `spectrum chart start` | Создать и запушить chart тег |
|
|
164
164
|
| `spectrum chart deploy` | Обновить chart версию в helmrelease |
|
|
165
165
|
| `spectrum chart verify` | Проверить ingress paths chart |
|
|
166
|
-
| `spectrum token rotate` | Пролить
|
|
166
|
+
| `spectrum token rotate` | Пролить SC_BOT_PAT в CI |
|
|
167
167
|
|
|
168
168
|
### 🛡️ Preflight-проверки по командам
|
|
169
169
|
|
|
@@ -172,10 +172,17 @@ spectrum-cli/
|
|
|
172
172
|
- `spectrum release close`: чистая и актуальная main/master, версия из верхнего заголовка `CHANGELOG.md` и remote stable-тег поддерживаемой формы, указывающий на текущий commit.
|
|
173
173
|
- `spectrum changelog append <message>`: `git-repo`, `changelog-exists`, валидные ID задачи, git identity и тип fragment. Команда не изменяет общий `CHANGELOG.md`.
|
|
174
174
|
- `spectrum changelog check`: `git-repo`, `changelog-exists`, `changelog-prettier-check`, наличие и формат всех changelog fragments.
|
|
175
|
-
- `spectrum chart start`: `git-repo`, `clean-working-tree`, `on-main-branch`, `single-chart` (ровно один `charts/<chart-name>/Chart.yaml`), валидный верхний SemVer-заголовок в `charts/<chart-name>/CHANGELOG.md`, отсутствие тега `chart-<name>-<version>` локально и на `origin`, отсутствие этой версии чарта в Helm-registry. Для запроса registry нужен `
|
|
175
|
+
- `spectrum chart start`: `git-repo`, `clean-working-tree`, `on-main-branch`, `single-chart` (ровно один `charts/<chart-name>/Chart.yaml`), валидный верхний SemVer-заголовок в `charts/<chart-name>/CHANGELOG.md`, отсутствие тега `chart-<name>-<version>` локально и на `origin`, отсутствие этой версии чарта в Helm-registry. Для запроса registry нужен `SC_DEVELOPER_PAT` (PAT со scope `api` и доступом к проекту; роль Owner не требуется); ошибка доступа блокирует команду. Право отправки chart-тега определяется отдельно правилами protected tags. `-f, --force` обходит только проверку повышения версии относительно последнего remote-тега. После push команда по умолчанию ждёт версию в registry; `-n, --no-wait` отключает ожидание.
|
|
176
|
+
|
|
177
|
+
Для обратной совместимости chart-команды принимают `SC_OWNER_PAT`, если
|
|
178
|
+
`SC_DEVELOPER_PAT` не задана или пуста. `SC_OWNER_PAT` deprecated: поддержка
|
|
179
|
+
будет удалена в следующей версии. При её использовании CLI один раз за процесс
|
|
180
|
+
выводит предупреждение с просьбой перейти на `SC_DEVELOPER_PAT`. Если заданы обе
|
|
181
|
+
переменные, используется `SC_DEVELOPER_PAT` без предупреждения.
|
|
182
|
+
|
|
176
183
|
- `spectrum chart deploy`: `git-repo`, `clean-working-tree`, `on-main-branch` (текущая ветка `main`), `remote-origin` (настроен `origin`), `remote-reachable` (доступен `origin`), `single-chart`, `helmrelease-files` (найдены `helmrelease.yaml`).
|
|
177
184
|
- `spectrum chart verify <source_path>`: `git-repo`, `single-values-yaml` (ровно один `charts/**/values.yaml`), `values-ingress-sections` (есть `ingress.paths.api/pages/assets`), `source-path-directory`, `next-project`, `build-command-support`.
|
|
178
|
-
- `spectrum token rotate`: `load-config` (есть валидный `~/.config/spectrum-cli/config.yaml`), `ask-tokens` (owner PAT и `
|
|
185
|
+
- `spectrum token rotate`: `load-config` (есть валидный `~/.config/spectrum-cli/config.yaml`), `ask-tokens` (owner PAT и `SC_BOT_PAT` только в памяти), `check-access` (все группы и проекты доступны owner PAT).
|
|
179
186
|
|
|
180
187
|
## 🔄 Workflow релиза
|
|
181
188
|
|
|
@@ -185,10 +192,23 @@ spectrum-cli/
|
|
|
185
192
|
|
|
186
193
|
1. Проверяет чистую актуальную dev-ветку, включающую `origin/main` или `origin/master`, changelog и fragments.
|
|
187
194
|
2. После `git fetch origin --prune --tags` находит максимальный stable-тег среди `release/X.Y.Z`, `hotfix/X.Y.Z` и `vX.Y.Z`, достижимый из production-ветки.
|
|
188
|
-
3. Если открытого релиза нет, вычисляет версию по fragments
|
|
195
|
+
3. Если открытого релиза нет, вычисляет версию по fragments. До `1.0.0`: `breaking`, `removed` и `added` → minor, остальные → patch. Начиная с `1.0.0`: `breaking` и `removed` → major, `added` → minor, остальные → patch. Если раздел уже открыт в main/master, сохраняет его версию и дату, объединяет прежние записи с новыми по разделам без дублей. Тип новых fragments не повышает уже выбранную версию.
|
|
189
196
|
4. Форматирует и проверяет `CHANGELOG.md`, затем удаляет использованные fragments.
|
|
190
197
|
5. Коммитит изменения и атомарно пушит dev в `origin/dev` и `origin/main` или `origin/master`, без Merge Request. Если новых записей нет, пустой коммит не создаётся; можно повторить отправку после её сбоя.
|
|
191
198
|
|
|
199
|
+
Первый стабильный выпуск создаётся явно: `spectrum release start --stable`
|
|
200
|
+
вычисляет ровно `1.0.0` от опубликованного `0.x`. Другой открытый релиз блокирует
|
|
201
|
+
переход; повтор подготовки открытого `1.0.0` допустим. Флаг запрещён после
|
|
202
|
+
перехода на `1.x`. Он выполняет обычный workflow `release start`, включая commit
|
|
203
|
+
и push; `--dry` запускает только предпроверки. Обычный запуск от `0.3.7` с
|
|
204
|
+
breaking/removed даёт `0.4.0`, с исправлением — `0.3.8`; исходные типы записей
|
|
205
|
+
сохраняются. Alpha CI должен применять ту же политику к своей базовой версии.
|
|
206
|
+
|
|
207
|
+
Сброс прежней высокой нумерации на `0.x` не выполняется этой командой: это
|
|
208
|
+
отдельная миграция с архивом changelog и ссылок тегов, согласованием dev/master и
|
|
209
|
+
исключением старых тегов из расчёта версии. Нельзя запускать `release start`,
|
|
210
|
+
пока опубликованная история в dev и production различается.
|
|
211
|
+
|
|
192
212
|
Например, повторный `release start` дополняет открытый `1.4.0`; после публикации
|
|
193
213
|
`release/1.4.0` новые fragments уже формируют следующий релиз. Изменение
|
|
194
214
|
опубликованной истории и конфликтующие открытые версии блокируют команду.
|
|
@@ -324,7 +344,7 @@ CI-часть реализует подключенный release component, а
|
|
|
324
344
|
|
|
325
345
|
### `spectrum token rotate`
|
|
326
346
|
|
|
327
|
-
Пролив уже созданного PAT `
|
|
347
|
+
Пролив уже созданного PAT `SC_BOT_PAT` в CI/CD variables групп и проектов. Команда токен не выпускает.
|
|
328
348
|
|
|
329
349
|
**Конфиг:** `~/.config/spectrum-cli/config.yaml`
|
|
330
350
|
|
|
@@ -340,13 +360,13 @@ projects: []
|
|
|
340
360
|
- `bot` и `token_ttl_months` читаются только из конфига.
|
|
341
361
|
- Скрытым вводом запрашиваются два токена. Оба живут только в памяти.
|
|
342
362
|
- Owner PAT: ходит в API, проверяет доступ, читает/удаляет/создает CI variables. Для групп нужен Owner, для проектов — Maintainer+.
|
|
343
|
-
- `
|
|
344
|
-
- Для каждой группы и проекта CI variable `
|
|
363
|
+
- `SC_BOT_PAT`: только значение, которое пишется в CI variable.
|
|
364
|
+
- Для каждой группы и проекта CI variable `SC_BOT_PAT` удаляется (если есть) и создается заново как masked and hidden.
|
|
345
365
|
- Description переменной: `PAT от бота <bot>, владелец Колосов. Истекает YYYY-MM-DD.` Дата = сегодня + `token_ttl_months`.
|
|
346
366
|
|
|
347
367
|
1. Загружает или создает конфиг
|
|
348
368
|
2. Запрашивает owner PAT
|
|
349
|
-
3. Запрашивает `
|
|
369
|
+
3. Запрашивает `SC_BOT_PAT`
|
|
350
370
|
4. Проверяет доступ ко всем группам и проектам owner PAT
|
|
351
371
|
5. Обновляет CI variables во всех целях
|
|
352
372
|
|
|
@@ -378,13 +398,13 @@ projects: []
|
|
|
378
398
|
|
|
379
399
|
**📋 Типы fragment и SemVer:**
|
|
380
400
|
|
|
381
|
-
| Суффикс | Раздел |
|
|
382
|
-
| --- | --- | --- |
|
|
383
|
-
| `breaking` | Breaking change | major |
|
|
384
|
-
| `removed` | Removed | major |
|
|
385
|
-
| `added` | Added | minor |
|
|
386
|
-
| `changed`, `deprecated` | Соответствующий раздел | patch |
|
|
387
|
-
| `fixed`, `security`, `support` | Соответствующий раздел | patch |
|
|
401
|
+
| Суффикс | Раздел | До `1.0.0` | С `1.0.0` |
|
|
402
|
+
| --- | --- | --- | --- |
|
|
403
|
+
| `breaking` | Breaking change | minor | major |
|
|
404
|
+
| `removed` | Removed | minor | major |
|
|
405
|
+
| `added` | Added | minor | minor |
|
|
406
|
+
| `changed`, `deprecated` | Соответствующий раздел | patch | patch |
|
|
407
|
+
| `fixed`, `security`, `support` | Соответствующий раздел | patch | patch |
|
|
388
408
|
|
|
389
409
|
**📌 Пример использования:**
|
|
390
410
|
|
package/package.json
CHANGED
package/src/chart/helmrelease.js
CHANGED
|
@@ -72,7 +72,7 @@ function printDeployChanges(changes) {
|
|
|
72
72
|
const icon = item.changed ? '●' : '○';
|
|
73
73
|
const color = item.changed ? colors.green : '\x1b[90m';
|
|
74
74
|
console.log(
|
|
75
|
-
|
|
75
|
+
` ${color}${icon} ${item.filePath}: ${item.oldVersion} -> ${item.newVersion}${colors.reset}`
|
|
76
76
|
);
|
|
77
77
|
});
|
|
78
78
|
}
|
package/src/chart/registry.js
CHANGED
|
@@ -3,6 +3,7 @@ const { parseGitlabUrl } = require('../integrations/gitlab-url');
|
|
|
3
3
|
const HELM_REGISTRY_CHANNEL = 'stable';
|
|
4
4
|
const REGISTRY_WAIT_TIMEOUT_MS = 10 * 60 * 1000;
|
|
5
5
|
const REGISTRY_WAIT_INTERVAL_MS = 15 * 1000;
|
|
6
|
+
let legacyTokenWarningShown = false;
|
|
6
7
|
|
|
7
8
|
function sleep(ms) {
|
|
8
9
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
@@ -60,7 +61,8 @@ function helmIndexHasChartVersion(indexYamlContent, chartName, version) {
|
|
|
60
61
|
continue;
|
|
61
62
|
}
|
|
62
63
|
|
|
63
|
-
|
|
64
|
+
const isChartSequenceItem = indent === chartIndent && trimmed.startsWith('-');
|
|
65
|
+
if (inChart && indent <= chartIndent && !isChartSequenceItem) {
|
|
64
66
|
inChart = false;
|
|
65
67
|
}
|
|
66
68
|
|
|
@@ -77,24 +79,32 @@ function helmIndexHasChartVersion(indexYamlContent, chartName, version) {
|
|
|
77
79
|
return false;
|
|
78
80
|
}
|
|
79
81
|
|
|
82
|
+
function buildBasicAuthHeader(accessToken) {
|
|
83
|
+
return `Basic ${Buffer.from(`token:${accessToken}`).toString('base64')}`;
|
|
84
|
+
}
|
|
85
|
+
|
|
80
86
|
async function fetchChartVersionFromRegistry(chartName, version) {
|
|
81
87
|
const project = getGitlabProject();
|
|
82
88
|
if (!project) {
|
|
83
89
|
return { ok: false, reason: 'Не удалось определить GitLab-проект из remote "origin".' };
|
|
84
90
|
}
|
|
85
91
|
|
|
86
|
-
const accessToken = process.env.
|
|
92
|
+
const accessToken = process.env.SC_DEVELOPER_PAT || process.env.SC_OWNER_PAT;
|
|
93
|
+
if (!process.env.SC_DEVELOPER_PAT && accessToken && !legacyTokenWarningShown) {
|
|
94
|
+
logError('⚠️', 'SC_OWNER_PAT устарела (deprecated) и будет удалена в следующей версии spectrum-cli. Замените её на SC_DEVELOPER_PAT.');
|
|
95
|
+
legacyTokenWarningShown = true;
|
|
96
|
+
}
|
|
87
97
|
if (!accessToken) {
|
|
88
98
|
return {
|
|
89
99
|
ok: false,
|
|
90
|
-
reason: 'Не задана переменная окружения
|
|
100
|
+
reason: 'Не задана переменная окружения SC_DEVELOPER_PAT. Она нужна для проверки публикации чарта в Helm-registry.'
|
|
91
101
|
};
|
|
92
102
|
}
|
|
93
103
|
|
|
94
104
|
const indexUrl = `${project.origin}/api/v4/projects/${project.encodedPath}/packages/helm/${HELM_REGISTRY_CHANNEL}/index.yaml`;
|
|
95
105
|
let response;
|
|
96
106
|
try {
|
|
97
|
-
response = await fetch(indexUrl, { headers: {
|
|
107
|
+
response = await fetch(indexUrl, { headers: { Authorization: buildBasicAuthHeader(accessToken) } });
|
|
98
108
|
} catch (error) {
|
|
99
109
|
return { ok: false, reason: `Не удалось запросить Helm-registry (${indexUrl}): ${error.message}.` };
|
|
100
110
|
}
|
package/src/cli/commands.js
CHANGED
|
@@ -29,6 +29,7 @@ const releaseCmd = program
|
|
|
29
29
|
releaseCmd
|
|
30
30
|
.command("start")
|
|
31
31
|
.description("Схлопнуть fragments и атомарно отправить release commit в dev и main/master")
|
|
32
|
+
.option("--stable", "Явно перейти с 0.x на первый стабильный релиз 1.0.0")
|
|
32
33
|
.option("-d, --dry", "Запустить только предпроверки")
|
|
33
34
|
.option("-s, --silence", "Скрыть сообщения об успешно пройденных предпроверках")
|
|
34
35
|
.action((command) => runAction(release.releaseStart, command));
|
|
@@ -127,7 +128,7 @@ const tokenCmd = program
|
|
|
127
128
|
|
|
128
129
|
tokenCmd
|
|
129
130
|
.command("rotate")
|
|
130
|
-
.description("Пролить
|
|
131
|
+
.description("Пролить SC_BOT_PAT в CI variables через owner PAT")
|
|
131
132
|
.option("-d, --dry", "Запустить только предпроверки")
|
|
132
133
|
.option("-s, --silence", "Скрыть сообщения об успешно пройденных предпроверках")
|
|
133
134
|
.action((command) => runAction(token.tokenRotate, command));
|
package/src/preflight/chart.js
CHANGED
|
@@ -15,7 +15,7 @@ function requireChartChangelogVersion(chartDir) {
|
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
const firstHeading = changelog.match(/^##(?!#)[^\r\n]*$/m)?.[0];
|
|
18
|
-
const version = firstHeading?.match(/^##\s+(?:\S+\s+)?\[([^\]]+)\](?:\s|$)/)?.[1];
|
|
18
|
+
const version = firstHeading?.match(/^##\s+(?:\S+\s+)?\[([^\]]+)\](?:\([^)\s]*\))?(?:\s|$)/)?.[1];
|
|
19
19
|
if (!version || !SEMVER_PATTERN.test(version)) {
|
|
20
20
|
return fail(`Верхний раздел "${changelogPath}" должен содержать версию SemVer в заголовке "## [X.Y.Z]".`);
|
|
21
21
|
}
|
package/src/release/start.js
CHANGED
|
@@ -5,7 +5,7 @@ const { requireGitRepo, requireCleanWorkingTree, requireCurrentBranchUpToDateWit
|
|
|
5
5
|
const { CHANGELOG_FILE } = require('../changelog/config');
|
|
6
6
|
const { detectBumpType, resolveReleaseVersion } = require('./version');
|
|
7
7
|
const { releaseFormatChangelog, releaseCheckChangelogLint, releaseCommit, releasePush } = require('./steps');
|
|
8
|
-
function releaseStart() {
|
|
8
|
+
function releaseStart(options = {}) {
|
|
9
9
|
return runCommand({
|
|
10
10
|
name: 'release start',
|
|
11
11
|
checks: [
|
|
@@ -24,9 +24,13 @@ function releaseStart() {
|
|
|
24
24
|
name: 'detect-bump-type',
|
|
25
25
|
requires: ['changelogFragments', 'stableVersion'],
|
|
26
26
|
run: (ctx) => {
|
|
27
|
+
if (options.stable && (!ctx.stableVersion.startsWith('0.') ||
|
|
28
|
+
(ctx.openReleaseVersion && ctx.openReleaseVersion !== '1.0.0'))) {
|
|
29
|
+
return { ok: false, reason: '--stable разрешён только для перехода с 0.x на 1.0.0 без другого открытого релиза.' };
|
|
30
|
+
}
|
|
27
31
|
const resolved = ctx.openReleaseVersion
|
|
28
32
|
? { bumpType: detectBumpType(ctx.changelogFragments), newVersion: ctx.openReleaseVersion }
|
|
29
|
-
: resolveReleaseVersion(ctx.stableVersion, ctx.changelogFragments);
|
|
33
|
+
: resolveReleaseVersion(ctx.stableVersion, ctx.changelogFragments, options);
|
|
30
34
|
if (!resolved) {
|
|
31
35
|
return { ok: false, reason: 'Не удалось вычислить release-версию от последнего стабильного тега.' };
|
|
32
36
|
}
|
package/src/release/version.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const { upVersion } = require('../common/version');
|
|
1
|
+
const { upVersion, parseStableVersion } = require('../common/version');
|
|
2
2
|
function detectBumpType(fragments) {
|
|
3
3
|
const bumpTypes = new Set((fragments || []).map((fragment) => fragment.bump));
|
|
4
4
|
if (bumpTypes.has('major')) {
|
|
@@ -10,8 +10,12 @@ function detectBumpType(fragments) {
|
|
|
10
10
|
return 'patch';
|
|
11
11
|
}
|
|
12
12
|
|
|
13
|
-
function resolveReleaseVersion(stableVersion, fragments) {
|
|
14
|
-
const
|
|
13
|
+
function resolveReleaseVersion(stableVersion, fragments, { stable = false } = {}) {
|
|
14
|
+
const baseline = parseStableVersion(stableVersion);
|
|
15
|
+
if (!baseline || (stable && baseline[0] !== 0)) return null;
|
|
16
|
+
const impact = detectBumpType(fragments);
|
|
17
|
+
// Initial development stays in 0.x until explicitly promoted to 1.0.0.
|
|
18
|
+
const bumpType = stable ? 'major' : baseline[0] === 0 && impact === 'major' ? 'minor' : impact;
|
|
15
19
|
const newVersion = upVersion(stableVersion, bumpType);
|
|
16
20
|
if (!newVersion) return null;
|
|
17
21
|
return { bumpType, newVersion };
|
package/src/token/config.js
CHANGED
|
@@ -4,7 +4,7 @@ const path = require('path');
|
|
|
4
4
|
const { logSuccess } = require('../common/utils');
|
|
5
5
|
const { isDryRun } = require('../cli/command-executor');
|
|
6
6
|
const { parseGitlabUrl } = require('../integrations/gitlab-url');
|
|
7
|
-
const TOKEN_NAME = '
|
|
7
|
+
const TOKEN_NAME = 'SC_BOT_PAT';
|
|
8
8
|
|
|
9
9
|
function getConfigPath() {
|
|
10
10
|
return path.join(os.homedir(), '.config', 'spectrum-cli', 'config.yaml');
|