name: Pull Request on: pull_request: branches: - main jobs: lint: name: Lint runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v7 - name: Set up Go uses: actions/setup-go@v6 with: go-version: '1.25' - name: Run golangci-lint uses: golangci/golangci-lint-action@v9 with: version: latest build: name: Build server runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v7 - name: Set up Go uses: actions/setup-go@v6 with: go-version: '1.25' - name: Download dependencies run: go mod download - name: Build application for ARM64 run: CGO_ENABLED=0 GOOS=linux GOARCH=arm64 go build -o server ./cmd/web/main.go docker: name: Build Docker image runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v7 - name: Set up QEMU uses: docker/setup-qemu-action@v4 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v4 - name: Build Docker image for ARM64 uses: docker/build-push-action@v7 with: context: . platforms: linux/arm64 push: false