Files
hamview-receiver/.gitea/workflows/build.yaml
maze cafb1b1ac5
Some checks failed
Test and build / test (push) Successful in 2m4s
Test and build / Build (push) Has been cancelled
Bypass loadbalancer for registry push
2026-02-23 16:49:13 +01:00

90 lines
2.7 KiB
YAML

name: Test and build
on:
push:
permissions:
contents: read
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version-file: 'go.mod'
check-latest: false
- name: Lint
uses: golangci/golangci-lint-action@v9
with:
go-version: ${{ matrix.go }}
version: v2.6
build:
name: Build
runs-on: ubuntu-latest
needs: test
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Setup Go
uses: actions/setup-go@v6
with:
go-version-file: 'go.mod'
check-latest: false
- name: Download modules
run: go mod download
- name: Make build directory
run: mkdir -p build && readlink -f build
- name: Build amd64
env:
GOOS: linux
GOARCH: amd64
run: |
GOOS=$GOOS GOARCH=$GOARCH go build -o build/hamview-receiver-$GOARCH . && readlink -f build/hamview-receiver-$GOARCH
- name: Build arm6
env:
GOOS: linux
GOARCH: arm
GOARM: 6
run: |
GOOS=$GOOS GOARCH=$GOARCH GOARM=$GOARM go build -o build/hamview-receiver-$GOARCH$GOARM . && readlink -f build/hamview-receiver-$GOARCH$GOARM
- name: Build arm7
env:
GOOS: linux
GOARCH: arm
GOARM: 7
run: |
GOOS=$GOOS GOARCH=$GOARCH GOARM=$GOARM go build -o build/hamview-receiver-$GOARCH$GOARM . && readlink -f build/hamview-receiver-$GOARCH$GOARM
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Log into Docker Container Registry
uses: docker/login-action@v3
with:
username: ${{ vars.DOCKER_USER }}
password: ${{ secrets.DOCKER_TOKEN }}
- name: Log into Gitea Container Registry
uses: docker/login-action@v3
with:
registry: ${{ vars.REGISTRY }}
username: ${{ vars.DEPLOY_USER }}
password: ${{ secrets.DEPLOY_TOKEN }}
- name: Log into Gitea Container Registry (internal)
uses: docker/login-action@v3
with:
registry: ${{ vars.REGISTRY_PRIVATE }}
username: ${{ vars.DEPLOY_USER }}
password: ${{ secrets.DEPLOY_TOKEN }}
- name: Build and push receiver container
uses: docker/build-push-action@v6
with:
push: true
tags: ${{ vars.REGISTRY_PRIVATE }}/ham/hamview-receiver:latest
context: .
platforms: |
linux/amd64
linux/arm/v6
linux/arm/v7