mirror of
				https://github.com/openimsdk/open-im-server.git
				synced 2025-11-04 19:32:17 +08:00 
			
		
		
		
	* Rename golangci-lint.yml to golangci-lint.bak * Update e2e-test.yml * Update openimci.yml * Rename docker-buildx.yml to docker-buildx.bak
		
			
				
	
	
		
			503 lines
		
	
	
		
			18 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			503 lines
		
	
	
		
			18 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
# Copyright © 2023 OpenIM open source community. All rights reserved.
 | 
						|
#
 | 
						|
# Licensed under the Apache License, Version 2.0 (the "License");
 | 
						|
# you may not use this file except in compliance with the License.
 | 
						|
# You may obtain a copy of the License at
 | 
						|
#
 | 
						|
#     http://www.apache.org/licenses/LICENSE-2.0
 | 
						|
#
 | 
						|
# Unless required by applicable law or agreed to in writing, software
 | 
						|
# distributed under the License is distributed on an "AS IS" BASIS,
 | 
						|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
						|
# See the License for the specific language governing permissions and
 | 
						|
# limitations under the License.
 | 
						|
 | 
						|
name: Docker Buildx Images CI
 | 
						|
 | 
						|
on:
 | 
						|
  schedule:
 | 
						|
  - cron: '30 1 * * *'
 | 
						|
  push:
 | 
						|
    branches:
 | 
						|
      - release-*
 | 
						|
    tags:
 | 
						|
      - v*
 | 
						|
  workflow_dispatch:
 | 
						|
 | 
						|
jobs:
 | 
						|
  build-ghcr:
 | 
						|
    runs-on: ubuntu-latest
 | 
						|
    steps:
 | 
						|
      - name: Checkout
 | 
						|
        uses: actions/checkout@v4
 | 
						|
        
 | 
						|
      - name: Set up QEMU
 | 
						|
        uses: docker/setup-qemu-action@v3
 | 
						|
        
 | 
						|
      - name: Set up Docker Buildx
 | 
						|
        uses: docker/setup-buildx-action@v3
 | 
						|
        with:
 | 
						|
          install: true
 | 
						|
 | 
						|
      - name: Cache Docker layers
 | 
						|
        uses: actions/cache@v4
 | 
						|
        with:
 | 
						|
          path: /tmp/.buildx-cache
 | 
						|
          key: ${{ runner.os }}-buildx-${{ github.sha }}
 | 
						|
          restore-keys: |
 | 
						|
            ${{ runner.os }}-buildx-
 | 
						|
 | 
						|
      - name: Log in to GitHub Container Registry
 | 
						|
        uses: docker/login-action@v3
 | 
						|
        with:
 | 
						|
          registry: ghcr.io
 | 
						|
          username: ${{ github.repository_owner }}
 | 
						|
          password: ${{ secrets.GITHUB_TOKEN }}
 | 
						|
 | 
						|
      - name: Log in to Docker Hub
 | 
						|
        uses: docker/login-action@v3
 | 
						|
        with:
 | 
						|
          username: ${{ secrets.DOCKER_USERNAME }}
 | 
						|
          password: ${{ secrets.DOCKER_PASSWORD }}
 | 
						|
 | 
						|
      - name: Log in to AliYun Docker Hub
 | 
						|
        uses: docker/login-action@v3
 | 
						|
        with:
 | 
						|
          registry: registry.cn-hangzhou.aliyuncs.com
 | 
						|
          username: ${{ secrets.ALIREGISTRY_USERNAME }}
 | 
						|
          password: ${{ secrets.ALIREGISTRY_TOKEN }}
 | 
						|
 | 
						|
################################################
 | 
						|
# build/
 | 
						|
# └── docker
 | 
						|
#     ├── openim-api
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     ├── openim-cmdutils
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     ├── openim-crontask
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     ├── openim-msggateway
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     ├── openim-msgtransfer
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     ├── openim-push
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     ├── openim-rpc-auth
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     ├── openim-rpc-conversation
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     ├── openim-rpc-friend
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     ├── openim-rpc-group
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     ├── openim-rpc-msg
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     ├── openim-rpc-third
 | 
						|
#     │   └── Dockerfile
 | 
						|
