Merge pull request #6 from PyratLabs/fix/dockerfile-actions #39
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: CI | |
'on': | |
push: | |
branches: | |
- main | |
tags: | |
- "v*.*.*" | |
pull_request: | |
branches: | |
- main | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: '1.20.0' | |
- name: Install dependencies | |
run: | | |
go version | |
go mod download | |
- name: Run build | |
run: go build . | |
- name: Run vet | |
run: | | |
go vet . | |
# Tests not yet written | |
# - name: Run testing | |
# run: cd test && go test -v | |
deploy: | |
runs-on: ubuntu-latest | |
needs: [build] | |
if: startsWith(github.ref, 'refs/tags/') | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Setup Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: '1.20.0' | |
- name: Run build | |
run: make all | |
- name: Set build variables | |
id: variables | |
env: | |
GITHUB_ORG: ${{ github.repository_owner }} | |
run: | | |
echo ::set-output name=version::$(echo ${GITHUB_REF} | cut -d / -f 3) | |
echo ::set-output name=owner::$(echo ${GITHUB_ORG,,}) | |
- name: Set up QEMU | |
uses: docker/setup-qemu-action@v1 | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v1 | |
- name: Login to DockerHub | |
uses: docker/login-action@v1 | |
with: | |
username: ${{ steps.variables.outputs.owner }} | |
password: ${{ secrets.DOCKERHUB_TOKEN }} | |
- name: Build and push container image | |
uses: docker/build-push-action@v2 | |
with: | |
context: . | |
push: true | |
tags: ${{ steps.variables.outputs.owner }}/vault-dump:latest,${{ steps.variables.outputs.owner }}/vault-dump:${{ steps.variables.outputs.version }} | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
with: | |
files: | | |
LICENSE | |
build/* |