Implement Simple CI (#1)
This commit is contained in:
		
							
								
								
									
										42
									
								
								.github/workflows/publish_release.yaml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								.github/workflows/publish_release.yaml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,42 @@
 | 
			
		||||
name: Publish
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  release:
 | 
			
		||||
    types:
 | 
			
		||||
      - created
 | 
			
		||||
  workflow_dispatch: {}
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  publish:
 | 
			
		||||
    name: Build & Publish
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Set up QEMU
 | 
			
		||||
        uses: docker/setup-qemu-action@v2
 | 
			
		||||
      - name: Set up Docker Buildx
 | 
			
		||||
        uses: docker/setup-buildx-action@v2
 | 
			
		||||
      - name: Checkout
 | 
			
		||||
        uses: actions/checkout@v3
 | 
			
		||||
      - name: Setup Go
 | 
			
		||||
        uses: actions/setup-go@v3
 | 
			
		||||
        with:
 | 
			
		||||
          go-version: '>=1.18.0'
 | 
			
		||||
      - name: Version
 | 
			
		||||
        run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
 | 
			
		||||
      - name: Test
 | 
			
		||||
        run: |
 | 
			
		||||
          make test
 | 
			
		||||
      - name: Build
 | 
			
		||||
        run: |
 | 
			
		||||
          make build
 | 
			
		||||
      - name: Login to Docker Hub
 | 
			
		||||
        uses: docker/login-action@v2
 | 
			
		||||
        with:
 | 
			
		||||
          username: ${{ secrets.DOCKERHUB_USERNAME }}
 | 
			
		||||
          password: ${{ secrets.DOCKERHUB_TOKEN }}
 | 
			
		||||
      - name: Build and push
 | 
			
		||||
        uses: docker/build-push-action@v3
 | 
			
		||||
        with:
 | 
			
		||||
          context: .
 | 
			
		||||
          push: true
 | 
			
		||||
          tags: yeslayla/birdbot:latest,yeslayla/birdbot:${{ env.RELEASE_VERSION }}
 | 
			
		||||
							
								
								
									
										23
									
								
								.github/workflows/validate.yaml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								.github/workflows/validate.yaml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,23 @@
 | 
			
		||||
name: Validate
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  push: {}
 | 
			
		||||
  pull_request: {}
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  publish:
 | 
			
		||||
    name: Test & Build
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Checkout
 | 
			
		||||
        uses: actions/checkout@v3
 | 
			
		||||
      - name: Setup Go
 | 
			
		||||
        uses: actions/setup-go@v3
 | 
			
		||||
        with:
 | 
			
		||||
          go-version: '>=1.18.0'
 | 
			
		||||
      - name: Test
 | 
			
		||||
        run: |
 | 
			
		||||
          make test
 | 
			
		||||
      - name: Build
 | 
			
		||||
        run: |
 | 
			
		||||
          make build
 | 
			
		||||
		Reference in New Issue
	
	Block a user