mirror of
https://github.com/actions/setup-go.git
synced 2026-06-23 14:59:27 +08:00
7c2cf045f5
Bumps [actions/checkout](https://github.com/actions/checkout) from 6 to 7. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
144 lines
3.7 KiB
YAML
144 lines
3.7 KiB
YAML
name: Validate Microsoft build of Go
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
paths-ignore:
|
|
- '**.md'
|
|
pull_request:
|
|
paths-ignore:
|
|
- '**.md'
|
|
|
|
jobs:
|
|
microsoft-basic:
|
|
name: 'Microsoft build of Go ${{ matrix.go-version }} on ${{ matrix.os }}'
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-latest, windows-latest, macos-latest]
|
|
go-version: ['1.25', '1.24']
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
|
|
- name: Setup Microsoft build of Go ${{ matrix.go-version }}
|
|
uses: ./
|
|
with:
|
|
go-version: ${{ matrix.go-version }}
|
|
go-download-base-url: 'https://aka.ms/golang/release/latest'
|
|
cache: false
|
|
|
|
- name: Verify Go installation
|
|
run: go version
|
|
|
|
- name: Verify Go env
|
|
run: go env
|
|
|
|
- name: Verify Go is functional
|
|
shell: bash
|
|
run: |
|
|
# Create a simple Go program and run it
|
|
mkdir -p /tmp/test-go && cd /tmp/test-go
|
|
cat > main.go << 'EOF'
|
|
package main
|
|
import "fmt"
|
|
func main() {
|
|
fmt.Println("Hello from Microsoft build of Go!")
|
|
}
|
|
EOF
|
|
go run main.go
|
|
|
|
microsoft-env-var:
|
|
name: 'Microsoft build of Go via env var on ${{ matrix.os }}'
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-latest, windows-latest, macos-latest]
|
|
env:
|
|
GO_DOWNLOAD_BASE_URL: 'https://aka.ms/golang/release/latest'
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
|
|
- name: Setup Microsoft build of Go via environment variable
|
|
uses: ./
|
|
with:
|
|
go-version: '1.25'
|
|
cache: false
|
|
|
|
- name: Verify Go installation
|
|
run: go version
|
|
|
|
- name: Verify Go is functional
|
|
shell: bash
|
|
run: |
|
|
mkdir -p /tmp/test-go && cd /tmp/test-go
|
|
cat > main.go << 'EOF'
|
|
package main
|
|
import "fmt"
|
|
func main() {
|
|
fmt.Println("Hello from Microsoft build of Go via env var!")
|
|
}
|
|
EOF
|
|
go run main.go
|
|
|
|
microsoft-architecture:
|
|
name: 'Microsoft build of Go arch ${{ matrix.architecture }} on ${{ matrix.os }}'
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-latest, macos-latest]
|
|
architecture: [x64]
|
|
include:
|
|
- os: macos-latest
|
|
architecture: arm64
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
|
|
- name: Setup Microsoft build of Go with architecture
|
|
uses: ./
|
|
with:
|
|
go-version: '1.25'
|
|
go-download-base-url: 'https://aka.ms/golang/release/latest'
|
|
architecture: ${{ matrix.architecture }}
|
|
cache: false
|
|
|
|
- name: Verify Go installation
|
|
run: go version
|
|
|
|
microsoft-with-cache:
|
|
name: 'Microsoft build of Go with caching on ${{ matrix.os }}'
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-latest, windows-latest, macos-latest]
|
|
steps:
|
|
- uses: actions/checkout@v7
|
|
|
|
- name: Setup Microsoft build of Go with caching
|
|
uses: ./
|
|
with:
|
|
go-version: '1.25'
|
|
go-download-base-url: 'https://aka.ms/golang/release/latest'
|
|
cache: true
|
|
|
|
- name: Verify Go installation
|
|
run: go version
|
|
|
|
- name: Verify Go is functional
|
|
shell: bash
|
|
run: |
|
|
mkdir -p /tmp/test-go && cd /tmp/test-go
|
|
go mod init test
|
|
cat > main.go << 'EOF'
|
|
package main
|
|
import "fmt"
|
|
func main() {
|
|
fmt.Println("Hello from cached Microsoft build of Go!")
|
|
}
|
|
EOF
|
|
go run main.go
|