Add server TLS settings test case #847
Workflow file for this run
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: build-and-test | |
on: | |
push: | |
branches: [main] | |
tags: | |
- "v[0-9]+.[0-9]+.[0-9]+*" | |
pull_request: | |
types: [opened, synchronize, reopened, labeled, unlabeled] | |
jobs: | |
setup-environment: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v4 | |
- name: Setup Go | |
uses: actions/[email protected] | |
with: | |
go-version: "1.22" | |
- name: Setup Go Environment | |
run: | | |
echo "GOPATH=$(go env GOPATH)" >> $GITHUB_ENV | |
echo "$(go env GOPATH)/bin" >> $GITHUB_PATH | |
- name: Cache Go | |
id: module-cache | |
uses: actions/cache@v4 | |
with: | |
path: /home/runner/go/pkg/mod | |
key: go-pkg-mod-${{ runner.os }}-${{ hashFiles('**/go.mod', '**/go.sum') }} | |
- name: Install dependencies | |
if: steps.module-cache.outputs.cache-hit != 'true' | |
run: make gomoddownload | |
- name: Cache Tools | |
id: tool-cache | |
uses: actions/cache@v4 | |
with: | |
path: /home/runner/go/bin | |
key: tools-${{ runner.os }}-${{ hashFiles('./internal/tools/go.mod') }} | |
- name: Install Tools | |
if: steps.tool-cache.outputs.cache-hit != 'true' | |
run: make install-tools | |
build-and-test: | |
runs-on: ubuntu-latest | |
needs: [setup-environment] | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v4 | |
- name: Setup Go | |
uses: actions/[email protected] | |
with: | |
go-version: "1.22" | |
- name: Setup Go Environment | |
run: | | |
echo "GOPATH=$(go env GOPATH)" >> $GITHUB_ENV | |
echo "$(go env GOPATH)/bin" >> $GITHUB_PATH | |
- name: Cache Go | |
id: module-cache | |
uses: actions/cache@v4 | |
with: | |
path: /home/runner/go/pkg/mod | |
key: go-pkg-mod-${{ runner.os }}-${{ hashFiles('**/go.mod', '**/go.sum') }} | |
- name: Cache Build | |
uses: actions/cache@v4 | |
with: | |
path: /home/runner/.cache/go-build | |
key: go-build-unittest-${{ runner.os }}-${{ hashFiles('**/go.mod', '**/go.sum') }} | |
- name: Go fmt | |
run: | | |
make fmt | |
git diff --exit-code || (echo 'Code base is not Go formatted, please run "make fmt" and commit the changes in this PR.' && exit 1) | |
- name: Build and Test | |
run: make | |
test-coverage: | |
runs-on: ubuntu-latest | |
needs: [setup-environment] | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v4 | |
- name: Setup Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: "1.22" | |
- name: Setup Go Environment | |
run: | | |
echo "GOPATH=$(go env GOPATH)" >> $GITHUB_ENV | |
echo "$(go env GOPATH)/bin" >> $GITHUB_PATH | |
- name: Cache Go | |
id: module-cache | |
uses: actions/cache@v4 | |
with: | |
path: /home/runner/go/pkg/mod | |
key: go-pkg-mod-${{ runner.os }}-${{ hashFiles('**/go.sum') }} | |
- name: Cache Tools | |
id: tool-cache | |
uses: actions/cache@v4 | |
with: | |
path: /home/runner/go/bin | |
key: tools-${{ runner.os }}-${{ hashFiles('./internal/tools/go.mod') }} | |
- name: Cache Build | |
uses: actions/cache@v4 | |
with: | |
path: /home/runner/.cache/go-build | |
key: go-build-coverage-${{ runner.os }}-${{ hashFiles('**/go.sum') }} | |
- name: Run Unit Tests With Coverage | |
run: make test-with-cover | |
- name: Upload coverage report | |
uses: codecov/codecov-action@v5 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
file: ./coverage.out | |
fail_ci_if_error: true | |
verbose: true |