Build container image by GitHub Actions (#16973)
* Build container image by GitHub Actions * Trigger docker build only pushed to main branch * Tweak tagging imgae - "edge" is the main branch - "latest" is the tagged latest release
This commit is contained in:
		
							
								
								
									
										34
									
								
								.github/workflows/build-image.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								.github/workflows/build-image.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,34 @@
 | 
			
		||||
name: Build container image
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches:
 | 
			
		||||
      - "main"
 | 
			
		||||
    tags:
 | 
			
		||||
      - "*"
 | 
			
		||||
jobs:
 | 
			
		||||
  build-image:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      - uses: actions/checkout@v2
 | 
			
		||||
      - uses: docker/setup-buildx-action@v1
 | 
			
		||||
      - uses: docker/login-action@v1
 | 
			
		||||
        with:
 | 
			
		||||
          registry: ghcr.io
 | 
			
		||||
          username: ${{ github.repository_owner }}
 | 
			
		||||
          password: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
      - uses: docker/metadata-action@v3
 | 
			
		||||
        id: meta
 | 
			
		||||
        with:
 | 
			
		||||
          images: ghcr.io/${{ github.repository_owner }}/mastodon
 | 
			
		||||
          flavor: |
 | 
			
		||||
            latest=true
 | 
			
		||||
          tags: |
 | 
			
		||||
            type=edge,branch=main
 | 
			
		||||
            type=semver,pattern={{ raw }}
 | 
			
		||||
      - uses: docker/build-push-action@v2
 | 
			
		||||
        with:
 | 
			
		||||
          context: .
 | 
			
		||||
          push: true
 | 
			
		||||
          tags: ${{ steps.meta.outputs.tags }}
 | 
			
		||||
          cache-from: type=registry,ref=ghcr.io/${{ github.repository_owner }}/mastodon:latest
 | 
			
		||||
          cache-to: type=inline
 | 
			
		||||
		Reference in New Issue
	
	Block a user