short-circuit for && and || operators #140
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: Checks | |
on: | |
push: | |
workflow_dispatch: | |
pull_request: | |
jobs: | |
unit_tests: | |
strategy: | |
matrix: | |
include: | |
- runs-on: ubuntu-latest | |
target: linux_amd64 | |
- runs-on: windows-latest | |
target: windows_amd64 | |
- runs-on: macos-latest | |
target: darwin_amd64 | |
fail-fast: false | |
name: "Unit Tests on ${{ matrix.target }}" | |
runs-on: "${{ matrix.runs-on }}" | |
steps: | |
- name: "Disable git crlf conversions" | |
if: ${{ runner.os == 'Windows' }} | |
# HCL preserves the input line endings when processing a heredoc, | |
# and our tests for heredocs are written to expect the result for | |
# the source code as checked in to the repository, so git's normal | |
# tampering with the line endings would invalidate those tests. | |
run: | | |
git config --global core.autocrlf false | |
- name: "Fetch source code" | |
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 | |
- name: Install Go | |
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2 | |
with: | |
go-version-file: go.mod | |
- name: Go test | |
run: | | |
go test ./... -race | |
copyright: | |
name: "copyright headers" | |
runs-on: ubuntu-latest | |
steps: | |
- name: "Fetch source code" | |
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 | |
- name: Install Go | |
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2 | |
with: | |
go-version-file: go.mod | |
- name: "copyright headers check" | |
run: | | |
make copyrightcheck | |
govet: | |
name: "go vet" | |
runs-on: ubuntu-latest | |
steps: | |
- name: "Fetch source code" | |
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 | |
- name: Install Go | |
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2 | |
with: | |
go-version-file: go.mod | |
- name: "go vet" | |
run: | | |
make vetcheck | |
gofmt: | |
name: "gofmt" | |
runs-on: ubuntu-latest | |
steps: | |
- name: "Fetch source code" | |
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 | |
- name: Install Go | |
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2 | |
with: | |
go-version-file: go.mod | |
- name: "gofmt" | |
run: | | |
make fmtcheck |