@catladder/cli 5.0.0 → 5.1.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/dist/apps/cli/src/apps/cli/commands/project/doctor/checkGithub.js +3 -3
- package/dist/apps/cli/src/apps/cli/commands/project/doctor/checkGithub.js.map +1 -1
- package/dist/apps/cli/src/apps/cli/commands/project/setup/setupAccessTokens.js +2 -2
- package/dist/apps/cli/src/apps/cli/commands/project/setup/setupAccessTokens.js.map +1 -1
- package/dist/apps/cli/src/apps/cli/commands/project/setup/setupGithub.js +2 -2
- package/dist/apps/cli/src/apps/cli/commands/project/setup/setupGithub.js.map +1 -1
- package/dist/apps/cli/src/apps/cli/commands/project/setup/setupKubernetes.js +23 -7
- package/dist/apps/cli/src/apps/cli/commands/project/setup/setupKubernetes.js.map +1 -1
- package/dist/apps/cli/src/commands/index.d.ts +1 -0
- package/dist/apps/cli/src/commands/index.js +4 -1
- package/dist/apps/cli/src/commands/index.js.map +1 -1
- package/dist/apps/cli/src/commands/project/commandConfigSecrets.js +2 -1
- package/dist/apps/cli/src/commands/project/commandConfigSecrets.js.map +1 -1
- package/dist/apps/cli/src/commands/project/commandMrPin.d.ts +21 -0
- package/dist/apps/cli/src/commands/project/commandMrPin.js +119 -0
- package/dist/apps/cli/src/commands/project/commandMrPin.js.map +1 -0
- package/dist/apps/cli/src/commands/project/commandSecretsSyncGithub.d.ts +1 -42
- package/dist/apps/cli/src/commands/project/commandSecretsSyncGithub.js +5 -124
- package/dist/apps/cli/src/commands/project/commandSecretsSyncGithub.js.map +1 -1
- package/dist/apps/cli/src/commands/project/secrets/commandSecretsPush.js +2 -1
- package/dist/apps/cli/src/commands/project/secrets/commandSecretsPush.js.map +1 -1
- package/dist/apps/cli/src/commands/project/secrets/commandSecretsSet.js +2 -2
- package/dist/apps/cli/src/commands/project/secrets/commandSecretsSet.js.map +1 -1
- package/dist/apps/cli/src/commands/project/secrets/document.d.ts +1 -12
- package/dist/apps/cli/src/commands/project/secrets/document.js +1 -79
- package/dist/apps/cli/src/commands/project/secrets/document.js.map +1 -1
- package/dist/apps/cli/src/gcloud/serviceAccounts.js +15 -4
- package/dist/apps/cli/src/gcloud/serviceAccounts.js.map +1 -1
- package/dist/apps/cli/src/release/changesetsReleaseJob.js +3 -0
- package/dist/apps/cli/src/release/changesetsReleaseJob.js.map +1 -1
- package/dist/apps/cli/src/release/releaseEntry.d.ts +12 -0
- package/dist/apps/cli/src/release/releaseEntry.js +71 -0
- package/dist/apps/cli/src/release/releaseEntry.js.map +1 -0
- package/dist/apps/cli/src/secrets/github.d.ts +41 -0
- package/dist/apps/cli/src/secrets/github.js +127 -0
- package/dist/apps/cli/src/secrets/github.js.map +1 -0
- package/dist/apps/cli/src/secrets/index.d.ts +2 -0
- package/dist/apps/cli/src/secrets/index.js +19 -0
- package/dist/apps/cli/src/secrets/index.js.map +1 -0
- package/dist/apps/cli/src/secrets/writeSecrets.d.ts +18 -0
- package/dist/apps/cli/src/secrets/writeSecrets.js +88 -0
- package/dist/apps/cli/src/secrets/writeSecrets.js.map +1 -0
- package/dist/apps/cli/src/utils/gitlab.d.ts +10 -0
- package/dist/apps/cli/src/utils/gitlab.js +30 -5
- package/dist/apps/cli/src/utils/gitlab.js.map +1 -1
- package/dist/apps/cli/src/vault/BitwardenVault.d.ts +6 -0
- package/dist/apps/cli/src/vault/BitwardenVault.js +11 -1
- package/dist/apps/cli/src/vault/BitwardenVault.js.map +1 -1
- package/dist/apps/cli/src/vault/GitlabVault.d.ts +2 -2
- package/dist/apps/cli/src/vault/GitlabVault.js +3 -2
- package/dist/apps/cli/src/vault/GitlabVault.js.map +1 -1
- package/dist/apps/cli/src/vault/VaultManager.d.ts +2 -2
- package/dist/apps/cli/src/vault/VaultManager.js +2 -2
- package/dist/apps/cli/src/vault/VaultManager.js.map +1 -1
- package/dist/apps/cli/src/vault/types.d.ts +16 -2
- package/dist/bundles/catci/index.js +4 -4
- package/dist/bundles/catenv/index.js +115 -13
- package/dist/bundles/cli/index.js +749 -431
- package/dist/bundles/runner-images/semantic-release/Dockerfile +1 -0
- package/dist/bundles/runner-images/semantic-release/scripts/semanticRelease +14 -4
- package/dist/bundles/skills/catladder-cli/references/commands.md +13 -0
- package/dist/bundles/skills/catladder-deploys/SKILL.md +7 -0
- package/dist/bundles/skills/catladder-migrate-ci-backend/SKILL.md +7 -2
- package/dist/bundles/skills/catladder-pipelines/SKILL.md +27 -1
- package/dist/bundles/skills/catladder-releases/SKILL.md +16 -2
- package/dist/bundles/skills/catladder-secrets/SKILL.md +16 -0
- package/dist/packages/pipeline/src/autoStop.d.ts +22 -0
- package/dist/packages/pipeline/src/autoStop.js +30 -0
- package/dist/packages/pipeline/src/autoStop.js.map +1 -0
- package/dist/packages/pipeline/src/backends/gitlab/GitlabBackend.js +2 -0
- package/dist/packages/pipeline/src/backends/gitlab/GitlabBackend.js.map +1 -1
- package/dist/packages/pipeline/src/backends/gitlab/createGitlabPipeline.d.ts +4 -1
- package/dist/packages/pipeline/src/backends/gitlab/createGitlabPipeline.js +21 -1
- package/dist/packages/pipeline/src/backends/gitlab/createGitlabPipeline.js.map +1 -1
- package/dist/packages/pipeline/src/deploy/base/deploy.js +8 -2
- package/dist/packages/pipeline/src/deploy/base/deploy.js.map +1 -1
- package/dist/packages/pipeline/src/index.d.ts +1 -0
- package/dist/packages/pipeline/src/index.js +1 -0
- package/dist/packages/pipeline/src/index.js.map +1 -1
- package/dist/packages/pipeline/src/types/config.d.ts +32 -0
- package/dist/runner-images/semantic-release/Dockerfile +1 -0
- package/dist/runner-images/semantic-release/scripts/semanticRelease +14 -4
- package/dist/skills/catladder-cli/references/commands.md +13 -0
- package/dist/skills/catladder-deploys/SKILL.md +7 -0
- package/dist/skills/catladder-migrate-ci-backend/SKILL.md +7 -2
- package/dist/skills/catladder-pipelines/SKILL.md +27 -1
- package/dist/skills/catladder-releases/SKILL.md +16 -2
- package/dist/skills/catladder-secrets/SKILL.md +16 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/apps/cli/commands/project/doctor/checkGithub.ts +1 -1
- package/src/apps/cli/commands/project/setup/setupAccessTokens.ts +3 -2
- package/src/apps/cli/commands/project/setup/setupGithub.ts +1 -1
- package/src/apps/cli/commands/project/setup/setupKubernetes.ts +31 -20
- package/src/commands/index.ts +1 -0
- package/src/commands/project/commandConfigSecrets.ts +1 -1
- package/src/commands/project/commandMrPin.ts +184 -0
- package/src/commands/project/commandSecretsSyncGithub.ts +7 -154
- package/src/commands/project/secrets/commandSecretsPush.ts +2 -5
- package/src/commands/project/secrets/commandSecretsSet.ts +2 -2
- package/src/commands/project/secrets/document.ts +2 -127
- package/src/gcloud/serviceAccounts.ts +16 -7
- package/src/release/__tests__/releaseEntry.test.ts +88 -0
- package/src/release/changesetsReleaseJob.ts +3 -0
- package/src/release/releaseEntry.ts +86 -0
- package/src/secrets/__tests__/writeSecrets.test.ts +147 -0
- package/src/secrets/github.ts +157 -0
- package/src/secrets/index.ts +2 -0
- package/src/secrets/writeSecrets.ts +138 -0
- package/src/utils/gitlab.ts +34 -7
- package/src/vault/BitwardenVault.ts +10 -1
- package/src/vault/GitlabVault.ts +9 -2
- package/src/vault/VaultManager.ts +3 -2
- package/src/vault/__tests__/BitwardenVault.test.ts +88 -0
- package/src/vault/types.ts +17 -1
|
@@ -52,6 +52,11 @@ workflows the same way (`▶️ catladder deploy`, `⏹️ catladder stop`,
|
|
|
52
52
|
|
|
53
53
|
## `method` — how the version is decided
|
|
54
54
|
|
|
55
|
+
Whichever method runs, the release ends the same way: a `vX.Y.Z` tag, a
|
|
56
|
+
`CHANGELOG.md` entry, a `chore(release): <version>` commit, and an
|
|
57
|
+
entry on the releases page of the git host (gitlab `/-/releases`,
|
|
58
|
+
github `/releases`) carrying the release notes.
|
|
59
|
+
|
|
55
60
|
### `semantic-release` (default)
|
|
56
61
|
The version is derived automatically from **conventional commit
|
|
57
62
|
messages** since the last release (`fix:` → patch, `feat:` → minor,
|
|
@@ -63,8 +68,10 @@ Developers declare changes intentionally as **`.changeset/*.md` files**
|
|
|
63
68
|
(the official changesets format: a bump type + a human-written summary).
|
|
64
69
|
The release job consumes all pending changesets, takes the highest bump,
|
|
65
70
|
computes the next version from the last `v*` git tag, writes the
|
|
66
|
-
changelog, commits `chore(release): <version>`,
|
|
67
|
-
|
|
71
|
+
changelog, commits `chore(release): <version>`, pushes the tag and
|
|
72
|
+
creates the release entry on the git host (gitlab `/-/releases`,
|
|
73
|
+
github `/releases`) with the changelog as its description. An empty
|
|
74
|
+
`.changeset/` folder means there is nothing to release.
|
|
68
75
|
|
|
69
76
|
Add a changeset by creating `.changeset/<name>.md`:
|
|
70
77
|
|
|
@@ -121,6 +128,13 @@ the `security` commands in the `catladder-cli` reference.
|
|
|
121
128
|
MR adding a changeset describing the accumulated work.
|
|
122
129
|
- Wrong version bump → check commit types (semantic-release) or the bump
|
|
123
130
|
levels in the changeset files (changesets).
|
|
131
|
+
- Tag pushed but nothing on the releases page → with `changesets` the
|
|
132
|
+
entry is created via the host api after the push and never fails the
|
|
133
|
+
job (the release itself is done); look for the `could not create the
|
|
134
|
+
release entry` warning at the end of the release job log. On gitlab
|
|
135
|
+
it needs `GL_TOKEN` (`catladder project renew-token`). Releases
|
|
136
|
+
tagged before catladder created entries have none — that is not fixed
|
|
137
|
+
retroactively, create them by hand from the tag.
|
|
124
138
|
- Inspect the job with `yarn catladder project ci job-log` (see the
|
|
125
139
|
`catladder-cli` skill).
|
|
126
140
|
|
|
@@ -80,6 +80,22 @@ All of these write to the secrets vault (the source of truth) and
|
|
|
80
80
|
automatically mirror to the enabled CI backends — which vault is
|
|
81
81
|
configured makes no difference to the commands.
|
|
82
82
|
|
|
83
|
+
## Provisioned secrets
|
|
84
|
+
|
|
85
|
+
A few secrets are not typed in by a human but created by
|
|
86
|
+
`yarn catladder project setup`: the gcloud deploy service account key
|
|
87
|
+
(`GCLOUD_DEPLOY_credentialsKey`) and the kubernetes deploy credentials
|
|
88
|
+
(`KUBE_TOKEN`, `KUBE_CA_PEM`, `KUBE_URL`). They travel the same route as
|
|
89
|
+
every other secret — vault first, then the enabled CI backends — but
|
|
90
|
+
they are *hidden*: they never show up in `secrets-list`, in the editor
|
|
91
|
+
or in a pulled document, and they must never be set by hand.
|
|
92
|
+
|
|
93
|
+
Re-running `project setup` **rotates** them (a fresh credential is
|
|
94
|
+
created and the old one revoked). That is also the answer whenever they
|
|
95
|
+
are missing somewhere — after switching `secrets.vault`, for instance:
|
|
96
|
+
a `secrets-pull`/`secrets-push` round trip does not carry hidden keys
|
|
97
|
+
over, so re-run `project setup` to provision them into the new vault.
|
|
98
|
+
|
|
83
99
|
## GitHub pipelines
|
|
84
100
|
|
|
85
101
|
GitHub Actions cannot read the vault at runtime; secrets are mirrored
|