Compare commits

...

64 Commits

Author SHA1 Message Date
github-actions[bot]
797449dd8e Update versions-manifest (#73)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-04-06 10:06:10 +02:00
github-actions[bot]
b27d67b686 Update versions-manifest (#72)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-03-08 12:25:40 +01:00
github-actions[bot]
476ac2a1cb Update versions-manifest (#71)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-02-20 14:30:36 +01:00
github-actions[bot]
4fbaddfe63 Update versions-manifest (#70)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-02-17 11:44:16 +01:00
github-actions[bot]
244f8fdaff Update versions-manifest (#69)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-02-02 09:29:09 +01:00
Ivan
f999e556e9 Update codeql action to use reusable workflow (#68) 2023-01-19 12:35:56 +01:00
github-actions[bot]
2f4bcf5e73 Update versions-manifest (#67)
Co-authored-by: Service account <no-reply@microsoft.com>
2023-01-11 11:32:19 +01:00
Marko Zivic
8666f92fad Merge pull request #66 from actions/update-codeowners
Update CODEOWNERS
2022-12-27 09:26:45 +01:00
Evgenii Korolevskii
9ea2b986ed Update CODEOWNERS 2022-12-26 09:50:41 +01:00
Marko Zivic
1a111f3e5c Merge pull request #64 from MaksimZhukov/introduce-reusable-workflows
Update workflows to use reusable ones
2022-12-14 09:43:52 +01:00
MaksimZhukov
1e50d2d968 Replaced the virtual-environments with the runner-images 2022-12-09 09:27:18 +01:00
github-actions[bot]
c9ed2f9d11 Update versions-manifest (#65)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-12-07 11:52:31 +01:00
MaksimZhukov
e997e9e934 Update workflows to use reusable ones 2022-12-06 18:59:40 +01:00
github-actions[bot]
dca364fcdb Update versions-manifest (#63) 2022-11-02 12:19:14 +01:00
Marko Zivic
8b01adb6c0 Merge pull request #60 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 10/07/2022
2022-10-07 08:18:49 +02:00
Service account
4c9c326cab Update versions-manifest 2022-10-07 05:43:16 +00:00
github-actions[bot]
7fbc001811 Update versions-manifest (#59)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-09-07 08:19:43 +03:00
Marko Zivic
acce0a295a Merge pull request #52 from actions/aloviedo-patch-1
Create codeql-analysis.yml
2022-08-03 09:27:23 +02:00
github-actions[bot]
db588f6323 Update versions-manifest (#58)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-08-03 08:23:44 +03:00
github-actions[bot]
c3a220ac09 Update versions-manifest (#57)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-08-02 08:26:14 +03:00
github-actions[bot]
58362e99d6 Update versions-manifest (#56)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-07-13 14:42:59 +03:00
github-actions[bot]
82e37a11c9 Update versions-manifest (#55)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-06-02 09:30:33 +03:00
github-actions[bot]
57ea5543a0 Update versions-manifest (#54) 2022-05-11 12:27:52 +04:00
Marko Zivic
6ac541a152 Merge pull request #53 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 04/15/2022
2022-04-15 10:45:49 +02:00
Service account
710d16ce77 Update versions-manifest 2022-04-15 06:06:18 +00:00
aloviedo
a9a1e21f04 Create codeql-analysis.yml 2022-03-30 06:51:56 -07:00
Ethan Chiu
b591576203 Merge pull request #51 from actions/ethanchewy/add-slack
Add back slack notification
2022-03-16 10:26:42 -07:00
Ethan Chiu
b97793e13e Add back slack notification 2022-03-16 10:11:36 -07:00
Brian Cristante
b844ed6c6d Merge pull request #50 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 03/15/2022
2022-03-16 11:00:54 -04:00
Service account
8a0545cb70 Update versions-manifest 2022-03-15 21:23:15 +00:00
Brian Cristante
34306dce78 Merge pull request #49 from ethanchewy/patch-1
Comment out slack channel posting
2022-03-15 16:39:58 -04:00
Ethan Chiu
2e49d3e53d add logging for message contents 2022-03-15 11:57:09 -07:00
Ethan Chiu
c18c2ac1ac Comment out slack channel posting
To unblock future go builds immediately
2022-03-15 11:45:08 -07:00
github-actions[bot]
b2fe27c0b9 Update versions-manifest (#47)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-02-11 10:48:18 +03:00
github-actions[bot]
c27e49f619 Update versions-manifest (#46)
Co-authored-by: Service account <no-reply@microsoft.com>
2022-01-07 22:12:10 +03:00
github-actions[bot]
9d9bd2c789 Update versions-manifest (#45)
Co-authored-by: Service account <no-reply@microsoft.com>
2021-12-09 20:03:07 +03:00
github-actions[bot]
017e64abe3 Update versions-manifest (#43) 2021-12-03 11:16:30 +03:00
github-actions[bot]
dfb38cff48 Update versions-manifest (#42)
Co-authored-by: Service account <no-reply@microsoft.com>
2021-11-05 18:30:41 +03:00
Nikolay Frolov
4e55ba98df Uptake of the latest changes for helpers submodule (#41) 2021-10-14 16:57:30 +03:00
MaksimZhukov
6e78c4b835 Merge pull request #40 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 10/08/2021
2021-10-08 11:13:29 +03:00
Service account
6ab1ee80cb Update versions-manifest 2021-10-08 07:29:44 +00:00
MaksimZhukov
6712407a7f Merge pull request #39 from nikolai-frolov/helpers-update
Uptake of the latest changes for helpers submodule
2021-10-07 11:08:51 +03:00
Nikolay Frolov
91c89f70d1 Uptake of the latest changes for helpers submodule 2021-10-06 18:10:57 +03:00
MaksimZhukov
13c5817e5c Merge pull request #37 from Yuriy-Kukushkin/main
Move manifest validation pipeline from Azure DevOps
2021-09-15 14:07:34 +03:00
Yuriy-Kukushkin
38f14f667d Updated event 2021-09-15 13:58:37 +03:00
Yuriy-Kukushkin
5735a29e98 Updated submodule 2021-09-15 11:16:57 +03:00
MaksimZhukov
25beb00b9f Merge pull request #38 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 09/10/2021
2021-09-10 10:58:51 +03:00
Service account
260b2b7fbc Update versions-manifest 2021-09-10 07:24:49 +00:00
Yuriy-Kukushkin
187f998b00 Added token 2021-09-09 18:02:16 +03:00
Yuriy-Kukushkin
7dad0a857d Removed event 2021-09-02 10:12:37 +03:00
Yuriy-Kukushkin
bf5a404e5b Changed test data 2021-09-01 22:19:40 +03:00
Yuriy-Kukushkin
307dc6197a Added validate-manifest.yml 2021-09-01 22:05:11 +03:00
MaksimZhukov
868a8c05e8 Merge pull request #36 from nikita-bykov/move-get-go-versions-workflow
Move get-go-versions pipeline from Azure DevOps
2021-08-26 12:31:29 +03:00
Nikita Bykov
df37e8bf8f Update helpers 2021-08-26 12:20:41 +03:00
Nikita Bykov
b895c36713 Update Send Slack notification step to send a custom message 2021-08-25 15:29:09 +03:00
Nikita Bykov
d0f2864c56 Update get-go-versions forkflow 2021-08-20 17:33:06 +03:00
Nikita Bykov
c8892db080 Add the job to check build for failures in get-go-versions.yml 2021-08-19 16:16:05 +03:00
Nikita Bykov
dc914fd71a Move get-go-versions from Azure DevOps 2021-08-17 17:12:11 +03:00
github-actions[bot]
293cbf311d Update versions-manifest (#35)
Co-authored-by: Service account <no-reply@microsoft.com>
2021-08-17 14:12:33 +03:00
MaksimZhukov
090a19ca59 Merge pull request #34 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 08/06/2021
2021-08-06 10:02:30 +03:00
Service account
00a50d6501 Update versions-manifest 2021-08-06 06:06:47 +00:00
github-actions[bot]
562bf9fcb9 Add 1.16.6 & 1.15.14 (#33) 2021-07-13 10:04:49 +03:00
Alena Sviridenko
8ad5091061 Merge pull request #32 from actions/update-versions-manifest-file 2021-06-04 09:25:30 +03:00
Service account
f18d1622a0 Update versions-manifest 2021-06-04 06:05:44 +00:00
9 changed files with 1373 additions and 185 deletions

2
.github/CODEOWNERS vendored
View File

@@ -1 +1 @@
* @actions/virtual-environments-owners
* @actions/setup-actions-team

View File

@@ -1,15 +1,17 @@
name: Generate Go package
run-name: Generate Go ${{ inputs.VERSION || '1.19.0' }}
on:
workflow_dispatch:
inputs:
VERSION:
description: 'Go version to build and upload'
required: true
default: '1.15.0'
default: '1.19.0'
PUBLISH_RELEASES:
description: 'Whether to publish releases'
type: boolean
required: true
default: 'false'
default: false
pull_request:
paths-ignore:
- 'versions-manifest.json'
@@ -18,153 +20,12 @@ on:
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
go:
name: Go
uses: actions/versions-package-tools/.github/workflows/build-tool-packages.yml@main
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'
});
tool-name: "go"
tool-version: ${{ inputs.VERSION || '1.19.0' }}
publish-release: ${{ inputs.PUBLISH_RELEASES || false }}
secrets: inherit

16
.github/workflows/codeql-analysis.yml vendored Normal file
View File

@@ -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']"

View File

@@ -2,32 +2,9 @@ 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
create-pr:
uses: actions/versions-package-tools/.github/workflows/create-pr-to-update-manifest.yml@main
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}"
tool-name: "go"
secrets: inherit

13
.github/workflows/get-go-versions.yml vendored Normal file
View File

@@ -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

21
.github/workflows/validate-manifest.yml vendored Normal file
View File

@@ -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

View File

@@ -1,15 +1,15 @@
# 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.
> 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.
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
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
Contributions are welcome! See [Contributor's Guide](./CONTRIBUTING.md) for more details about contribution process and code structure

Submodule helpers updated: 4b0fa42d99...6f1aa3ce73

File diff suppressed because it is too large Load Diff