Implement Simple CI (#1)

This commit is contained in:
Layla 2022-10-26 22:22:28 -04:00 committed by GitHub
parent 9fa4eb31dc
commit 7bdff2fc63
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 66 additions and 2 deletions

42
.github/workflows/publish_release.yaml vendored Normal file
View 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
View 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

View File

@ -2,8 +2,7 @@ PROJECTNAME="Bird Bot"
PROJECT_BIN="birdbot"
# Go related variables.
GOBASE=$(shell pwd)
GOBIN=$(GOBASE)/build
GOBIN=./build
GOFILES=$(wildcard *.go)
# Make is verbose in Linux. Make it silent.