5 Commits
Author SHA1 Message Date
semantic-release-bot 47e3930b4b chore(release): 0.9.2 [skip ci]
## [0.9.2](https://git.mifi.dev/mifi/logger/compare/v0.9.1...v0.9.2) (2026-08-05)

### Bug Fixes

* **ci:** authenticate semantic release pushes ([1c63e58](1c63e58809))
* **ci:** install CA certificates for release workflows ([d211d9f](d211d9f8bc))
* **ci:** install git for release workflows ([afd2ca1](afd2ca1978))
2026-08-05 04:40:55 +00:00
mifi 1c63e58809 fix(ci): authenticate semantic release pushes
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline was successful
2026-08-05 01:38:41 -03:00
mifi d211d9f8bc fix(ci): install CA certificates for release workflows
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline failed
2026-08-05 01:35:07 -03:00
mifi afd2ca1978 fix(ci): install git for release workflows
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline failed
2026-08-05 01:31:39 -03:00
mifi 934367d695 chore(ci): configure release automation
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline failed
2026-08-05 01:29:07 -03:00
6 changed files with 85 additions and 4 deletions
+57
View File
@@ -0,0 +1,57 @@
# One-time bootstrap for the v0.9.1 tag, whose original tag workflow failed before publishing.
when:
- event: manual
steps:
publish-v0-9-1:
image: node:24-bookworm-slim
environment:
NPM_TOKEN:
from_secret: gitea_package_token
commands:
- corepack enable
- corepack prepare pnpm@11.0.0 --activate
- apt-get update && apt-get install --yes --no-install-recommends ca-certificates git
- pnpm install --frozen-lockfile
- test "$(node -p \"require('./package.json').version\")" = "0.9.1"
- git rev-parse --verify refs/tags/v0.9.1
- pnpm check
- pnpm test
- pnpm build
- npm config set @mifi:registry https://git.mifi.dev/api/packages/mifi/npm/
- npm config set -- //git.mifi.dev/api/packages/mifi/npm/:_authToken "$NPM_TOKEN"
- pnpm publish --no-git-checks
notify-bootstrap-failure:
image: curlimages/curl:8.14.1
depends_on: [publish-v0-9-1]
environment:
MATTERMOST_BOT_ACCESS_TOKEN:
from_secret: mattermost_bot_access_token
MATTERMOST_CHANNEL_ID:
from_secret: mattermost_pushes_channel_id
MATTERMOST_POST_API_URL:
from_secret: mattermost_post_api_url
commands:
- |
BODY=$(printf '{"channel_id":"%s","message":"[%s - Build #%s] Package bootstrap failure 💩"}' "$MATTERMOST_CHANNEL_ID" "$CI_REPO" "$CI_PIPELINE_NUMBER")
curl --fail --show-error --silent --request POST --header 'Content-Type: application/json' --header "Authorization: Bearer $MATTERMOST_BOT_ACCESS_TOKEN" --data "$BODY" "$MATTERMOST_POST_API_URL"
when:
- status: [failure]
notify-bootstrap-success:
image: curlimages/curl:8.14.1
depends_on: [publish-v0-9-1]
environment:
MATTERMOST_BOT_ACCESS_TOKEN:
from_secret: mattermost_bot_access_token
MATTERMOST_CHANNEL_ID:
from_secret: mattermost_pushes_channel_id
MATTERMOST_POST_API_URL:
from_secret: mattermost_post_api_url
commands:
- |
BODY=$(printf '{"channel_id":"%s","message":"[%s - Build #%s] Package bootstrap success 🎉"}' "$MATTERMOST_CHANNEL_ID" "$CI_REPO" "$CI_PIPELINE_NUMBER")
curl --fail --show-error --silent --request POST --header 'Content-Type: application/json' --header "Authorization: Bearer $MATTERMOST_BOT_ACCESS_TOKEN" --data "$BODY" "$MATTERMOST_POST_API_URL"
when:
- status: [success]
+9 -3
View File
@@ -7,13 +7,18 @@ depends_on:
- ci - ci
clone: clone:
depth: 0 git:
image: woodpeckerci/plugin-git
settings:
depth: 0
partial: false
tags: true
steps: steps:
release: release:
image: node:24-bookworm-slim image: node:24-bookworm-slim
environment: environment:
GITEA_PACKAGE_TOKEN: NPM_TOKEN:
from_secret: gitea_package_token from_secret: gitea_package_token
GITEA_REGISTRY_USERNAME: GITEA_REGISTRY_USERNAME:
from_secret: gitea_registry_username from_secret: gitea_registry_username
@@ -22,12 +27,13 @@ steps:
commands: commands:
- corepack enable - corepack enable
- corepack prepare pnpm@11.0.0 --activate - corepack prepare pnpm@11.0.0 --activate
- apt-get update && apt-get install --yes --no-install-recommends ca-certificates git
- pnpm install --frozen-lockfile - pnpm install --frozen-lockfile
- git config user.name "Woodpecker CI" - git config user.name "Woodpecker CI"
- git config user.email "woodpecker-ci@mifi.dev" - git config user.email "woodpecker-ci@mifi.dev"
- git remote set-url origin "https://${GITEA_REGISTRY_USERNAME}:${GITEA_RELEASE_TOKEN}@git.mifi.dev/mifi/logger.git" - git remote set-url origin "https://${GITEA_REGISTRY_USERNAME}:${GITEA_RELEASE_TOKEN}@git.mifi.dev/mifi/logger.git"
- npm config set @mifi:registry https://git.mifi.dev/api/packages/mifi/npm/ - npm config set @mifi:registry https://git.mifi.dev/api/packages/mifi/npm/
- npm config set -- //git.mifi.dev/api/packages/mifi/npm/:_authToken "$GITEA_PACKAGE_TOKEN" - npm config set -- //git.mifi.dev/api/packages/mifi/npm/:_authToken "$NPM_TOKEN"
- pnpm release - pnpm release
notify-release-failure: notify-release-failure:
+8
View File
@@ -0,0 +1,8 @@
## [0.9.2](https://git.mifi.dev/mifi/logger/compare/v0.9.1...v0.9.2) (2026-08-05)
### Bug Fixes
* **ci:** authenticate semantic release pushes ([1c63e58](https://git.mifi.dev/mifi/logger/commit/1c63e58809049e8a3a4da00601b09e60a5482ff1))
* **ci:** install CA certificates for release workflows ([d211d9f](https://git.mifi.dev/mifi/logger/commit/d211d9f8bc205ae6b952e35603773e44bca5ee37))
* **ci:** install git for release workflows ([afd2ca1](https://git.mifi.dev/mifi/logger/commit/afd2ca1978d7373daa4b6ffa9067122586ba5f86))
+2
View File
@@ -39,3 +39,5 @@ Woodpecker verifies pull requests and `main`, reports CI to Mattermost, then aut
Use `fix:` for a patch, `feat:` for a minor release, and `!` or a `BREAKING CHANGE:` footer for a major release. Commits such as `docs:`, `test:`, and `chore:` do not release a package. Before enabling the automation, publish and tag the existing `v0.9.1` once as its baseline. Use `fix:` for a patch, `feat:` for a minor release, and `!` or a `BREAKING CHANGE:` footer for a major release. Commits such as `docs:`, `test:`, and `chore:` do not release a package. Before enabling the automation, publish and tag the existing `v0.9.1` once as its baseline.
The release workflow uses the existing global `gitea_package_token`, `gitea_registry_username`, `gitea_release_token`, `mattermost_bot_access_token`, `mattermost_tests_channel_id`, `mattermost_pushes_channel_id`, and `mattermost_post_api_url` secrets. The release workflow uses the existing global `gitea_package_token`, `gitea_registry_username`, `gitea_release_token`, `mattermost_bot_access_token`, `mattermost_tests_channel_id`, `mattermost_pushes_channel_id`, and `mattermost_post_api_url` secrets.
The repository includes a guarded, one-time manual bootstrap workflow for `v0.9.1`; remove it after that initial package version has been published.
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "@mifi/logger", "name": "@mifi/logger",
"version": "0.9.1", "version": "0.9.2",
"description": "Intentional, namespaced logging for browser and Node.js TypeScript applications.", "description": "Intentional, namespaced logging for browser and Node.js TypeScript applications.",
"repository": { "repository": {
"type": "git", "type": "git",
+8
View File
@@ -1,5 +1,13 @@
const releaseUsername = process.env.GITEA_REGISTRY_USERNAME;
const releaseToken = process.env.GITEA_RELEASE_TOKEN;
const repositoryUrl =
releaseUsername && releaseToken
? `https://${encodeURIComponent(releaseUsername)}:${encodeURIComponent(releaseToken)}@git.mifi.dev/mifi/logger.git`
: "https://git.mifi.dev/mifi/logger.git";
module.exports = { module.exports = {
branches: ["main"], branches: ["main"],
repositoryUrl,
tagFormat: "v${version}", tagFormat: "v${version}",
plugins: [ plugins: [
"@semantic-release/commit-analyzer", "@semantic-release/commit-analyzer",