Skip to content

sync/upstream + upgrade/security #25

sync/upstream + upgrade/security

sync/upstream + upgrade/security #25

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.20'
- '1.21.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: Run gofmt
run: |
make fmt-check
- name: Run Go Generate Check
run: |
make generate-check
- name: Install gotestsum
run: go install gotest.tools/[email protected]
# 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.20'
# - '1.21.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/[email protected]
# # 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.20'
# - '1.21.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/[email protected]
# # 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 {};