This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
name: build
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- '**'
|
||||
tags:
|
||||
- '**'
|
||||
|
||||
jobs:
|
||||
Go-Build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Set VERSION env var
|
||||
run: |
|
||||
SANITIZED_REF_NAME=${GITHUB_REF_NAME//\//-}
|
||||
|
||||
if [[ "$GITHUB_REF_TYPE" == "tag" ]]; then
|
||||
VERSION="$SANITIZED_REF_NAME"
|
||||
else
|
||||
VERSION="$SANITIZED_REF_NAME-${GITHUB_SHA::10}"
|
||||
fi
|
||||
|
||||
echo "$VERSION"
|
||||
echo "VERSION=$VERSION" >> "$GITHUB_ENV"''
|
||||
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v5
|
||||
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v6
|
||||
with:
|
||||
go-version: '^1.24.9'
|
||||
|
||||
- name: Download Dependencies
|
||||
run: go mod download
|
||||
|
||||
- name: Build linux-amd64
|
||||
run: GOOS=linux GOARCH=amd64 go build -v -o out/outfit-voting-abi26_linux-amd64-${{ env.VERSION }} ./cmd
|
||||
|
||||
- name: Build linux-arm64
|
||||
run: GOOS=linux GOARCH=arm64 go build -v -o out/outfit-voting-abi26_linux-arm64-${{ env.VERSION }} ./cmd
|
||||
|
||||
- name: Build win-amd64
|
||||
run: GOOS=windows GOARCH=amd64 go build -v -o out/outfit-voting-abi26_win-amd64-${{ env.VERSION }}.exe ./cmd
|
||||
|
||||
- name: Build darwin-amd64
|
||||
run: GOOS=darwin GOARCH=amd64 go build -v -o out/outfit-voting-abi26_darwin-amd64-${{ env.VERSION }} ./cmd
|
||||
|
||||
- name: Build darwin-arm64
|
||||
run: GOOS=darwin GOARCH=arm64 go build -v -o out/outfit-voting-abi26_darwin-arm64-${{ env.VERSION }} ./cmd
|
||||
|
||||
- name: Upload artifact
|
||||
uses: christopherhx/gitea-upload-artifact@v4
|
||||
with:
|
||||
name: artifacts
|
||||
path: out
|
||||
@@ -0,0 +1,46 @@
|
||||
name: docker
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- '**'
|
||||
|
||||
jobs:
|
||||
docker:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Set VERSION env var
|
||||
run: |
|
||||
SANITIZED_REF_NAME=${GITHUB_REF_NAME//\//-}
|
||||
|
||||
if [[ "$GITHUB_REF_TYPE" == "tag" ]]; then
|
||||
VERSION="$SANITIZED_REF_NAME"
|
||||
else
|
||||
VERSION="$SANITIZED_REF_NAME-${GITHUB_SHA::10}"
|
||||
fi
|
||||
|
||||
echo "$VERSION"
|
||||
echo "VERSION=$VERSION" >> "$GITHUB_ENV"''
|
||||
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ vars.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
push: true
|
||||
platforms: |
|
||||
linux/amd64
|
||||
linux/arm64/v8
|
||||
tags: |
|
||||
tueem/outfit-voting-abi26:${{ env.VERSION }}
|
||||
tueem/outfit-voting-abi26:latest
|
||||
Reference in New Issue
Block a user