Skip to content

Merge pull request #379 from jaypipes/idiomatic #97

Merge pull request #379 from jaypipes/idiomatic

Merge pull request #379 from jaypipes/idiomatic #97

Workflow file for this run

name: test
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
permissions:
contents: read
# see: https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners
jobs:
# tier-1
# main development platform, gets features first and it's most tested
ubuntu-latest:
runs-on: ubuntu-latest
strategy:
matrix:
go: [ '1.19', '1.20', '1.21']
steps:
- name: harden runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
with:
egress-policy: block
disable-sudo: true
allowed-endpoints: >
github.com:443
api.github.com:443
proxy.github.com:443
proxy.golang.org:443
raw.githubusercontent.com:443
objects.githubusercontent.com:443
proxy.golang.org:443
- name: checkout code
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: setup go
uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1
with:
go-version: ${{ matrix.go }}
- name: run tests
env:
GHW_TESTING_SKIP_BLOCK: "1"
GHW_TESTING_SKIP_GPU: "1"
run: go test -v ./...
ubuntu-2004:
runs-on: ubuntu-20.04
strategy:
matrix:
go: [ '1.18', '1.19']
steps:
- name: harden runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
with:
egress-policy: block
disable-sudo: true
allowed-endpoints: >
github.com:443
api.github.com:443
proxy.github.com:443
proxy.golang.org:443
raw.githubusercontent.com:443
objects.githubusercontent.com:443
proxy.golang.org:443
- name: checkout code
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: setup go
uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1
with:
go-version: ${{ matrix.go }}
- name: run tests
env:
GHW_TESTING_SKIP_BLOCK: "1"
GHW_TESTING_SKIP_GPU: "1"
run: go test -v ./...
windows-2022:
runs-on: windows-2022
strategy:
matrix:
go: [ '1.20', '1.21' ]
steps:
- name: harden runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
with:
egress-policy: block
disable-sudo: true
allowed-endpoints: >
github.com:443
api.github.com:443
proxy.github.com:443
proxy.golang.org:443
raw.githubusercontent.com:443
objects.githubusercontent.com:443
proxy.golang.org:443
- name: checkout code
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: setup go
uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1
with:
go-version: ${{ matrix.go }}
- name: run tests
env:
GHW_TESTING_SKIP_BLOCK: "1"
GHW_TESTING_SKIP_GPU: "1"
GHW_TESTING_SKIP_CPU: "1"
GHW_TESTING_SKIP_MEMORY: "1"
GHW_TESTING_SKIP_HOST: "1"
GHW_TESTING_SKIP_NET: "1"
GHW_TESTING_SKIP_PCI: "1"
GHW_TESTING_SKIP_TOPOLOGY: "1"
run: go test -v ./...
windows-2019:
runs-on: windows-2019
strategy:
matrix:
go: [ '1.19' ]
steps:
- name: harden runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
with:
egress-policy: block
disable-sudo: true
allowed-endpoints: >
github.com:443
api.github.com:443
proxy.github.com:443
proxy.golang.org:443
raw.githubusercontent.com:443
objects.githubusercontent.com:443
proxy.golang.org:443
- name: checkout code
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: setup go
uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1
with:
go-version: ${{ matrix.go }}
- name: run tests
env:
GHW_TESTING_SKIP_BLOCK: "1"
GHW_TESTING_SKIP_GPU: "1"
GHW_TESTING_SKIP_CPU: "1"
GHW_TESTING_SKIP_MEMORY: "1"
GHW_TESTING_SKIP_HOST: "1"
GHW_TESTING_SKIP_NET: "1"
GHW_TESTING_SKIP_PCI: "1"
GHW_TESTING_SKIP_TOPOLOGY: "1"
run: go test -v ./...
# tier-2
# best-effort support, limited to most recent platforms (OS+go)
# NOTE(jaypipes): We currently only support block information on MacOS, and
# the tests have block skipped because we cannot get meaningful information
# about the block devices in the Github Actions Runner virtual machines. So
# this is really just a test of whether the library builds on MacOS 12.
macos-12:
runs-on: macos-12
strategy:
matrix:
go: [ '1.18' ]
steps:
- name: harden runner
uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
with:
egress-policy: block
disable-sudo: true
allowed-endpoints: >
github.com:443
api.github.com:443
proxy.github.com:443
proxy.golang.org:443
raw.githubusercontent.com:443
objects.githubusercontent.com:443
proxy.golang.org:443
- name: checkout code
uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3
- name: setup go
uses: actions/setup-go@fac708d6674e30b6ba41289acaab6d4b75aa0753 # v4.0.1
with:
go-version: ${{ matrix.go }}
- name: run tests
env:
GHW_TESTING_SKIP_BLOCK: "1"
GHW_TESTING_SKIP_CPU: "1"
GHW_TESTING_SKIP_GPU: "1"
GHW_TESTING_SKIP_HOST: "1"
GHW_TESTING_SKIP_MEMORY: "1"
GHW_TESTING_SKIP_NET: "1"
GHW_TESTING_SKIP_PCI: "1"
GHW_TESTING_SKIP_TOPOLOGY: "1"
run: go test -v ./...