add github workflows

This commit is contained in:
aichy126 2022-10-12 17:55:51 +08:00
parent c67c53dbde
commit b130300e20
1 changed files with 72 additions and 0 deletions

72
.github/workflows/build.yml vendored Normal file
View File

@ -0,0 +1,72 @@
name: Build Docker Image
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
REGISTRY: ghcr.io
IMAGE: answerdev/answer
jobs:
build-and-push:
runs-on: ubuntu-latest
permissions:
packages: write
contents: read
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.18
- name: Test
run: go test -v ./...
- name: Test Build
run: go build -v ./...
# 登录到 GitHub Packages 容器仓库
# 注意 secrets.GITHUB_TOKEN 不需要手动添加,直接就可以用
- name: Login to ghcr.io
uses: docker/login-action@v1
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Extract metadata
id: meta
uses: docker/metadata-action@v3
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE }}
- name: Build Img
uses: docker/build-push-action@v3
with:
context: .
file: ./Dockerfile
builder: ${{ steps.buildx.outputs.name }}
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
# - name: build to hub.docker
# run: |
# docker build -t answerdev/answer -f ./Dockerfile .
# - name: Login to hub.docker Registry
# run: docker login --username=${{ secrets.DOCKER_USERNAME }} --password ${{ secrets.DOCKER_PASSWORD }}
# - name: Push Image to hub.docker
# run: |
# docker push answerdev/answer