Merge pull request #2452 from langbot-app/ci/immutable-core-images

ci: publish immutable Core image tags
This commit is contained in:
Hyu
2026-08-21 10:19:58 +08:00
committed by GitHub
+32 -13
View File
@@ -7,23 +7,42 @@ on:
jobs: jobs:
build-dev-image: build-dev-image:
runs-on: ubuntu-latest runs-on: ubuntu-latest
# 如果是tag则跳过
if: ${{ !startsWith(github.ref, 'refs/tags/') }} if: ${{ !startsWith(github.ref, 'refs/tags/') }}
permissions:
contents: read
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@v2 uses: actions/checkout@v4
with: with:
persist-credentials: false persist-credentials: false
- name: Generate Tag - name: Set up Docker Buildx
id: generate_tag uses: docker/setup-buildx-action@v3
- name: Generate image metadata
id: image
shell: bash
run: | run: |
# 获取分支名称,把/替换为- set -euo pipefail
echo ${{ github.ref }} | sed 's/refs\/heads\///g' | sed 's/\//-/g' branch_tag="${GITHUB_REF#refs/heads/}"
echo ::set-output name=tag::$(echo ${{ github.ref }} | sed 's/refs\/heads\///g' | sed 's/\//-/g') branch_tag="${branch_tag//\//-}"
- name: Login to Registry echo "branch_tag=${branch_tag}" >> "$GITHUB_OUTPUT"
run: docker login --username=${{ secrets.DOCKER_USERNAME }} --password ${{ secrets.DOCKER_PASSWORD }} echo "sha_tag=sha-${GITHUB_SHA}" >> "$GITHUB_OUTPUT"
- name: Build Docker Image
run: | - name: Login to Docker Hub
docker buildx create --name mybuilder --use uses: docker/login-action@v3
docker build -t rockchin/langbot:${{ steps.generate_tag.outputs.tag }} . --push with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
- name: Build and push immutable Core image
uses: docker/build-push-action@v6
with:
context: .
push: true
tags: |
rockchin/langbot:${{ steps.image.outputs.branch_tag }}
rockchin/langbot:${{ steps.image.outputs.sha_tag }}
labels: |
org.opencontainers.image.revision=${{ github.sha }}
org.opencontainers.image.source=${{ github.server_url }}/${{ github.repository }}