Compare commits
82 Commits
add-codeow
...
main
Author | SHA1 | Date |
---|---|---|
wyang | b45ec15d40 | 2 years ago |
yangwang | 719fde58e3 | 2 years ago |
yangwang | 686ecfacea | 2 years ago |
github-actions[bot] | 797449dd8e | 2 years ago |
github-actions[bot] | b27d67b686 | 2 years ago |
github-actions[bot] | 476ac2a1cb | 2 years ago |
github-actions[bot] | 4fbaddfe63 | 2 years ago |
github-actions[bot] | 244f8fdaff | 2 years ago |
Ivan | f999e556e9 | 2 years ago |
github-actions[bot] | 2f4bcf5e73 | 2 years ago |
Marko Zivic | 8666f92fad | 2 years ago |
Evgenii Korolevskii | 9ea2b986ed | 2 years ago |
Marko Zivic | 1a111f3e5c | 2 years ago |
MaksimZhukov | 1e50d2d968 | 2 years ago |
github-actions[bot] | c9ed2f9d11 | 2 years ago |
MaksimZhukov | e997e9e934 | 2 years ago |
github-actions[bot] | dca364fcdb | 2 years ago |
Marko Zivic | 8b01adb6c0 | 2 years ago |
Service account | 4c9c326cab | 2 years ago |
github-actions[bot] | 7fbc001811 | 2 years ago |
Marko Zivic | acce0a295a | 2 years ago |
github-actions[bot] | db588f6323 | 2 years ago |
github-actions[bot] | c3a220ac09 | 2 years ago |
github-actions[bot] | 58362e99d6 | 2 years ago |
github-actions[bot] | 82e37a11c9 | 3 years ago |
github-actions[bot] | 57ea5543a0 | 3 years ago |
Marko Zivic | 6ac541a152 | 3 years ago |
Service account | 710d16ce77 | 3 years ago |
aloviedo | a9a1e21f04 | 3 years ago |
Ethan Chiu | b591576203 | 3 years ago |
Ethan Chiu | b97793e13e | 3 years ago |
Brian Cristante | b844ed6c6d | 3 years ago |
Service account | 8a0545cb70 | 3 years ago |
Brian Cristante | 34306dce78 | 3 years ago |
Ethan Chiu | 2e49d3e53d | 3 years ago |
Ethan Chiu | c18c2ac1ac | 3 years ago |
github-actions[bot] | b2fe27c0b9 | 3 years ago |
github-actions[bot] | c27e49f619 | 3 years ago |
github-actions[bot] | 9d9bd2c789 | 3 years ago |
github-actions[bot] | 017e64abe3 | 3 years ago |
github-actions[bot] | dfb38cff48 | 3 years ago |
Nikolay Frolov | 4e55ba98df | 3 years ago |
MaksimZhukov | 6e78c4b835 | 3 years ago |
Service account | 6ab1ee80cb | 3 years ago |
MaksimZhukov | 6712407a7f | 3 years ago |
Nikolay Frolov | 91c89f70d1 | 3 years ago |
MaksimZhukov | 13c5817e5c | 3 years ago |
Yuriy-Kukushkin | 38f14f667d | 3 years ago |
Yuriy-Kukushkin | 5735a29e98 | 3 years ago |
MaksimZhukov | 25beb00b9f | 3 years ago |
Service account | 260b2b7fbc | 3 years ago |
Yuriy-Kukushkin | 187f998b00 | 3 years ago |
Yuriy-Kukushkin | 7dad0a857d | 3 years ago |
Yuriy-Kukushkin | bf5a404e5b | 3 years ago |
Yuriy-Kukushkin | 307dc6197a | 3 years ago |
MaksimZhukov | 868a8c05e8 | 3 years ago |
Nikita Bykov | df37e8bf8f | 3 years ago |
Nikita Bykov | b895c36713 | 3 years ago |
Nikita Bykov | d0f2864c56 | 3 years ago |
Nikita Bykov | c8892db080 | 3 years ago |
Nikita Bykov | dc914fd71a | 3 years ago |
github-actions[bot] | 293cbf311d | 3 years ago |
MaksimZhukov | 090a19ca59 | 3 years ago |
Service account | 00a50d6501 | 3 years ago |
github-actions[bot] | 562bf9fcb9 | 3 years ago |
Alena Sviridenko | 8ad5091061 | 4 years ago |
Service account | f18d1622a0 | 4 years ago |
Alena Sviridenko | e891add10b | 4 years ago |
Service account | 2021212951 | 4 years ago |
Alena Sviridenko | 814ab7ec6d | 4 years ago |
Service account | 68009643bb | 4 years ago |
MaksimZhukov | 9291170abe | 4 years ago |
Service account | ed61881ea7 | 4 years ago |
Maxim Lobanov | 15cbc5916e | 4 years ago |
Service account | 0e28055e56 | 4 years ago |
MaksimZhukov | d3edc80ad6 | 4 years ago |
Service account | 2689509c1b | 4 years ago |
MaksimZhukov | aa3776fc05 | 4 years ago |
Service account | f1bfe9ec2a | 4 years ago |
MaksimZhukov | 426f431301 | 4 years ago |
Maxim Lobanov | cf20b665a4 | 4 years ago |
Service account | 0783ef2ad9 | 4 years ago |
@ -0,0 +1 @@
|
|||||||
|
* @actions/setup-actions-team
|
@ -0,0 +1,18 @@
|
|||||||
|
name: Generate Go package
|
||||||
|
run-name: Generate Go ${{ inputs.VERSION || '1.19.0' }}
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- 'releases/1.17.4.1'
|
||||||
|
- 'releases/**'
|
||||||
|
- main
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
go:
|
||||||
|
name: Go
|
||||||
|
uses: actions/versions-package-tools/.github/workflows/build-tool-packages.yml@main
|
||||||
|
with:
|
||||||
|
tool-name: "go"
|
||||||
|
tool-version: ${{ inputs.VERSION || '1.19.0' }}
|
||||||
|
publish-release: ${{ inputs.PUBLISH_RELEASES || false }}
|
||||||
|
secrets: inherit
|
@ -0,0 +1,16 @@
|
|||||||
|
name: CodeQL analysis
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ main ]
|
||||||
|
pull_request:
|
||||||
|
branches: [ main ]
|
||||||
|
schedule:
|
||||||
|
- cron: '0 3 * * 0'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
call-codeQL-analysis:
|
||||||
|
name: CodeQL analysis
|
||||||
|
uses: actions/reusable-workflows/.github/workflows/codeql-analysis.yml@main
|
||||||
|
with:
|
||||||
|
languages: "['go']"
|
@ -0,0 +1,10 @@
|
|||||||
|
name: Create Pull Request
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
create-pr:
|
||||||
|
uses: actions/versions-package-tools/.github/workflows/create-pr-to-update-manifest.yml@main
|
||||||
|
with:
|
||||||
|
tool-name: "go"
|
||||||
|
secrets: inherit
|
@ -0,0 +1,13 @@
|
|||||||
|
name: Get Go versions
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
- cron: '0 3,15 * * *'
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
get-new-go-versions:
|
||||||
|
uses: actions/versions-package-tools/.github/workflows/get-new-tool-versions.yml@main
|
||||||
|
with:
|
||||||
|
tool-name: "Go"
|
||||||
|
image-url: "https://go.dev/images/gopher-footer.jpg"
|
||||||
|
secrets: inherit
|
@ -0,0 +1,21 @@
|
|||||||
|
name: Validate manifest
|
||||||
|
on:
|
||||||
|
# The GITHUB_TOKEN secret is used to create a PR
|
||||||
|
# The pull_request event will not be triggered by it
|
||||||
|
# That's one of the reasons we need the schedule to validate the versions-manifest.json file
|
||||||
|
schedule:
|
||||||
|
- cron: '0 8,20 * * *'
|
||||||
|
workflow_dispatch:
|
||||||
|
pull_request:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
|
paths:
|
||||||
|
- 'versions-manifest.json'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
manifest:
|
||||||
|
uses: actions/versions-package-tools/.github/workflows/validate-manifest.yml@main
|
||||||
|
with:
|
||||||
|
tool-name: "Go"
|
||||||
|
image-url: "https://go.dev/images/gopher-footer.jpg"
|
||||||
|
secrets: inherit
|
@ -1 +0,0 @@
|
|||||||
* @actions/virtual-environments-owners
|
|
@ -1,170 +0,0 @@
|
|||||||
name: Generate Go package
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
inputs:
|
|
||||||
VERSION:
|
|
||||||
description: 'Go version to build and upload'
|
|
||||||
required: true
|
|
||||||
default: '1.15.0'
|
|
||||||
PUBLISH_RELEASES:
|
|
||||||
description: 'Whether to publish releases'
|
|
||||||
required: true
|
|
||||||
default: 'false'
|
|
||||||
pull_request:
|
|
||||||
paths-ignore:
|
|
||||||
- 'versions-manifest.json'
|
|
||||||
- 'LICENSE'
|
|
||||||
- '**.md'
|
|
||||||
branches:
|
|
||||||
- 'main'
|
|
||||||
|
|
||||||
env:
|
|
||||||
VERSION: ${{ github.event.inputs.VERSION || '1.15.3' }}
|
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: pwsh
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build_go:
|
|
||||||
name: Build Go ${{ github.event.inputs.VERSION || '1.15.3' }} [${{ matrix.platform }}]
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
env:
|
|
||||||
ARTIFACT_NAME: go-${{ github.event.inputs.VERSION || '1.15.3' }}-${{ matrix.platform }}-x64
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
platform: [linux, darwin, win32]
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
submodules: true
|
|
||||||
|
|
||||||
- name: Build Go ${{ env.VERSION }}
|
|
||||||
run: |
|
|
||||||
./builders/build-go.ps1 -Version $env:VERSION `
|
|
||||||
-Platform ${{ matrix.platform }}
|
|
||||||
|
|
||||||
- name: Publish artifact
|
|
||||||
uses: actions/upload-artifact@v2
|
|
||||||
with:
|
|
||||||
name: ${{ env.ARTIFACT_NAME }}
|
|
||||||
path: ${{ runner.temp }}/artifact
|
|
||||||
|
|
||||||
test_go:
|
|
||||||
name: Test Go ${{ github.event.inputs.VERSION || '1.15.3' }} [${{ matrix.platform }}]
|
|
||||||
needs: build_go
|
|
||||||
runs-on: ${{ matrix.os }}
|
|
||||||
env:
|
|
||||||
ARTIFACT_NAME: go-${{ github.event.inputs.VERSION || '1.15.3' }}-${{ matrix.platform }}-x64
|
|
||||||
strategy:
|
|
||||||
fail-fast: false
|
|
||||||
matrix:
|
|
||||||
include:
|
|
||||||
- os: ubuntu-latest
|
|
||||||
platform: linux
|
|
||||||
- os: macos-latest
|
|
||||||
platform: darwin
|
|
||||||
- os: windows-latest
|
|
||||||
platform: win32
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
submodules: true
|
|
||||||
|
|
||||||
- name: Fully cleanup the toolcache directory before testing
|
|
||||||
run: ./helpers/clean-toolcache.ps1 -ToolName "go"
|
|
||||||
|
|
||||||
- name: Download artifact
|
|
||||||
uses: actions/download-artifact@v2
|
|
||||||
with:
|
|
||||||
path: ${{ runner.temp }}
|
|
||||||
|
|
||||||
- name: Extract files
|
|
||||||
run: |
|
|
||||||
if ('${{ matrix.platform }}' -eq 'win32') {
|
|
||||||
$artifactName = "${{ env.ARTIFACT_NAME }}.zip"
|
|
||||||
7z.exe x "$artifactName" -y | Out-Null
|
|
||||||
} else {
|
|
||||||
$artifactName = "${{ env.ARTIFACT_NAME }}.tar.gz"
|
|
||||||
tar -xzf $artifactName
|
|
||||||
}
|
|
||||||
working-directory: ${{ runner.temp }}/${{ env.ARTIFACT_NAME }}
|
|
||||||
|
|
||||||
- name: Apply build artifact to the local machine
|
|
||||||
run: |
|
|
||||||
if ('${{ matrix.platform }}' -eq 'win32') { powershell ./setup.ps1 } else { sh ./setup.sh }
|
|
||||||
working-directory: ${{ runner.temp }}/${{ env.ARTIFACT_NAME }}
|
|
||||||
|
|
||||||
- name: Setup Go ${{ env.VERSION }}
|
|
||||||
uses: actions/setup-go@v2.1.3
|
|
||||||
with:
|
|
||||||
go-version: ${{ env.VERSION }}
|
|
||||||
|
|
||||||
- name: Wait for the logs
|
|
||||||
run: |
|
|
||||||
Write-Host "Fake step that do nothing"
|
|
||||||
Write-Host "We need it because log of previous step 'Setup Go' is not available here yet."
|
|
||||||
Write-Host "In testing step (Go.Tests.ps1) we analyze build log of 'Setup Go' task"
|
|
||||||
Write-Host "to determine if Go.js version was consumed from cache and was downloaded"
|
|
||||||
for ($i = 0; $i -lt 200; $i++) { Get-Random }
|
|
||||||
|
|
||||||
- name: Run tests
|
|
||||||
run: |
|
|
||||||
Install-Module Pester -Force -Scope CurrentUser
|
|
||||||
Import-Module Pester
|
|
||||||
Invoke-Pester -Script ./Go.Tests.ps1 -EnableExit
|
|
||||||
working-directory: ./tests
|
|
||||||
|
|
||||||
publish_release:
|
|
||||||
name: Publish release
|
|
||||||
if: github.event_name == 'workflow_dispatch' && github.event.inputs.PUBLISH_RELEASES == 'true'
|
|
||||||
needs: test_go
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/download-artifact@v2
|
|
||||||
|
|
||||||
- name: Publish Release ${{ env.VERSION }}
|
|
||||||
id: create_release
|
|
||||||
uses: actions/create-release@v1
|
|
||||||
env:
|
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
with:
|
|
||||||
tag_name: ${{ env.VERSION }}-${{ github.run_id }}
|
|
||||||
release_name: ${{ env.VERSION }}
|
|
||||||
body: |
|
|
||||||
Go ${{ env.VERSION }}
|
|
||||||
|
|
||||||
- name: Upload release assets
|
|
||||||
uses: actions/github-script@v2
|
|
||||||
with:
|
|
||||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
script: |
|
|
||||||
const fs = require('fs');
|
|
||||||
for (let artifactDir of fs.readdirSync('.')) {
|
|
||||||
let artifactName = fs.readdirSync(`${artifactDir}`)[0];
|
|
||||||
console.log(`Upload ${artifactName} asset`);
|
|
||||||
github.repos.uploadReleaseAsset({
|
|
||||||
owner: context.repo.owner,
|
|
||||||
repo: context.repo.repo,
|
|
||||||
release_id: ${{ steps.create_release.outputs.id }},
|
|
||||||
name: artifactName,
|
|
||||||
data: fs.readFileSync(`./${artifactDir}/${artifactName}`)
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
trigger_pr:
|
|
||||||
name: Trigger "Create Pull Request" workflow
|
|
||||||
needs: publish_release
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: Trigger "Create Pull Request" workflow
|
|
||||||
uses: actions/github-script@v3
|
|
||||||
with:
|
|
||||||
github-token: ${{ secrets.PERSONAL_TOKEN }}
|
|
||||||
script: |
|
|
||||||
github.actions.createWorkflowDispatch({
|
|
||||||
owner: context.repo.owner,
|
|
||||||
repo: context.repo.repo,
|
|
||||||
workflow_id: 'create-pr.yml',
|
|
||||||
ref: 'main'
|
|
||||||
});
|
|
@ -1,33 +0,0 @@
|
|||||||
name: Create Pull Request
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
defaults:
|
|
||||||
run:
|
|
||||||
shell: pwsh
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
create_pr:
|
|
||||||
name: Create Pull Request
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
submodules: true
|
|
||||||
|
|
||||||
- name: Create versions-manifest.json
|
|
||||||
run: |
|
|
||||||
./helpers/packages-generation/manifest-generator.ps1 -RepositoryFullName "$env:GITHUB_REPOSITORY" `
|
|
||||||
-GitHubAccessToken "${{secrets.GITHUB_TOKEN}}" `
|
|
||||||
-OutputFile "./versions-manifest.json" `
|
|
||||||
-ConfigurationFile "./config/go-manifest-config.json"
|
|
||||||
- name: Create GitHub PR
|
|
||||||
run: |
|
|
||||||
$formattedDate = Get-Date -Format "MM/dd/yyyy"
|
|
||||||
./helpers/github/create-pull-request.ps1 `
|
|
||||||
-RepositoryFullName "$env:GITHUB_REPOSITORY" `
|
|
||||||
-AccessToken "${{secrets.GITHUB_TOKEN}}" `
|
|
||||||
-BranchName "update-versions-manifest-file" `
|
|
||||||
-CommitMessage "Update versions-manifest" `
|
|
||||||
-PullRequestTitle "[versions-manifest] Update for release from ${formattedDate}" `
|
|
||||||
-PullRequestBody "Update versions-manifest.json for release from ${formattedDate}"
|
|
@ -1,15 +1,17 @@
|
|||||||
# Go for Actions
|
# Go for Actions
|
||||||
This repository contains the code and scripts that we use to prepare Go packages used in [virtual-environments](https://github.com/actions/virtual-environments) and accessible through the [setup-go](https://github.com/actions/setup-go) Action.
|
This repository contains the code and scripts that we use to prepare Go packages used in [runner-images](https://github.com/actions/runner-images) and accessible through the [setup-go](https://github.com/actions/setup-go) Action.
|
||||||
The file [versions-manifest.json](./versions-manifest.json) contains the list of available and released versions.
|
The file [versions-manifest.json](./versions-manifest.json) contains the list of available and released versions.
|
||||||
|
|
||||||
> Caution: this is prepared for and only permitted for use by actions `virtual-environments` and `setup-go` action.
|
> Caution: this is prepared for and only permitted for use by actions `runner-images` and `setup-go` action.
|
||||||
|
|
||||||
**Status**: Currently under development and in use for beta and preview actions. This repo is undergoing rapid changes.
|
**Status**: Currently under development and in use for beta and preview actions. This repo is undergoing rapid changes.
|
||||||
|
|
||||||
Latest of LTS versions will be installed on the [virtual-environments](https://github.com/actions/virtual-environments) images. Other versions will be pulled JIT using the [`setup-go`](https://github.com/actions/setup-go) action.
|
Latest of LTS versions will be installed on the [runner-images](https://github.com/actions/runner-images) images. Other versions will be pulled JIT using the [`setup-go`](https://github.com/actions/setup-go) action.
|
||||||
|
|
||||||
## Adding new versions
|
## Adding new versions
|
||||||
We are trying to prepare packages for new versions of Go as soon as they are released. Please open an issue in [actions/virtual-environments](https://github.com/actions/virtual-environments) if any versions are missing.
|
We are trying to prepare packages for new versions of Go as soon as they are released. Please open an issue in [actions/runner-images](https://github.com/actions/runner-images) if any versions are missing.
|
||||||
|
|
||||||
## Contribution
|
## Contribution
|
||||||
Contributions are welcome! See [Contributor's Guide](./CONTRIBUTING.md) for more details about contribution process and code structure
|
Contributions are welcome! See [Contributor's Guide](./CONTRIBUTING.md) for more details about contribution process and code structure
|
||||||
|
|
||||||
|
## mirror from github
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit 4b0fa42d9972d1f51dd26ca96e03987d374a1d7a
|
Subproject commit 6f1aa3ce73ce0ea4b58995a63b56a8677607762a
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue