| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- name: Build Docker Images
- on:
- push:
- tags:
- - v*
- workflow_dispatch:
- inputs:
- tag:
- description: "The tag version you want to build"
- jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - name: Checkout
- uses: actions/checkout@v2
- - name: Setup Docker Buildx
- uses: docker/setup-buildx-action@v1
- - name: Setup QEMU for Docker Buildx
- uses: docker/setup-qemu-action@v2
- - name: Login to GitHub Container Registry
- uses: docker/login-action@v1
- with:
- registry: ghcr.io
- username: ${{ github.repository_owner }}
- password: ${{ secrets.GITHUB_TOKEN }}
- - name: Docker metadata
- id: metadata
- uses: docker/metadata-action@v3
- with:
- images: ghcr.io/sagernet/sing-box
- - name: Get tag to build
- id: tag
- run: |
- echo "latest=ghcr.io/sagernet/sing-box:latest" >> $GITHUB_OUTPUT
- if [[ -z "${{ github.event.inputs.tag }}" ]]; then
- echo "versioned=ghcr.io/sagernet/sing-box:${{ github.ref_name }}" >> $GITHUB_OUTPUT
- else
- echo "versioned=ghcr.io/sagernet/sing-box:${{ github.event.inputs.tag }}" >> $GITHUB_OUTPUT
- fi
- - name: Build and release Docker images
- uses: docker/build-push-action@v2
- with:
- platforms: linux/386,linux/amd64,linux/arm64,linux/s390x
- target: dist
- tags: |
- ${{ steps.tag.outputs.latest }}
- ${{ steps.tag.outputs.versioned }}
- push: true
|