mirror of
				https://github.com/dockur/windows.git
				synced 2025-10-30 12:45:48 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			113 lines
		
	
	
	
		
			3.3 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			113 lines
		
	
	
	
		
			3.3 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| name: Build
 | |
| 
 | |
| on:
 | |
|   workflow_dispatch:
 | |
|   push:
 | |
|     branches:
 | |
|       - master
 | |
|     paths-ignore:
 | |
|       - '**/*.md'
 | |
|       - '**/*.yml'
 | |
|       - '.gitignore'
 | |
|       - '.dockerignore'
 | |
|       - '.github/**'
 | |
|       - '.github/workflows/**'
 | |
| 
 | |
| concurrency:
 | |
|   group: build
 | |
|   cancel-in-progress: false
 | |
| 
 | |
| jobs:
 | |
|   shellcheck:
 | |
|     name: Test
 | |
|     uses: ./.github/workflows/check.yml
 | |
|   build:
 | |
|     name: Build
 | |
|     needs: shellcheck
 | |
|     runs-on: ubuntu-latest
 | |
|     permissions:
 | |
|       actions: write
 | |
|       packages: write
 | |
|       contents: read
 | |
|     steps:
 | |
|       -
 | |
|         name: Checkout
 | |
|         uses: actions/checkout@v4
 | |
|         with:
 | |
|           fetch-depth: 0
 | |
|       -
 | |
|         name: Docker metadata
 | |
|         id: meta
 | |
|         uses: docker/metadata-action@v5
 | |
|         with:
 | |
|           context: git
 | |
|           images: |
 | |
|             ${{ secrets.DOCKERHUB_REPO }}
 | |
|             ghcr.io/${{ github.repository }}
 | |
|           tags: |
 | |
|             type=raw,value=latest,priority=100
 | |
|             type=raw,value=${{ vars.MAJOR }}.${{ vars.MINOR }}
 | |
|           labels: |
 | |
|             org.opencontainers.image.title=${{ vars.NAME }}
 | |
|         env:
 | |
|           DOCKER_METADATA_ANNOTATIONS_LEVELS: manifest,index     
 | |
|       - 
 | |
|         name: Set up Docker Buildx
 | |
|         uses: docker/setup-buildx-action@v3
 | |
|       -
 | |
|         name: Login into Docker Hub
 | |
|         uses: docker/login-action@v3
 | |
|         with:
 | |
|           username: ${{ secrets.DOCKERHUB_USERNAME }}
 | |
|           password: ${{ secrets.DOCKERHUB_TOKEN }}
 | |
|       -
 | |
|         name: Login to GitHub Container Registry
 | |
|         uses: docker/login-action@v3
 | |
|         with:
 | |
|           registry: ghcr.io
 | |
|           username: ${{ github.actor }}
 | |
|           password: ${{ secrets.GITHUB_TOKEN }}
 | |
|       -
 | |
|         name: Build Docker image
 | |
|         uses: docker/build-push-action@v5
 | |
|         with:
 | |
|           context: .
 | |
|           push: true
 | |
|           provenance: false
 | |
|           platforms: linux/amd64,linux/arm64
 | |
|           tags: ${{ steps.meta.outputs.tags }}
 | |
|           labels: ${{ steps.meta.outputs.labels }}
 | |
|           annotations: ${{ steps.meta.outputs.annotations }}
 | |
|           build-args: |
 | |
|             VERSION_ARG=${{ steps.meta.outputs.version }}
 | |
|       -
 | |
|         name: Create a release
 | |
|         uses: action-pack/github-release@v2
 | |
|         with:
 | |
|           tag: "v${{ steps.meta.outputs.version }}"
 | |
|           title: "v${{ steps.meta.outputs.version }}"
 | |
|           token: ${{ secrets.REPO_ACCESS_TOKEN }}
 | |
|       -
 | |
|         name: Increment version variable
 | |
|         uses: action-pack/bump@v2
 | |
|         with:
 | |
|           token: ${{ secrets.REPO_ACCESS_TOKEN }}
 | |
|       -
 | |
|         name: Push to Gitlab mirror
 | |
|         uses: action-pack/gitlab-sync@v3
 | |
|         with:
 | |
|           url: ${{ secrets.GITLAB_URL }}
 | |
|           token: ${{ secrets.GITLAB_TOKEN }}
 | |
|           username: ${{ secrets.GITLAB_USERNAME }}
 | |
|       -
 | |
|         name: Send mail
 | |
|         uses: action-pack/send-mail@v1
 | |
|         with:
 | |
|           to: ${{secrets.MAILTO}}
 | |
|           from: Github Actions <${{secrets.MAILTO}}>
 | |
|           connection_url: ${{secrets.MAIL_CONNECTION}}
 | |
|           subject: Build of ${{ github.event.repository.name }} v${{ steps.meta.outputs.version }} completed
 | |
|           body: |
 | |
|               The build job of ${{ github.event.repository.name }} v${{ steps.meta.outputs.version }} was completed successfully! 
 | |
|               
 | |
|               See https://github.com/${{ github.repository }}/actions for more information.
 | 
