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
 | |
| 
 |