Skip to content

chore: structured logging for servier and user info #821

chore: structured logging for servier and user info

chore: structured logging for servier and user info #821

Workflow file for this run

name: Test and Build
on:
workflow_dispatch:
push:
branches:
- main
tags:
- v*
pull_request:
branches:
- main
env:
REGISTRY: ghcr.io
PLATFORMS: |
linux/amd64
linux/arm64
jobs:
test:
runs-on: ubuntu-22.04
steps:
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.22
- name: Checkout repo
uses: actions/checkout@v3
- name: Lint the codebase
uses: golangci/golangci-lint-action@v3
with:
version: latest
args: -E goimports -E godot --timeout 10m
- name: Run tests
run: |
go test -v ./... -cover -race -coverprofile=coverage.out
go tool cover -func=coverage.out -o=coverage.out
build-main:
runs-on: ubuntu-22.04
needs: test
strategy:
matrix:
APP: [prose, pastes, imgs, pgs, feeds, pubsub]
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Setup docker
uses: ./.github/actions/setup
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Run docker build for ${{ matrix.APP }}
uses: ./.github/actions/build
with:
app: ${{ matrix.APP }}
platforms: ${{ env.PLATFORMS }}
registry: ${{ env.REGISTRY }}
build-auth:
runs-on: ubuntu-22.04
needs: test
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Setup docker
uses: ./.github/actions/setup
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Run docker build for auth
uses: ./.github/actions/build
with:
app: auth
platforms: ${{ env.PLATFORMS }}
registry: ${{ env.REGISTRY }}
ssh: false
build-bouncer:
runs-on: ubuntu-22.04
needs: test
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Get changed files
id: changed-files
uses: tj-actions/changed-files@v40
with:
files: bouncer/**
- name: Setup docker
if: steps.changed-files.outputs.any_changed == 'true'
uses: ./.github/actions/setup
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Collect bouncer image metadata
if: steps.changed-files.outputs.any_changed == 'true'
id: bouncermeta
uses: docker/metadata-action@v4
with:
images: ${{ env.REGISTRY }}/${{ github.repository }}/bouncer
- name: Build and push
if: steps.changed-files.outputs.any_changed == 'true'
uses: docker/build-push-action@v3
with:
context: ./bouncer
push: true
tags: ${{ steps.bouncermeta.outputs.tags }}
labels: ${{ steps.bouncermeta.outputs.labels }}
platforms: ${{ env.PLATFORMS }}
cache-from: type=gha
cache-to: type=gha,mode=max
build-caddy:
runs-on: ubuntu-22.04
needs: test
steps:
- name: Checkout repo
uses: actions/checkout@v3
- name: Get changed files
id: changed-files
uses: tj-actions/changed-files@v40
with:
files: caddy/**
- name: Setup docker
if: steps.changed-files.outputs.any_changed == 'true'
uses: ./.github/actions/setup
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Collect caddy image metadata
if: steps.changed-files.outputs.any_changed == 'true'
id: caddymeta
uses: docker/metadata-action@v4
with:
images: ${{ env.REGISTRY }}/${{ github.repository }}/caddy
- name: Build and push
if: steps.changed-files.outputs.any_changed == 'true'
uses: docker/build-push-action@v3
with:
context: ./caddy
push: true
tags: ${{ steps.caddymeta.outputs.tags }}
labels: ${{ steps.caddymeta.outputs.labels }}
platforms: ${{ env.PLATFORMS }}
cache-from: type=gha
cache-to: type=gha,mode=max