Some checks failed
		
		
	
	backend / cross (aarch64) (push) Failing after 17s
				
			backend / cross (armhf) (push) Failing after 31s
				
			backend / cross (mips) (push) Failing after 31s
				
			backend / cross (mips64) (push) Failing after 31s
				
			backend / cross (mips64el) (push) Failing after 31s
				
			frontend / build (push) Failing after 32s
				
			backend / cross (arm) (push) Failing after 2m19s
				
			backend / cross (i686) (push) Failing after 1s
				
			backend / cross (mipsel) (push) Failing after 31s
				
			backend / cross (s390x) (push) Failing after 31s
				
			backend / cross (win32) (push) Failing after 31s
				
			backend / cross (x86_64) (push) Failing after 32s
				
			docker / build (push) Failing after 6m14s
				
			
		
			
				
	
	
		
			72 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
name: docker
 | 
						|
 | 
						|
on:
 | 
						|
  push:
 | 
						|
    branches: main
 | 
						|
    tags: ["*"]
 | 
						|
 | 
						|
jobs:
 | 
						|
  build:
 | 
						|
    runs-on: ubuntu-22.04
 | 
						|
    permissions:
 | 
						|
      packages: write
 | 
						|
      contents: read
 | 
						|
    steps:
 | 
						|
      - uses: actions/checkout@v4
 | 
						|
      - name: Install packages
 | 
						|
        run: |
 | 
						|
          sudo apt-get update
 | 
						|
          sudo apt-get install -y autoconf automake build-essential cmake curl file libtool
 | 
						|
      - name: Cross build multi-arch binary
 | 
						|
        run: |
 | 
						|
          mkdir dist
 | 
						|
          for arch in amd64 armv7 arm64 s390x; do
 | 
						|
            env BUILD_TARGET=$arch ./scripts/cross-build.sh
 | 
						|
            [ "$arch" = "armv7" ] && arch="arm" 
 | 
						|
            mkdir -p dist/$arch && cp build/ttyd dist/$arch/ttyd
 | 
						|
          done
 | 
						|
      - uses: docker/setup-qemu-action@v3
 | 
						|
      - uses: docker/setup-buildx-action@v3
 | 
						|
      - uses: docker/login-action@v3
 | 
						|
        with:
 | 
						|
          username: ${{ secrets.DOCKER_HUB_USER }}
 | 
						|
          password: ${{ secrets.DOCKER_HUB_TOKEN }}
 | 
						|
      - uses: docker/login-action@v3
 | 
						|
        with:
 | 
						|
          registry: ghcr.io
 | 
						|
          username: ${{ github.actor }}
 | 
						|
          password: ${{ secrets.GITHUB_TOKEN }}
 | 
						|
      - name: Determine docker tags
 | 
						|
        id: docker_tag
 | 
						|
        run: |
 | 
						|
          case $GITHUB_REF in
 | 
						|
            refs/tags/*)
 | 
						|
              TAG_NAME=${GITHUB_REF#refs/tags/}
 | 
						|
              echo "DOCKER_TAG=tsl0922/ttyd:${TAG_NAME}" >> $GITHUB_ENV
 | 
						|
              echo "ALPINE_TAG=tsl0922/ttyd:${TAG_NAME}-alpine" >> $GITHUB_ENV
 | 
						|
              ;;
 | 
						|
            *)
 | 
						|
              echo "DOCKER_TAG=tsl0922/ttyd:latest" >> $GITHUB_ENV
 | 
						|
              echo "ALPINE_TAG=tsl0922/ttyd:alpine" >> $GITHUB_ENV
 | 
						|
          esac
 | 
						|
      - name: build/push docker image
 | 
						|
        uses: docker/build-push-action@v6
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./Dockerfile
 | 
						|
          platforms: linux/amd64,linux/arm/v7,linux/arm64,linux/s390x
 | 
						|
          push: true
 | 
						|
          tags: |
 | 
						|
            ${{ env.DOCKER_TAG }}
 | 
						|
            ghcr.io/${{ env.DOCKER_TAG }}
 | 
						|
      - name: build/push docker image (alpine)
 | 
						|
        uses: docker/build-push-action@v6
 | 
						|
        with:
 | 
						|
          context: .
 | 
						|
          file: ./Dockerfile.alpine
 | 
						|
          platforms: linux/amd64,linux/arm/v7,linux/arm64,linux/s390x
 | 
						|
          push: true
 | 
						|
          tags: |
 | 
						|
            ${{ env.ALPINE_TAG }}
 | 
						|
            ghcr.io/${{ env.ALPINE_TAG }}
 |