Files
logger/.woodpecker/publish.yaml
T
mifi d211d9f8bc
ci/woodpecker/push/ci Pipeline was successful
ci/woodpecker/push/publish Pipeline failed
fix(ci): install CA certificates for release workflows
2026-08-05 01:35:07 -03:00

72 lines
3.0 KiB
YAML

# Release workflow: derive the version, changelog, tag, and package from Conventional Commits on main.
when:
- event: push
branch: main
depends_on:
- ci
clone:
git:
image: woodpeckerci/plugin-git
settings:
depth: 0
partial: false
tags: true
steps:
release:
image: node:24-bookworm-slim
environment:
NPM_TOKEN:
from_secret: gitea_package_token
GITEA_REGISTRY_USERNAME:
from_secret: gitea_registry_username
GITEA_RELEASE_TOKEN:
from_secret: gitea_release_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
- git config user.name "Woodpecker CI"
- 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"
- 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 release
notify-release-failure:
image: curlimages/curl:8.14.1
depends_on: [release]
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 release 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-release-success:
image: curlimages/curl:8.14.1
depends_on: [release]
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 release 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]