* Update workflows and bump dependencies * Add test for Go 1.22 and 1.23 * Update Go versions in local-cache setup and include macos-latest with ARM64 architecture
		
			
				
	
	
		
			210 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			210 lines
		
	
	
		
			5.1 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| name: Validate 'setup-go'
 | |
| 
 | |
| on:
 | |
|   push:
 | |
|     branches:
 | |
|       - main
 | |
|     paths-ignore:
 | |
|       - '**.md'
 | |
|   pull_request:
 | |
|     paths-ignore:
 | |
|       - '**.md'
 | |
|   schedule:
 | |
|     - cron: 0 0 * * *
 | |
| 
 | |
| jobs:
 | |
|   stable:
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
 | |
|     steps:
 | |
|       - uses: actions/checkout@v4
 | |
|       - name: Setup Go Stable
 | |
|         uses: ./
 | |
|         with:
 | |
|           go-version: stable
 | |
|       - name: Verify Go
 | |
|         run: go version
 | |
| 
 | |
|   oldstable:
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
 | |
|     steps:
 | |
|       - uses: actions/checkout@v4
 | |
|       - name: Setup Go oldStable
 | |
|         uses: ./
 | |
|         with:
 | |
|           go-version: oldstable
 | |
|       - name: Verify Go
 | |
|         run: go version
 | |
| 
 | |
|   aliases-arch:
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
 | |
|         version: [stable, oldstable]
 | |
|         architecture: [x64, x32]
 | |
|         exclude:
 | |
|           - os: macos-latest
 | |
|             architecture: x32
 | |
|           - os: macos-13
 | |
|             architecture: x32
 | |
|     steps:
 | |
|       - uses: actions/checkout@v4
 | |
|       - name: Setup Go ${{ matrix.version }} ${{ matrix.architecture }}
 | |
|         uses: ./
 | |
|         with:
 | |
|           go-version: ${{ matrix.version }}
 | |
|           architecture: ${{ matrix.architecture }}
 | |
|       - name: Verify Go
 | |
|         run: go version
 | |
| 
 | |
|   local-cache:
 | |
|     name: Setup local-cache version
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [macos-latest, windows-latest, ubuntu-latest, macos-13]
 | |
|         go: [1.21.13, 1.22.8, 1.23.2]
 | |
|         include:
 | |
|           - os: windows-latest
 | |
|             go: 1.20.14
 | |
|         exclude:
 | |
|           - os: windows-latest
 | |
|             go: 1.23.2
 | |
|     steps:
 | |
|       - name: Checkout
 | |
|         uses: actions/checkout@v4
 | |
| 
 | |
|       - name: setup-go ${{ matrix.go }}
 | |
|         uses: ./
 | |
|         with:
 | |
|           go-version: ${{ matrix.go }}
 | |
| 
 | |
|       - name: verify go
 | |
|         run: __tests__/verify-go.sh ${{ matrix.go }}
 | |
|         shell: bash
 | |
| 
 | |
|   check-latest:
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
 | |
|         go-version: ['1.20', '1.21', '1.22', '1.23']
 | |
|     steps:
 | |
|       - uses: actions/checkout@v4
 | |
|       - name: Setup Go and check latest
 | |
|         uses: ./
 | |
|         with:
 | |
|           go-version: ${{ matrix.go-version }}
 | |
|           check-latest: true
 | |
|       - name: Verify Go
 | |
|         run: go version
 | |
| 
 | |
|   go-version-file:
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
 | |
|     steps:
 | |
|       - uses: actions/checkout@v4
 | |
|       - name: Setup Go and check latest
 | |
|         uses: ./
 | |
|         with:
 | |
|           go-version-file: __tests__/data/go.mod
 | |
|       - name: verify go
 | |
|         run: __tests__/verify-go.sh 1.20.14
 | |
|         shell: bash
 | |
| 
 | |
|   go-version-file-with-gowork:
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
 | |
|     steps:
 | |
|       - uses: actions/checkout@v4
 | |
|       - name: Setup Go and check latest
 | |
|         uses: ./
 | |
|         with:
 | |
|           go-version-file: __tests__/data/go.work
 | |
|       - name: verify go
 | |
|         run: __tests__/verify-go.sh 1.21
 | |
|         shell: bash
 | |
| 
 | |
|   setup-versions-from-manifest:
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [macos-latest, windows-latest, ubuntu-latest, macos-13]
 | |
|         go: [1.20.14, 1.21.10, 1.22.8, 1.23.2]
 | |
|     steps:
 | |
|       - name: Checkout
 | |
|         uses: actions/checkout@v4
 | |
| 
 | |
|       - name: setup-go ${{ matrix.go }}
 | |
|         uses: ./
 | |
|         with:
 | |
|           go-version: ${{ matrix.go }}
 | |
| 
 | |
|       - name: verify go
 | |
|         run: __tests__/verify-go.sh ${{ matrix.go }}
 | |
|         shell: bash
 | |
| 
 | |
|   setup-versions-from-dist:
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [windows-latest, ubuntu-latest, macos-13]
 | |
|         go: [1.11.12]
 | |
|     steps:
 | |
|       - name: Checkout
 | |
|         uses: actions/checkout@v4
 | |
| 
 | |
|       - name: setup-go ${{ matrix.go }}
 | |
|         uses: ./
 | |
|         with:
 | |
|           go-version: ${{ matrix.go }}
 | |
| 
 | |
|       - name: verify go
 | |
|         run: __tests__/verify-go.sh ${{ matrix.go }}
 | |
|         shell: bash
 | |
| 
 | |
|   architecture:
 | |
|     runs-on: ${{ matrix.os }}
 | |
|     strategy:
 | |
|       fail-fast: false
 | |
|       matrix:
 | |
|         os: [ubuntu-latest, windows-latest, macos-latest, macos-13]
 | |
|         go-version: [1.20.14, 1.21, 1.22, 1.23]
 | |
|         include:
 | |
|           - os: macos-latest
 | |
|             architecture: arm64
 | |
|           - os: ubuntu-latest
 | |
|             architecture: x64
 | |
|           - os: windows-latest
 | |
|             architecture: x64
 | |
|           - os: macos-13
 | |
|             architecture: x64
 | |
|     steps:
 | |
|       - uses: actions/checkout@v4
 | |
|       - name: Setup Go and check latest
 | |
|         uses: ./
 | |
|         with:
 | |
|           go-version: ${{ matrix.go-version }}
 | |
|           architecture: ${{ matrix.architecture }}
 | |
|       - name: Verify Go
 | |
|         run: go version
 |