Skip to content

Commit b8c7341

Browse files
authored
Merge pull request #15 from actions/main
chore(IDX): sync main
2 parents a77fe8a + 078eb3b commit b8c7341

File tree

76 files changed

+951
-692
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

76 files changed

+951
-692
lines changed

Diff for: .devcontainer/devcontainer.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
"features": {
55
"ghcr.io/devcontainers/features/docker-in-docker:1": {},
66
"ghcr.io/devcontainers/features/dotnet": {
7-
"version": "6.0.421"
7+
"version": "8.0.404"
88
},
99
"ghcr.io/devcontainers/features/node:1": {
10-
"version": "16"
10+
"version": "20"
1111
},
1212
"ghcr.io/devcontainers/features/sshd:1": {
1313
"version": "latest"

Diff for: .github/dependabot.yml

+5
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@ updates:
55
schedule:
66
interval: "daily"
77
target-branch: "main"
8+
- package-ecosystem: "github-actions"
9+
directory: "/"
10+
schedule:
11+
interval: "daily"
12+
target-branch: "main"
813
- package-ecosystem: "nuget"
914
directory: "/src"
1015
schedule:

Diff for: .github/workflows/build.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ jobs:
5050

5151
runs-on: ${{ matrix.os }}
5252
steps:
53-
- uses: actions/checkout@v3
53+
- uses: actions/checkout@v4
5454

5555
# Build runner layout
5656
- name: Build & Layout Release
@@ -69,13 +69,13 @@ jobs:
6969
- name: Package Release
7070
if: github.event_name != 'pull_request'
7171
run: |
72-
${{ matrix.devScript }} package Release
72+
${{ matrix.devScript }} package Release ${{ matrix.runtime }}
7373
working-directory: src
7474

7575
# Upload runner package tar.gz/zip as artifact
7676
- name: Publish Artifact
7777
if: github.event_name != 'pull_request'
78-
uses: actions/upload-artifact@v2
78+
uses: actions/upload-artifact@v4
7979
with:
8080
name: runner-package-${{ matrix.runtime }}
8181
path: |

Diff for: .github/workflows/codeql.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323

2424
steps:
2525
- name: Checkout repository
26-
uses: actions/checkout@v3
26+
uses: actions/checkout@v4
2727

2828
# Initializes the CodeQL tools for scanning.
2929
- name: Initialize CodeQL

Diff for: .github/workflows/dotnet-upgrade.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ jobs:
1515
DOTNET_CURRENT_MAJOR_MINOR_VERSION: ${{ steps.fetch_current_version.outputs.DOTNET_CURRENT_MAJOR_MINOR_VERSION }}
1616
steps:
1717
- name: Checkout repository
18-
uses: actions/checkout@v3
18+
uses: actions/checkout@v4
1919
- name: Get current major minor version
2020
id: fetch_current_version
2121
shell: bash
@@ -51,7 +51,7 @@ jobs:
5151
run: echo "::error links::feature/dotnet-sdk-upgrade${{ steps.fetch_latest_version.outputs.DOTNET_LATEST_MAJOR_MINOR_PATCH_VERSION }} https://github.com/actions/runner/tree/feature/dotnet-sdk-upgrade${{ steps.fetch_latest_version.outputs.DOTNET_LATEST_MAJOR_MINOR_PATCH_VERSION }}::Branch feature/dotnetsdk-upgrade/${{ steps.fetch_latest_version.outputs.DOTNET_LATEST_MAJOR_MINOR_PATCH_VERSION }} already exists. Please take a look and delete that branch if you wish to recreate"
5252
- name: Create a warning annotation if no need to update
5353
if: ${{ steps.fetch_latest_version.outputs.SHOULD_UPDATE == 0 && steps.fetch_latest_version.outputs.BRANCH_EXISTS == 0 }}
54-
run: echo "::warning ::Latest DotNet SDK patch is ${{ steps.fetch_latest_version.outputs.DOTNET_LATEST_MAJOR_MINOR_PATCH_VERSION }}, and we are on ${{ steps.fetch_latest_version.outputs.DOTNET_CURRENT_MAJOR_MINOR_PATCH_VERSION }}. No need to update"
54+
run: echo "::warning ::Latest DotNet SDK patch is ${{ steps.fetch_latest_version.outputs.DOTNET_LATEST_MAJOR_MINOR_PATCH_VERSION }}, and we are on ${{ steps.fetch_current_version.outputs.DOTNET_CURRENT_MAJOR_MINOR_PATCH_VERSION }}. No need to update"
5555
- name: Update patch version
5656
if: ${{ steps.fetch_latest_version.outputs.SHOULD_UPDATE == 1 && steps.fetch_latest_version.outputs.BRANCH_EXISTS == 0 }}
5757
shell: bash
@@ -89,7 +89,7 @@ jobs:
8989
if: ${{ needs.dotnet-update.outputs.SHOULD_UPDATE == 1 && needs.dotnet-update.outputs.BRANCH_EXISTS == 0 }}
9090
runs-on: ubuntu-latest
9191
steps:
92-
- uses: actions/checkout@v3
92+
- uses: actions/checkout@v4
9393
with:
9494
ref: feature/dotnetsdk-upgrade/${{ needs.dotnet-update.outputs.DOTNET_LATEST_MAJOR_MINOR_PATCH_VERSION }}
9595
- name: Create Pull Request

Diff for: .github/workflows/lint.yml

-24
This file was deleted.

Diff for: .github/workflows/publish-image.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020

2121
steps:
2222
- name: Checkout repository
23-
uses: actions/checkout@v3
23+
uses: actions/checkout@v4
2424

2525
- name: Compute image version
2626
id: image

Diff for: .github/workflows/release.yml

+39-10
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
if: startsWith(github.ref, 'refs/heads/releases/') || github.ref == 'refs/heads/main'
1212
runs-on: ubuntu-latest
1313
steps:
14-
- uses: actions/checkout@v3
14+
- uses: actions/checkout@v4
1515

1616
# Make sure ./releaseVersion match ./src/runnerversion
1717
# Query GitHub release ensure version is not used
@@ -87,7 +87,7 @@ jobs:
8787

8888
runs-on: ${{ matrix.os }}
8989
steps:
90-
- uses: actions/checkout@v3
90+
- uses: actions/checkout@v4
9191

9292
# Build runner layout
9393
- name: Build & Layout Release
@@ -117,12 +117,11 @@ jobs:
117117
working-directory: _package
118118
119119
# Upload runner package tar.gz/zip as artifact.
120-
# Since each package name is unique, so we don't need to put ${{matrix}} info into artifact name
121120
- name: Publish Artifact
122121
if: github.event_name != 'pull_request'
123-
uses: actions/upload-artifact@v2
122+
uses: actions/upload-artifact@v4
124123
with:
125-
name: runner-packages
124+
name: runner-packages-${{ matrix.runtime }}
126125
path: |
127126
_package
128127
@@ -131,13 +130,43 @@ jobs:
131130
runs-on: ubuntu-latest
132131
steps:
133132

134-
- uses: actions/checkout@v3
133+
- uses: actions/checkout@v4
135134

136135
# Download runner package tar.gz/zip produced by 'build' job
137-
- name: Download Artifact
138-
uses: actions/download-artifact@v1
136+
- name: Download Artifact (win-x64)
137+
uses: actions/download-artifact@v4
139138
with:
140-
name: runner-packages
139+
name: runner-packages-win-x64
140+
path: ./
141+
- name: Download Artifact (win-arm64)
142+
uses: actions/download-artifact@v4
143+
with:
144+
name: runner-packages-win-arm64
145+
path: ./
146+
- name: Download Artifact (osx-x64)
147+
uses: actions/download-artifact@v4
148+
with:
149+
name: runner-packages-osx-x64
150+
path: ./
151+
- name: Download Artifact (osx-arm64)
152+
uses: actions/download-artifact@v4
153+
with:
154+
name: runner-packages-osx-arm64
155+
path: ./
156+
- name: Download Artifact (linux-x64)
157+
uses: actions/download-artifact@v4
158+
with:
159+
name: runner-packages-linux-x64
160+
path: ./
161+
- name: Download Artifact (linux-arm)
162+
uses: actions/download-artifact@v4
163+
with:
164+
name: runner-packages-linux-arm
165+
path: ./
166+
- name: Download Artifact (linux-arm64)
167+
uses: actions/download-artifact@v4
168+
with:
169+
name: runner-packages-linux-arm64
141170
path: ./
142171

143172
# Create ReleaseNote file
@@ -267,7 +296,7 @@ jobs:
267296
IMAGE_NAME: ${{ github.repository_owner }}/actions-runner
268297
steps:
269298
- name: Checkout repository
270-
uses: actions/checkout@v3
299+
uses: actions/checkout@v4
271300

272301
- name: Compute image version
273302
id: image

Diff for: .gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,5 @@ _dotnetsdk
2626
TestResults
2727
TestLogs
2828
.DS_Store
29+
.mono
2930
**/*.DotSettings.user

Diff for: docs/checks/nodejs.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@
44

55
Make sure the built-in node.js has access to GitHub.com or GitHub Enterprise Server.
66

7-
The runner carries its own copy of node.js executable under `<runner_root>/externals/node16/`.
7+
The runner carries its own copy of node.js executable under `<runner_root>/externals/node20/`.
88

9-
All javascript base Actions will get executed by the built-in `node` at `<runner_root>/externals/node16/`.
9+
All javascript base Actions will get executed by the built-in `node` at `<runner_root>/externals/node20/`.
1010

1111
> Not the `node` from `$PATH`
1212

Diff for: images/Dockerfile

+8-6
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
# Source: https://github.com/dotnet/dotnet-docker
2-
FROM mcr.microsoft.com/dotnet/runtime-deps:6.0-jammy as build
2+
FROM mcr.microsoft.com/dotnet/runtime-deps:8.0-jammy as build
33

44
ARG TARGETOS
55
ARG TARGETARCH
66
ARG RUNNER_VERSION
77
ARG RUNNER_CONTAINER_HOOKS_VERSION=0.6.1
8-
ARG DOCKER_VERSION=27.1.1
9-
ARG BUILDX_VERSION=0.16.2
8+
ARG DOCKER_VERSION=27.3.1
9+
ARG BUILDX_VERSION=0.18.0
1010

1111
RUN apt update -y && apt install curl unzip -y
1212

@@ -32,7 +32,7 @@ RUN export RUNNER_ARCH=${TARGETARCH} \
3232
"https://github.com/docker/buildx/releases/download/v${BUILDX_VERSION}/buildx-v${BUILDX_VERSION}.linux-${TARGETARCH}" \
3333
&& chmod +x /usr/local/lib/docker/cli-plugins/docker-buildx
3434

35-
FROM mcr.microsoft.com/dotnet/runtime-deps:6.0-jammy
35+
FROM mcr.microsoft.com/dotnet/runtime-deps:8.0-jammy
3636

3737
ENV DEBIAN_FRONTEND=noninteractive
3838
ENV RUNNER_MANUALLY_TRAP_SIG=1
@@ -41,12 +41,14 @@ ENV ImageOS=ubuntu22
4141

4242
# 'gpg-agent' and 'software-properties-common' are needed for the 'add-apt-repository' command that follows
4343
RUN apt update -y \
44-
&& apt install -y --no-install-recommends sudo lsb-release gpg-agent software-properties-common \
44+
&& apt install -y --no-install-recommends sudo lsb-release gpg-agent software-properties-common curl jq unzip \
4545
&& rm -rf /var/lib/apt/lists/*
4646

4747
# Configure git-core/ppa based on guidance here: https://git-scm.com/download/linux
4848
RUN add-apt-repository ppa:git-core/ppa \
49-
&& apt update -y
49+
&& apt update -y \
50+
&& apt install -y git \
51+
&& rm -rf /var/lib/apt/lists/*
5052

5153
RUN adduser --disabled-password --gecos "" --uid 1001 runner \
5254
&& groupadd docker --gid 123 \

Diff for: releaseNote.md

+26-8
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,30 @@
11
## What's Changed
22

3-
- .NET 8 OS compatibility test https://github.com/actions/runner/pull/3422
4-
- Ignore ssl cert on websocket client https://github.com/actions/runner/pull/3423
5-
- Revert "Bump runner to dotnet 8" https://github.com/actions/runner/pull/3412
6-
7-
**Full Changelog**: https://github.com/actions/runner/compare/v2.318.0...v2.319.0
3+
* Fix release workflow to use distinct artifact names by @ericsciple in https://github.com/actions/runner/pull/3485
4+
* Update dotnet sdk to latest version @6.0.425 by @github-actions in https://github.com/actions/runner/pull/3433
5+
* add ref and type to job completion in run service by @yaananth in https://github.com/actions/runner/pull/3492
6+
* Remove Broker Migration Message logging by @luketomlinson in https://github.com/actions/runner/pull/3493
7+
* Bump dotnet SDK to dotnet 8. by @TingluoHuang in https://github.com/actions/runner/pull/3500
8+
* Remove dotnet8 compatibility test. by @TingluoHuang in https://github.com/actions/runner/pull/3502
9+
* Remove node16 from the runner. by @TingluoHuang in https://github.com/actions/runner/pull/3503
10+
* send action name for run service by @yaananth in https://github.com/actions/runner/pull/3520
11+
* Handle runner not found by @ericsciple in https://github.com/actions/runner/pull/3536
12+
* Publish job telemetry to run-service. by @TingluoHuang in https://github.com/actions/runner/pull/3545
13+
* Fetch repo-level runner groups from API in v2 flow by @lucavallin in https://github.com/actions/runner/pull/3546
14+
* Allow runner to check service connection in background. by @TingluoHuang in https://github.com/actions/runner/pull/3542
15+
* Expose ENV for cache service v2. by @TingluoHuang in https://github.com/actions/runner/pull/3548
16+
* Update runner docker image. by @TingluoHuang in https://github.com/actions/runner/pull/3511
17+
* Bump Azure.Storage.Blobs from 12.19.1 to 12.23.0 in /src by @dependabot in https://github.com/actions/runner/pull/3549
18+
* fix dotnet-upgrade.yml to print right version by @TingluoHuang in https://github.com/actions/runner/pull/3550
19+
* Update dotnet sdk to latest version @8.0.404 by @github-actions in https://github.com/actions/runner/pull/3552
20+
* Configure dependabot to check github-actions updates by @Goooler in https://github.com/actions/runner/pull/3333
21+
* Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/actions/runner/pull/3556
22+
23+
## New Contributors
24+
* @lucavallin made their first contribution in https://github.com/actions/runner/pull/3546
25+
* @Goooler made their first contribution in https://github.com/actions/runner/pull/3333
26+
27+
**Full Changelog**: https://github.com/actions/runner/compare/v2.320.0...v2.321.0
828

929
_Note: Actions Runner follows a progressive release policy, so the latest release might not be available to your enterprise, organization, or repository yet.
1030
To confirm which version of the Actions Runner you should expect, please view the download instructions for your enterprise, organization, or repository.
@@ -26,9 +46,7 @@ Add-Type -AssemblyName System.IO.Compression.FileSystem ;
2646
[System.IO.Compression.ZipFile]::ExtractToDirectory("$PWD\actions-runner-win-x64-<RUNNER_VERSION>.zip", "$PWD")
2747
```
2848

29-
## [Pre-release] Windows arm64
30-
31-
**Warning:** Windows arm64 runners are currently in preview status and use [unofficial versions of nodejs](https://unofficial-builds.nodejs.org/). They are not intended for production workflows.
49+
## Windows arm64
3250

3351
We recommend configuring the runner in a root folder of the Windows drive (e.g. "C:\actions-runner"). This will help avoid issues related to service identity folder permissions and long file path restrictions on Windows.
3452

Diff for: src/Misc/externals.sh

+1-14
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,10 @@ PACKAGERUNTIME=$1
33
PRECACHE=$2
44

55
NODE_URL=https://nodejs.org/dist
6-
UNOFFICIAL_NODE_URL=https://unofficial-builds.nodejs.org/download/release
76
NODE_ALPINE_URL=https://github.com/actions/alpine_nodejs/releases/download
87
# When you update Node versions you must also create a new release of alpine_nodejs at that updated version.
98
# Follow the instructions here: https://github.com/actions/alpine_nodejs?tab=readme-ov-file#getting-started
10-
NODE16_VERSION="16.20.2"
11-
NODE20_VERSION="20.13.1"
12-
NODE16_UNOFFICIAL_VERSION="16.20.0" # used only for win-arm64, remove node16 unofficial version when official version is available
9+
NODE20_VERSION="20.18.0"
1310

1411
get_abs_path() {
1512
# exploits the fact that pwd will print abs path when no args
@@ -140,8 +137,6 @@ function acquireExternalTool() {
140137

141138
# Download the external tools only for Windows.
142139
if [[ "$PACKAGERUNTIME" == "win-x64" || "$PACKAGERUNTIME" == "win-x86" ]]; then
143-
acquireExternalTool "$NODE_URL/v${NODE16_VERSION}/$PACKAGERUNTIME/node.exe" node16/bin
144-
acquireExternalTool "$NODE_URL/v${NODE16_VERSION}/$PACKAGERUNTIME/node.lib" node16/bin
145140
acquireExternalTool "$NODE_URL/v${NODE20_VERSION}/$PACKAGERUNTIME/node.exe" node20/bin
146141
acquireExternalTool "$NODE_URL/v${NODE20_VERSION}/$PACKAGERUNTIME/node.lib" node20/bin
147142
if [[ "$PRECACHE" != "" ]]; then
@@ -152,8 +147,6 @@ fi
152147
# Download the external tools only for Windows.
153148
if [[ "$PACKAGERUNTIME" == "win-arm64" ]]; then
154149
# todo: replace these with official release when available
155-
acquireExternalTool "$UNOFFICIAL_NODE_URL/v${NODE16_UNOFFICIAL_VERSION}/$PACKAGERUNTIME/node.exe" node16/bin
156-
acquireExternalTool "$UNOFFICIAL_NODE_URL/v${NODE16_UNOFFICIAL_VERSION}/$PACKAGERUNTIME/node.lib" node16/bin
157150
acquireExternalTool "$NODE_URL/v${NODE20_VERSION}/$PACKAGERUNTIME/node.exe" node20/bin
158151
acquireExternalTool "$NODE_URL/v${NODE20_VERSION}/$PACKAGERUNTIME/node.lib" node20/bin
159152
if [[ "$PRECACHE" != "" ]]; then
@@ -163,30 +156,24 @@ fi
163156

164157
# Download the external tools only for OSX.
165158
if [[ "$PACKAGERUNTIME" == "osx-x64" ]]; then
166-
acquireExternalTool "$NODE_URL/v${NODE16_VERSION}/node-v${NODE16_VERSION}-darwin-x64.tar.gz" node16 fix_nested_dir
167159
acquireExternalTool "$NODE_URL/v${NODE20_VERSION}/node-v${NODE20_VERSION}-darwin-x64.tar.gz" node20 fix_nested_dir
168160
fi
169161

170162
if [[ "$PACKAGERUNTIME" == "osx-arm64" ]]; then
171163
# node.js v12 doesn't support macOS on arm64.
172-
acquireExternalTool "$NODE_URL/v${NODE16_VERSION}/node-v${NODE16_VERSION}-darwin-arm64.tar.gz" node16 fix_nested_dir
173164
acquireExternalTool "$NODE_URL/v${NODE20_VERSION}/node-v${NODE20_VERSION}-darwin-arm64.tar.gz" node20 fix_nested_dir
174165
fi
175166

176167
# Download the external tools for Linux PACKAGERUNTIMEs.
177168
if [[ "$PACKAGERUNTIME" == "linux-x64" ]]; then
178-
acquireExternalTool "$NODE_URL/v${NODE16_VERSION}/node-v${NODE16_VERSION}-linux-x64.tar.gz" node16 fix_nested_dir
179-
acquireExternalTool "$NODE_ALPINE_URL/v${NODE16_VERSION}/node-v${NODE16_VERSION}-alpine-x64.tar.gz" node16_alpine
180169
acquireExternalTool "$NODE_URL/v${NODE20_VERSION}/node-v${NODE20_VERSION}-linux-x64.tar.gz" node20 fix_nested_dir
181170
acquireExternalTool "$NODE_ALPINE_URL/v${NODE20_VERSION}/node-v${NODE20_VERSION}-alpine-x64.tar.gz" node20_alpine
182171
fi
183172

184173
if [[ "$PACKAGERUNTIME" == "linux-arm64" ]]; then
185-
acquireExternalTool "$NODE_URL/v${NODE16_VERSION}/node-v${NODE16_VERSION}-linux-arm64.tar.gz" node16 fix_nested_dir
186174
acquireExternalTool "$NODE_URL/v${NODE20_VERSION}/node-v${NODE20_VERSION}-linux-arm64.tar.gz" node20 fix_nested_dir
187175
fi
188176

189177
if [[ "$PACKAGERUNTIME" == "linux-arm" ]]; then
190-
acquireExternalTool "$NODE_URL/v${NODE16_VERSION}/node-v${NODE16_VERSION}-linux-armv7l.tar.gz" node16 fix_nested_dir
191178
acquireExternalTool "$NODE_URL/v${NODE20_VERSION}/node-v${NODE20_VERSION}-linux-armv7l.tar.gz" node20 fix_nested_dir
192179
fi

Diff for: src/Misc/layoutbin/runsvc.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ if [ -f ".path" ]; then
1010
echo ".path=${PATH}"
1111
fi
1212

13-
nodever=${GITHUB_ACTIONS_RUNNER_FORCED_NODE_VERSION:-node16}
13+
nodever="node20"
1414

1515
# insert anything to setup env when running as a service
1616
# run the host process which keep the listener alive

0 commit comments

Comments
 (0)