mirror of
https://github.com/actions/node-versions.git
synced 2025-08-25 04:18:48 +08:00
Compare commits
150 Commits
14.13.0-27
...
16.18.0-32
Author | SHA1 | Date | |
---|---|---|---|
![]() |
1563799473 | ||
![]() |
32e71c3c3b | ||
![]() |
edcf67ef40 | ||
![]() |
72d306dec2 | ||
![]() |
7e8f83364e | ||
![]() |
d065c37c10 | ||
![]() |
6f4ddf8c2c | ||
![]() |
deab417b89 | ||
![]() |
46c45cb2bb | ||
![]() |
80d54cdc81 | ||
![]() |
bcd6df9184 | ||
![]() |
6751014c63 | ||
![]() |
fe2adddc4d | ||
![]() |
4431f5baf6 | ||
![]() |
4414c50507 | ||
![]() |
5dd67ed7f9 | ||
![]() |
ec00a6e346 | ||
![]() |
6c2489748b | ||
![]() |
7ee585b554 | ||
![]() |
86a16e3fbc | ||
![]() |
618e16944c | ||
![]() |
cc0c4db785 | ||
![]() |
dd82515163 | ||
![]() |
3f418bfd29 | ||
![]() |
fd15ad763a | ||
![]() |
02a74240bb | ||
![]() |
9b9e1bad68 | ||
![]() |
e379f2ee0d | ||
![]() |
e6e7799d67 | ||
![]() |
11f6d8a2de | ||
![]() |
b03ec2b334 | ||
![]() |
41fdef674f | ||
![]() |
bb5faa8461 | ||
![]() |
914307fdad | ||
![]() |
7a042473f1 | ||
![]() |
46aed5d195 | ||
![]() |
595b4b690a | ||
![]() |
29a273c108 | ||
![]() |
bb9f13b224 | ||
![]() |
453a014457 | ||
![]() |
cf85dc514f | ||
![]() |
8acc56fc1b | ||
![]() |
a034d4c79d | ||
![]() |
7ce0e62855 | ||
![]() |
ad4c15127c | ||
![]() |
e60aab1337 | ||
![]() |
fff8e8d2e7 | ||
![]() |
9439938c24 | ||
![]() |
7efd2b6d9c | ||
![]() |
9f1448d546 | ||
![]() |
d6c0f3407a | ||
![]() |
7ee0eb6d7f | ||
![]() |
0e81926ec5 | ||
![]() |
2b00037cf2 | ||
![]() |
03a45f2d48 | ||
![]() |
285c046a12 | ||
![]() |
d9cf0e3053 | ||
![]() |
d86ab03024 | ||
![]() |
ad9cb45c2a | ||
![]() |
aa33d265c4 | ||
![]() |
58c3d40bb8 | ||
![]() |
577e22bee8 | ||
![]() |
2200e9ff30 | ||
![]() |
09f8ea5c48 | ||
![]() |
d78f09bbe4 | ||
![]() |
acea7cad3a | ||
![]() |
3257340283 | ||
![]() |
833c6da64b | ||
![]() |
b2560ab6d9 | ||
![]() |
84b6aaeb97 | ||
![]() |
b195064d9c | ||
![]() |
a72cfa7a7c | ||
![]() |
63fc200ef6 | ||
![]() |
ad4714dee5 | ||
![]() |
0287ac915c | ||
![]() |
5c5f144d08 | ||
![]() |
6e415f531b | ||
![]() |
5a83490d4f | ||
![]() |
e5e3b83d13 | ||
![]() |
9405eaa89a | ||
![]() |
947a3202c2 | ||
![]() |
5edc6dfe71 | ||
![]() |
c54f68be31 | ||
![]() |
dcd9e83d63 | ||
![]() |
e530a1172f | ||
![]() |
ee57453268 | ||
![]() |
c0fad79083 | ||
![]() |
484fa88a69 | ||
![]() |
8c866dde54 | ||
![]() |
334a8d1394 | ||
![]() |
72210eed7d | ||
![]() |
2b595e0a51 | ||
![]() |
7ac82af1b6 | ||
![]() |
6d939f1dbe | ||
![]() |
2b6ee4852f | ||
![]() |
b3a2ff96e2 | ||
![]() |
0141b50275 | ||
![]() |
7481b6b090 | ||
![]() |
4fcc8f116d | ||
![]() |
e5f055b1c1 | ||
![]() |
34f35b5cb6 | ||
![]() |
e21cafedd8 | ||
![]() |
b6e0bccc9f | ||
![]() |
3e0c0eb0d6 | ||
![]() |
62cc8fa6fb | ||
![]() |
5fa4e704be | ||
![]() |
60911f3d0a | ||
![]() |
1aa2fc42b8 | ||
![]() |
6a059f6c80 | ||
![]() |
48cfd035f5 | ||
![]() |
4066cc83f8 | ||
![]() |
2277f8c8a4 | ||
![]() |
28cdbd7c2e | ||
![]() |
a0e1e3c90e | ||
![]() |
3716ed3c6e | ||
![]() |
6fd0e71a0a | ||
![]() |
5093d2b929 | ||
![]() |
2fa5a9904c | ||
![]() |
ab76c432fe | ||
![]() |
ead568a146 | ||
![]() |
6fdbc6deb3 | ||
![]() |
69ae188e0e | ||
![]() |
75b1a9f3f2 | ||
![]() |
ea5fefae18 | ||
![]() |
8b33f33473 | ||
![]() |
d92adb7da1 | ||
![]() |
c2b002c470 | ||
![]() |
649c1ec0c7 | ||
![]() |
fbeb7d747d | ||
![]() |
445b5079f1 | ||
![]() |
07c6e38e3e | ||
![]() |
805c28590c | ||
![]() |
72562f08b4 | ||
![]() |
adde90d079 | ||
![]() |
6772ce992e | ||
![]() |
196a7ffaab | ||
![]() |
5803dd40ce | ||
![]() |
15c3ac315a | ||
![]() |
4790533e80 | ||
![]() |
c01749b1c4 | ||
![]() |
01407a89d3 | ||
![]() |
ff6bcb4ec0 | ||
![]() |
a229d53240 | ||
![]() |
593745d7c2 | ||
![]() |
e459abbdbe | ||
![]() |
f01c560f7f | ||
![]() |
2b37bf1f1e | ||
![]() |
fe299f9388 | ||
![]() |
bbb4ceccb0 | ||
![]() |
d8a00be11c |
1
.github/CODEOWNERS
vendored
Normal file
1
.github/CODEOWNERS
vendored
Normal file
@@ -0,0 +1 @@
|
||||
* @actions/virtual-environments-owners
|
21
.github/workflows/build-node-packages.yml
vendored
21
.github/workflows/build-node-packages.yml
vendored
@@ -10,19 +10,26 @@ on:
|
||||
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 }}
|
||||
VERSION: ${{ github.event.inputs.VERSION || '14.0.0' }}
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
|
||||
jobs:
|
||||
build_node:
|
||||
name: Build Node.js ${{ github.event.inputs.VERSION }} [${{ matrix.platform }}]
|
||||
name: Build Node.js ${{ github.event.inputs.VERSION || '14.0.0' }} [${{ matrix.platform }}]
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
ARTIFACT_NAME: node-${{ github.event.inputs.VERSION }}-${{ matrix.platform }}-x64
|
||||
ARTIFACT_NAME: node-${{ github.event.inputs.VERSION || '14.0.0' }}-${{ matrix.platform }}-x64
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
@@ -44,11 +51,11 @@ jobs:
|
||||
path: ${{ runner.temp }}/artifact
|
||||
|
||||
test_node:
|
||||
name: Test Node.js ${{ github.event.inputs.VERSION }} [${{ matrix.platform }}]
|
||||
name: Test Node.js ${{ github.event.inputs.VERSION || '14.0.0' }} [${{ matrix.platform }}]
|
||||
needs: build_node
|
||||
runs-on: ${{ matrix.os }}
|
||||
env:
|
||||
ARTIFACT_NAME: node-${{ github.event.inputs.VERSION }}-${{ matrix.platform }}-x64
|
||||
ARTIFACT_NAME: node-${{ github.event.inputs.VERSION || '14.0.0' }}-${{ matrix.platform }}-x64
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
@@ -89,7 +96,7 @@ jobs:
|
||||
working-directory: ${{ runner.temp }}/${{ env.ARTIFACT_NAME }}
|
||||
|
||||
- name: Setup Node.js ${{ env.VERSION }}
|
||||
uses: actions/setup-node@v2.1.1
|
||||
uses: actions/setup-node@v2.1.2
|
||||
with:
|
||||
node-version: ${{ env.VERSION }}
|
||||
|
||||
@@ -110,7 +117,7 @@ jobs:
|
||||
|
||||
publish_release:
|
||||
name: Publish release
|
||||
if: github.event.inputs.PUBLISH_RELEASES == 'true'
|
||||
if: github.event_name == 'workflow_dispatch' && github.event.inputs.PUBLISH_RELEASES == 'true'
|
||||
needs: test_node
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
97
.github/workflows/get-node-versions.yml
vendored
Normal file
97
.github/workflows/get-node-versions.yml
vendored
Normal file
@@ -0,0 +1,97 @@
|
||||
name: Get Node versions
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 3,15 * * *'
|
||||
workflow_dispatch:
|
||||
|
||||
env:
|
||||
TOOL_NAME: "Node"
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
|
||||
jobs:
|
||||
find_new_versions:
|
||||
name: Find new versions
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
versions_output: ${{ steps.Get_new_versions.outputs.TOOL_VERSIONS }}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- id: Get_new_versions
|
||||
name: Get new versions
|
||||
run: ./helpers/get-new-tool-versions/get-new-tool-versions.ps1 -ToolName ${{ env.TOOL_NAME }}
|
||||
|
||||
check_new_versions:
|
||||
name: Check new versions
|
||||
runs-on: ubuntu-latest
|
||||
needs: find_new_versions
|
||||
env:
|
||||
TOOL_VERSIONS: ${{needs.find_new_versions.outputs.versions_output}}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: Check Versions
|
||||
if: success() && env.TOOL_VERSIONS == ''
|
||||
run: |
|
||||
Write-Host "No new versions were found"
|
||||
Import-Module "./helpers/github/github-api.psm1"
|
||||
$gitHubApi = Get-GitHubApi -RepositoryFullName "$env:GITHUB_REPOSITORY" `
|
||||
-AccessToken "${{ secrets.PERSONAL_TOKEN }}"
|
||||
|
||||
$gitHubApi.CancelWorkflow("$env:GITHUB_RUN_ID")
|
||||
Start-Sleep -Seconds 60
|
||||
|
||||
- name: Send Slack notification
|
||||
run: |
|
||||
$pipelineUrl = "$env:GITHUB_SERVER_URL/$env:GITHUB_REPOSITORY/actions/runs/$env:GITHUB_RUN_ID"
|
||||
$message = "The following versions of '${{ env.TOOL_NAME }}' are available to upload: ${{ env.TOOL_VERSIONS }}\nLink to the pipeline: $pipelineUrl"
|
||||
./helpers/get-new-tool-versions/send-slack-notification.ps1 -Url "${{ secrets.SLACK_CHANNEL_URL }}" `
|
||||
-ToolName "${{ env.TOOL_NAME }}" `
|
||||
-ImageUrl "https://nodejs.org/static/images/logo-hexagon-card.png" `
|
||||
-Text "$message"
|
||||
|
||||
trigger_builds:
|
||||
name: Trigger builds
|
||||
runs-on: ubuntu-latest
|
||||
needs: [find_new_versions, check_new_versions]
|
||||
env:
|
||||
TOOL_VERSIONS: ${{needs.find_new_versions.outputs.versions_output}}
|
||||
environment: Get Available Tools Versions - Publishing Approval
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: Trigger "Build Node packages" workflow
|
||||
run:
|
||||
./helpers/github/run-ci-builds.ps1 -RepositoryFullName "$env:GITHUB_REPOSITORY" `
|
||||
-AccessToken "${{ secrets.PERSONAL_TOKEN }}" `
|
||||
-WorkflowFileName "build-node-packages.yml" `
|
||||
-WorkflowDispatchRef "main" `
|
||||
-ToolVersions "${{ env.TOOL_VERSIONS }}" `
|
||||
-PublishReleases "true"
|
||||
|
||||
check_build:
|
||||
name: Check build for failures
|
||||
runs-on: ubuntu-latest
|
||||
needs: [find_new_versions, check_new_versions, trigger_builds]
|
||||
if: failure()
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: Send Slack notification if build fails
|
||||
run: |
|
||||
$pipelineUrl = "$env:GITHUB_SERVER_URL/$env:GITHUB_REPOSITORY/actions/runs/$env:GITHUB_RUN_ID"
|
||||
$message = "The build of the '${{ env.TOOL_NAME }}' detection pipeline failed :progress-error:\nLink to the pipeline: $pipelineUrl"
|
||||
./helpers/get-new-tool-versions/send-slack-notification.ps1 -Url "${{ secrets.SLACK_CHANNEL_URL }}" `
|
||||
-ToolName "${{ env.TOOL_NAME }}" `
|
||||
-Text "$message" `
|
||||
-ImageUrl "https://nodejs.org/static/images/logo-hexagon-card.png"
|
48
.github/workflows/validate-manifest.yml
vendored
Normal file
48
.github/workflows/validate-manifest.yml
vendored
Normal file
@@ -0,0 +1,48 @@
|
||||
name: Validate manifest
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 8,20 * * *'
|
||||
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- 'versions-manifest.json'
|
||||
|
||||
env:
|
||||
TOOL_NAME: "Node"
|
||||
|
||||
defaults:
|
||||
run:
|
||||
shell: pwsh
|
||||
|
||||
jobs:
|
||||
validation:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: Validate node-versions manifest
|
||||
run: .\helpers\packages-generation\manifest-validator.ps1 -ManifestPath '.\versions-manifest.json'
|
||||
|
||||
check_build:
|
||||
name: Check validation for failures
|
||||
runs-on: ubuntu-latest
|
||||
needs: [validation]
|
||||
if: failure()
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: Send Slack notification if validation fails
|
||||
run: |
|
||||
$pipelineUrl = "$env:GITHUB_SERVER_URL/$env:GITHUB_REPOSITORY/actions/runs/$env:GITHUB_RUN_ID"
|
||||
$message = "The validation of node-versions manifest failed. \nLink to the pipeline: $pipelineUrl"
|
||||
.\helpers\get-new-tool-versions\send-slack-notification.ps1 -Url "${{ secrets.SLACK_CHANNEL_URL }}" `
|
||||
-ToolName "${{ env.TOOL_NAME }}" `
|
||||
-Text "$message" `
|
||||
-ImageUrl "https://nodejs.org/static/images/logo-hexagon-card.png"
|
@@ -1,5 +1,5 @@
|
||||
using module "./builders/win-node-builder.psm1"
|
||||
using module "./builders/nix-node-builder.psm1"
|
||||
using module "./win-node-builder.psm1"
|
||||
using module "./nix-node-builder.psm1"
|
||||
|
||||
<#
|
||||
.SYNOPSIS
|
||||
|
@@ -1,4 +1,4 @@
|
||||
using module "./builders/node-builder.psm1"
|
||||
using module "./node-builder.psm1"
|
||||
|
||||
class NixNodeBuilder : NodeBuilder {
|
||||
<#
|
||||
|
@@ -1,4 +1,4 @@
|
||||
using module "./builders/node-builder.psm1"
|
||||
using module "./node-builder.psm1"
|
||||
|
||||
class WinNodeBuilder : NodeBuilder {
|
||||
<#
|
||||
|
@@ -3,5 +3,6 @@
|
||||
"groups": {
|
||||
"arch": 2,
|
||||
"platform": 1
|
||||
}
|
||||
},
|
||||
"lts_rule_expression": "(Invoke-RestMethod 'https://raw.githubusercontent.com/nodejs/Release/main/schedule.json').PSObject.Properties | Where-Object { $_.Value.codename } | ForEach-Object { @{ Name = $_.Name.TrimStart('v'); Value = $_.Value.codename } }"
|
||||
}
|
2
helpers
2
helpers
Submodule helpers updated: 3b38e3de4c...6f1aa3ce73
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user