Skip to content

commonsteps: StepDownload timeout override #272

commonsteps: StepDownload timeout override

commonsteps: StepDownload timeout override #272

Workflow file for this run

name: go-test
on:
push:
branches:
- main
pull_request:
branches:
- main
env:
TEST_RESULTS_PATH: /tmp/test-results
permissions:
contents: read
jobs:
linux-tests:
runs-on: ubuntu-latest
strategy:
matrix:
go-version:
- '1.21.x'
- '1.22.x'
permissions:
id-token: write
contents: read
steps:
- name: Setup go
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0.0
with:
go-version: ${{ matrix.go-version }}
- name: Checkout code
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
- name: Check that go.mod does not contain a replace
run: |
if grep -Eq "^\s*replace" <go.mod; then
echo "go.mod contains a replace but should not." >&2
false
fi
- name: Create test directory
run: |
mkdir -p ${{ env.TEST_RESULTS_PATH }}/packer-plugin-sdk
- name: Install buf
uses: bufbuild/buf-setup-action@v1.33.0
- name: Run gofmt
run: |
make fmt-check
- name: Run Go Generate Check
run: |
make generate-check
- name: Install gotestsum
run: go install gotest.tools/gotestsum@v1.8.2
# Required for passing tests as we need to have a replace in the go.mod
# otherwise we'll get compile-time errors when running them
- name: Fix gocty
run: |
make install-gen-deps
packer-sdc fix .
go mod tidy
- name: Run Go tests
run: |
PACKAGE_NAMES="$(go list ./...)"
echo "Running $(echo "$PACKAGE_NAMES" | wc -w) packages"
echo "$PACKAGE_NAMES"
echo "$PACKAGE_NAMES" | xargs -I {} gotestsum --format=short-verbose --junitfile "$TEST_RESULTS_PATH"/packer-plugin-sdk/gotestsum-report.xml -- -count 1 -p 2 {};
windows-tests:
runs-on: windows-latest
strategy:
matrix:
go-version:
- '1.21.x'
- '1.22.x'
permissions:
id-token: write
contents: read
steps:
- name: Run git config #Windows-only
run: git config --global core.autocrlf false
- name: Setup Go
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0.0
with:
go-version: ${{ matrix.go-version }}
- name: Checkout code
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
- name: Install gotestsum
shell: bash
run: go install gotest.tools/gotestsum@v1.8.2
# Required for passing tests as we need to have a replace in the go.mod
# otherwise we'll get compile-time errors when running them
- name: Fix gocty
run: |
make install-gen-deps
packer-sdc fix .
go mod tidy
- name: Run Go tests
shell: bash
run: |
PACKAGE_NAMES="$(go list ./...)"
echo "Running $(echo "$PACKAGE_NAMES" | wc -w) packages"
echo "$PACKAGE_NAMES"
echo "$PACKAGE_NAMES" | xargs -I {} gotestsum --format=short-verbose --junitfile "$TEST_RESULTS_PATH"/packer-plugin-sdk/gotestsum-report.xml -- -count 1 -p 2 {};
darwin-tests:
runs-on: macos-latest
strategy:
matrix:
go-version:
- '1.21.x'
- '1.22.x'
permissions:
id-token: write
contents: read
steps:
- name: Setup go
uses: actions/setup-go@0c52d547c9bc32b1aa3301fd7a9cb496313a4491 # v5.0.0
with:
go-version: ${{ matrix.go-version }}
- name: Checkout code
uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
- name: Create test directory
run: |
mkdir -p ${{ env.TEST_RESULTS_PATH }}/packer-plugin-sdk
- name: Install gotestsum
run: go install gotest.tools/gotestsum@v1.8.2
# Required for passing tests as we need to have a replace in the go.mod
# otherwise we'll get compile-time errors when running them
- name: Fix gocty
run: |
make install-gen-deps
packer-sdc fix .
go mod tidy
- name: Run Go tests
run: |
PACKAGE_NAMES="$(go list ./...)"
echo "Running $(echo "$PACKAGE_NAMES" | wc -w) packages"
echo "$PACKAGE_NAMES"
echo "$PACKAGE_NAMES" | xargs -I {} gotestsum --format=short-verbose --junitfile "$TEST_RESULTS_PATH"/packer-plugin-sdk/gotestsum-report.xml -- -count 1 -p 2 {};