Skip to content

[pull] master from ghostunnel:master #148

[pull] master from ghostunnel:master

[pull] master from ghostunnel:master #148

Workflow file for this run

---
name: Test
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
name: Unit tests
strategy:
matrix:
version: [1.24.x]
os: [ubuntu-22.04, ubuntu-24.04, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: ${{ matrix.version }}
id: go
- name: Checkout
uses: actions/checkout@v4
- name: Build binary
run: make ghostunnel
- name: Run tests
run: make unit
integration-linux:
name: Integration tests (Linux)
strategy:
matrix:
version: [1.24]
os: [ubuntu-22.04, ubuntu-24.04]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Run tests
run: GO_VERSION=${{ matrix.version }} make docker-test
- name: Codecov upload
uses: codecov/codecov-action@v5
if: ${{ github.actor != 'dependabot[bot]' }}
with:
files: ./coverage/all.profile
flags: linux
fail_ci_if_error: true
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
integration-darwin:
name: Integration tests (Darwin)
strategy:
matrix:
version: [1.24.x]
os: [macos-latest]
runs-on: ${{ matrix.os }}
steps:
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: ${{ matrix.version }}
id: go
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11.x'
- name: Install gocovmerge
run: go install github.com/wadey/gocovmerge@latest
- name: Checkout
uses: actions/checkout@v4
- name: Run tests
run: make test
- name: Codecov upload
uses: codecov/codecov-action@v5
if: ${{ github.actor != 'dependabot[bot]' }}
with:
files: ./coverage/all.profile
flags: darwin
fail_ci_if_error: true
verbose: true
token: ${{ secrets.CODECOV_TOKEN }}
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}