1 Commits
Author SHA1 Message Date
CSRBot 176681ebe5 chore(deps): update docker.io/library/node docker tag to v26.8.1
Install yq / install-yq (ubuntu-latest-amd64, amd64, linux) (push) Successful in 8s
Install yq / install-yq (ubuntu-latest-arm64, arm64, linux) (push) Successful in 12s
Markdown linter / markdown-lint (push) Failing after 2s
Install yq / install-yq (ubuntu-latest-arm64, arm64, linux) (pull_request) Successful in 11s
Markdown linter / markdown-link-checker (pull_request) Failing after 3s
Markdown linter / markdown-lint (pull_request) Failing after 2s
Markdown linter / markdown-link-checker (push) Successful in 40s
Install yq / install-yq (ubuntu-latest-amd64, amd64, linux) (pull_request) Successful in 7s
2026-08-27 18:01:44 +00:00
5 changed files with 20 additions and 18 deletions
+1 -1
View File
@@ -18,7 +18,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
with: with:
fetch-depth: 0 fetch-depth: 0
+1 -1
View File
@@ -31,7 +31,7 @@ jobs:
# yq-arch: "arm64" # yq-arch: "arm64"
# yq-os: "darwin" # yq-os: "darwin"
steps: steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
- name: Install yq - name: Install yq
shell: bash shell: bash
env: env:
+4 -4
View File
@@ -13,14 +13,14 @@ on:
jobs: jobs:
markdown-link-checker: markdown-link-checker:
container: container:
image: docker.io/library/node:26.10.0-alpine image: docker.io/library/node:26.8.1-alpine
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Install tooling - name: Install tooling
run: | run: |
apk update apk update
apk add git npm apk add git npm
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
- name: Verify links in markdown files - name: Verify links in markdown files
run: | run: |
npm install npm install
@@ -28,14 +28,14 @@ jobs:
markdown-lint: markdown-lint:
container: container:
image: docker.io/library/node:26.10.0-alpine image: docker.io/library/node:26.8.1-alpine
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Install tooling - name: Install tooling
run: | run: |
apk update apk update
apk add git apk add git
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
- name: Lint markdown files - name: Lint markdown files
run: | run: |
npm install npm install
+10 -9
View File
@@ -6,21 +6,20 @@ them to `Chart.yaml`.
The action parses conventional commit messages between two Git tags and produces an `artifacthub.io/changes` annotation. The action parses conventional commit messages between two Git tags and produces an `artifacthub.io/changes` annotation.
Pre-release tags according to [SemVer 2.0](https://semver.org/) (e.g. `-alpha`, `-beta.1`, `-rc.2`) are detected Pre-release tags according to [SemVer 2.0](https://semver.org/) (e.g. `-alpha`, `-beta.1`, `-rc.2`) are detected
automatically and additionally result in an `artifacthub.io/prerelease` annotation. automatically and result in an `artifacthub.io/prerelease` annotation instead.
## Usage ## Usage
### Auto-detect tags ### Auto-detect tags
Without explicit inputs the action uses the currently checked out tag as end tag and the most recent stable Without explicit inputs the action determines the two most recent stable (non-pre-release) tags from the Git history:
(non-pre-release) tag as start tag:
```yaml ```yaml
steps: steps:
- uses: actions/checkout@v7.0.1 - uses: actions/checkout@v7.0.1
with: with:
fetch-depth: 0 fetch-depth: 0
- uses: volker.raschek/ah-annotations@v0.2.3 - uses: volker.raschek/ah-annotations@v0.2.2
``` ```
### Explicit tags ### Explicit tags
@@ -32,7 +31,7 @@ steps:
- uses: actions/checkout@v7.0.1 - uses: actions/checkout@v7.0.1
with: with:
fetch-depth: 0 fetch-depth: 0
- uses: volker.raschek/ah-annotations@v0.2.3 - uses: volker.raschek/ah-annotations@v0.2.2
with: with:
old-tag: v1.0.0 old-tag: v1.0.0
new-tag: v2.0.0 new-tag: v2.0.0
@@ -60,11 +59,13 @@ steps:
## Pre-releases ## Pre-releases
Tags containing a hyphen-separated pre-release identifier according to [SemVer 2.0](https://semver.org/) are treated as Tags containing a hyphen-separated pre-release identifier according to [SemVer 2.0](https://semver.org/) are treated as
pre-releases (e.g. `v1.0.0-alpha`, `v1.0.0-beta.1`, `v2.0.0-rc.2`). When `new-tag` is a pre-release tag, the action sets pre-releases (e.g. `v1.0.0-alpha`, `v1.0.0-beta.1`, `v2.0.0-rc.2`). When `new-tag` is a pre-release tag, the action:
`artifacthub.io/prerelease: "true"` in `Chart.yaml` in addition to the generated changelog.
When auto-detecting tags (no explicit `old-tag`/`new-tag`), the end tag is the tag of the checked out commit - including 1. Sets `artifacthub.io/prerelease: "true"` in `Chart.yaml`.
pre-releases - while the start tag is always the most recent stable tag. 2. Skips changelog generation entirely.
When auto-detecting tags (no explicit `old-tag`/`new-tag`), the action ignores pre-release tags and selects the two
most recent stable tags instead.
## Commit type mapping ## Commit type mapping
+4 -3
View File
@@ -23,9 +23,8 @@ if [[ ! -f "${CHART_FILE}" ]]; then
exit 1 exit 1
fi fi
# Determine old and new tags. The new tag is the currently checked out one - including prereleases - so that # Determine old and new tags
# prereleases are detected. Only the old tag is restricted to stable releases. DEFAULT_NEW_TAG="$(git tag --sort=-version:refname | grep --invert-match --perl-regexp "${PRERELEASE_PATTERN}" | head --lines 1)"
DEFAULT_NEW_TAG="$(git describe --tags --exact-match HEAD 2>/dev/null || git tag --sort=-version:refname | head --lines 1)"
DEFAULT_OLD_TAG="$(git tag --sort=-version:refname | grep --invert-match --perl-regexp "${PRERELEASE_PATTERN}" | head --lines 2 | tail --lines 1)" DEFAULT_OLD_TAG="$(git tag --sort=-version:refname | grep --invert-match --perl-regexp "${PRERELEASE_PATTERN}" | head --lines 2 | tail --lines 1)"
if [[ -n "${INPUT_OLD_TAG:-}" ]]; then if [[ -n "${INPUT_OLD_TAG:-}" ]]; then
@@ -51,7 +50,9 @@ if [[ -z "$(git tag --list "${NEW_TAG}")" ]]; then
fi fi
if [[ "${NEW_TAG}" =~ ${PRERELEASE_PATTERN} ]]; then if [[ "${NEW_TAG}" =~ ${PRERELEASE_PATTERN} ]]; then
echo "INFO: Tag '${NEW_TAG}' is a prerelease, setting prerelease annotation and skipping changelog."
yq --no-colors --inplace ".annotations.\"artifacthub.io/prerelease\" = \"true\" | sort_keys(.)" "${CHART_FILE}" yq --no-colors --inplace ".annotations.\"artifacthub.io/prerelease\" = \"true\" | sort_keys(.)" "${CHART_FILE}"
exit 0
fi fi
CHANGE_LOG_YAML="$(mktemp)" CHANGE_LOG_YAML="$(mktemp)"