fix(ci): 使用预处理的小写 owner 替代 lower 函数

GoReleaser 不支持 lower 模板函数,改为:
- 在 GitHub Actions 中预处理小写 owner
- 传递 GITHUB_REPO_OWNER_LOWER 环境变量给 GoReleaser
This commit is contained in:
shaw
2025-12-31 17:25:43 +08:00
parent 9aeef15d1b
commit 3fd9bd4a80
2 changed files with 20 additions and 15 deletions

View File

@@ -129,6 +129,10 @@ jobs:
echo "$TAG_MESSAGE" >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
- name: Set lowercase owner for GHCR
id: lowercase
run: echo "owner=$(echo '${{ github.repository_owner }}' | tr '[:upper:]' '[:lower:]')" >> $GITHUB_OUTPUT
- name: Run GoReleaser
uses: goreleaser/goreleaser-action@v6
with:
@@ -138,6 +142,7 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TAG_MESSAGE: ${{ steps.tag_message.outputs.message }}
GITHUB_REPO_OWNER: ${{ github.repository_owner }}
GITHUB_REPO_OWNER_LOWER: ${{ steps.lowercase.outputs.owner }}
GITHUB_REPO_NAME: ${{ github.event.repository.name }}
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}

View File

@@ -83,7 +83,7 @@ dockers:
goos: linux
goarch: amd64
image_templates:
- "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}-amd64"
- "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}-amd64"
dockerfile: Dockerfile.goreleaser
use: buildx
build_flag_templates:
@@ -96,7 +96,7 @@ dockers:
goos: linux
goarch: arm64
image_templates:
- "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}-arm64"
- "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}-arm64"
dockerfile: Dockerfile.goreleaser
use: buildx
build_flag_templates:
@@ -128,25 +128,25 @@ docker_manifests:
- "{{ .Env.DOCKERHUB_USERNAME }}/sub2api:{{ .Version }}-arm64"
# GHCR manifests (owner must be lowercase)
- name_template: "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}"
- name_template: "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}"
image_templates:
- "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}-amd64"
- "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}-arm64"
- "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}-amd64"
- "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}-arm64"
- name_template: "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:latest"
- name_template: "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:latest"
image_templates:
- "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}-amd64"
- "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}-arm64"
- "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}-amd64"
- "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}-arm64"
- name_template: "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Major }}.{{ .Minor }}"
- name_template: "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Major }}.{{ .Minor }}"
image_templates:
- "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}-amd64"
- "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}-arm64"
- "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}-amd64"
- "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}-arm64"
- name_template: "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Major }}"
- name_template: "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Major }}"
image_templates:
- "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}-amd64"
- "ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}-arm64"
- "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}-amd64"
- "ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}-arm64"
release:
github:
@@ -173,7 +173,7 @@ release:
docker pull {{ .Env.DOCKERHUB_USERNAME }}/sub2api:{{ .Version }}
# GitHub Container Registry
docker pull ghcr.io/{{ lower .Env.GITHUB_REPO_OWNER }}/sub2api:{{ .Version }}
docker pull ghcr.io/{{ .Env.GITHUB_REPO_OWNER_LOWER }}/sub2api:{{ .Version }}
```
**One-line install (Linux):**