#     └── openim-rpc-user
 | 
						|
#         └── Dockerfile
 | 
						|
#############################################
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-api
 | 
						|
        id: meta1
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-api
 | 
						|
            openim/openim-api
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-api
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-api
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-api/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta1.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta1.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-cmdutils
 | 
						|
        id: meta2
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-cmdutils
 | 
						|
            openim/openim-cmdutils
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-cmdutils
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-cmdutils
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-cmdutils/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta2.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta2.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-crontask
 | 
						|
        id: meta3
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-crontask
 | 
						|
            openim/openim-crontask
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-crontask
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-crontask
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-crontask/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta3.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta3.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-msggateway
 | 
						|
        id: meta4
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-msggateway
 | 
						|
            openim/openim-msggateway
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-msggateway
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-msggateway
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-msggateway/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta4.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta4.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-msgtransfer
 | 
						|
        id: meta5
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-msgtransfer
 | 
						|
            openim/openim-msgtransfer
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-msgtransfer
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-msgtransfer
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-msgtransfer/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta5.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta5.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
          
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-push
 | 
						|
        id: meta6
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-push
 | 
						|
            openim/openim-push
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-push
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-push
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-push/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta6.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta6.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-rpc-auth
 | 
						|
        id: meta7
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-rpc-auth
 | 
						|
            openim/openim-rpc-auth
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-rpc-auth
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-rpc-auth
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-rpc-auth/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta7.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta7.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-rpc-conversation
 | 
						|
        id: meta8
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-rpc-conversation
 | 
						|
            openim/openim-rpc-conversation
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-rpc-conversation
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-rpc-conversation
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-rpc-conversation/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta8.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta8.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-rpc-friend
 | 
						|
        id: meta9
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-rpc-friend
 | 
						|
            openim/openim-rpc-friend
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-rpc-friend
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-rpc-friend
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-rpc-friend/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta9.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta9.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-rpc-group
 | 
						|
        id: meta10
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-rpc-group
 | 
						|
            openim/openim-rpc-group
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-rpc-group
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-rpc-group
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-rpc-group/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta10.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta10.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-rpc-msg
 | 
						|
        id: meta11
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-rpc-msg
 | 
						|
            openim/openim-rpc-msg
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-rpc-msg
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-rpc-msg
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-rpc-msg/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta11.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta11.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-rpc-third
 | 
						|
        id: meta12
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-rpc-third
 | 
						|
            openim/openim-rpc-third
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-rpc-third
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-rpc-third
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-rpc-third/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta12.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta12.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 | 
						|
 | 
						|
      - name: Extract metadata (tags, labels) for Docker openim-rpc-user
 | 
						|
        id: meta13
 | 
						|
        uses: docker/metadata-action@v5.5.1
 | 
						|
        with:
 | 
						|
          images: |
 | 
						|
            ghcr.io/openimsdk/openim-rpc-user
 | 
						|
            openim/openim-rpc-user
 | 
						|
            registry.cn-hangzhou.aliyuncs.com/openimsdk/openim-rpc-user
 | 
						|
          tags: |
 | 
						|
            type=ref,event=tag
 | 
						|
            type=schedule
 | 
						|
            type=ref,event=branch
 | 
						|
            type=ref,event=pr
 | 
						|
            type=semver,pattern={{version}}
 | 
						|
            type=semver,pattern=v{{version}}
 | 
						|
            type=semver,pattern={{major}}.{{minor}}
 | 
						|
            type=semver,pattern={{major}}
 | 
						|
            type=sha
 | 
						|
 | 
						|
      - name: Build and push Docker image for openim-rpc-user
 | 
						|
        uses: docker/build-push-action@v5
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./build/images/openim-rpc-user/Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm64
 | 
						|
          push: ${{ github.event_name != 'pull_request' }}
 | 
						|
          tags: ${{ steps.meta13.outputs.tags }}
 | 
						|
          labels: ${{ steps.meta13.outputs.labels }}
 | 
						|
          cache-from: type=local,src=/tmp/.buildx-cache
 | 
						|
          cache-to: type=local,dest=/tmp/.buildx-cache
 |