mirror of https://github.com/ghostfolio/ghostfolio
				
				
			
			You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							50 lines
						
					
					
						
							1.3 KiB
						
					
					
				
			
		
		
		
			
			
			
		
		
	
	
							50 lines
						
					
					
						
							1.3 KiB
						
					
					
				
								name: Docker image CD
							 | 
						|
								
							 | 
						|
								on:
							 | 
						|
								  push:
							 | 
						|
								    tags:
							 | 
						|
								      - '*.*.*'
							 | 
						|
								  pull_request:
							 | 
						|
								    branches:
							 | 
						|
								      - 'main'
							 | 
						|
								
							 | 
						|
								jobs:
							 | 
						|
								  build_and_push:
							 | 
						|
								    runs-on: ubuntu-latest
							 | 
						|
								    steps:
							 | 
						|
								      - name: Checkout code
							 | 
						|
								        uses: actions/checkout@v4
							 | 
						|
								
							 | 
						|
								      - name: Docker metadata
							 | 
						|
								        id: meta
							 | 
						|
								        uses: docker/metadata-action@v4
							 | 
						|
								        with:
							 | 
						|
								          images: ${{ vars.DOCKER_REPOSITORY || 'ghostfolio/ghostfolio' }}
							 | 
						|
								          tags: |
							 | 
						|
								            type=semver,pattern={{major}}
							 | 
						|
								            type=semver,pattern={{version}}            
							 | 
						|
								
							 | 
						|
								      - name: Set up QEMU
							 | 
						|
								        uses: docker/setup-qemu-action@v2
							 | 
						|
								
							 | 
						|
								      - name: Set up Docker Buildx
							 | 
						|
								        id: buildx
							 | 
						|
								        uses: docker/setup-buildx-action@v2
							 | 
						|
								
							 | 
						|
								      - name: Login to DockerHub
							 | 
						|
								        if: github.event_name != 'pull_request'
							 | 
						|
								        uses: docker/login-action@v2
							 | 
						|
								        with:
							 | 
						|
								          username: ${{ secrets.DOCKER_HUB_USERNAME }}
							 | 
						|
								          password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
							 | 
						|
								
							 | 
						|
								      - name: Build and push
							 | 
						|
								        uses: docker/build-push-action@v3
							 | 
						|
								        with:
							 | 
						|
								          context: .
							 | 
						|
								          platforms: linux/amd64,linux/arm/v7,linux/arm64
							 | 
						|
								          push: ${{ github.event_name != 'pull_request' }}
							 | 
						|
								          tags: ${{ steps.meta.outputs.tags }}
							 | 
						|
								          labels: ${{ steps.meta.output.labels }}
							 | 
						|
								          cache-from: type=gha
							 | 
						|
								          cache-to: type=gha,mode=max
							 | 
						|
								
							 |