Skip to content

Commit

Permalink
[ci] Build Linux release binaries on Ubuntu 22.04
Browse files Browse the repository at this point in the history
Mainline support for Ubuntu 20.04 ended in September and it is deprecated on
GitHub actions starting February 2025. Accordingly, we should build on 22.04
instead, meaning that the two latest LTS releases will continue to be supported.
Since 22.04 uses glibc 2.35, the new release will no longer work on systems
using a lower glibc version, including Debian Bullseye (mainline support ended
in August). Update README.md to reflect this.
  • Loading branch information
fhanau committed Dec 18, 2024
1 parent 0033829 commit 60b67a4
Show file tree
Hide file tree
Showing 8 changed files with 11 additions and 11 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/_bazel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ on:
image:
type: string
required: false
default: "ubuntu-20.04"
default: "ubuntu-22.04"
os_name:
type: string
required: false
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/npm-types.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
echo "version=${{ inputs.prerelease == false && '4' || '0'}}.$(cat src/workerd/io/supported-compatibility-date.txt | tr -d '-').${{ inputs.patch }}" >> $GITHUB_OUTPUT;
echo "release_version=1.$(cat src/workerd/io/supported-compatibility-date.txt | tr -d '-').0" >> $GITHUB_OUTPUT;
build-and-publish-types:
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
needs: version
steps:
- uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/npm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ jobs:
# if: github.repository_owner == 'cloudflare'
name: Publish `workerd` to NPM
needs: [version, publish-arch-specific]
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
steps:
- name: Checkout Repo
uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-python-runtime.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ on:

jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
name: build Python runtime
steps:
- uses: actions/checkout@v4
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
outputs:
version: ${{ steps.echo.outputs.version }}
# version job uses ubuntu 24.04, this way we don't have to install the updated clang while
# the build job uses 20.04 for libc compatibility.
# the build job uses 22.04 for libc compatibility.
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -56,11 +56,11 @@ jobs:
build:
strategy:
matrix:
os: [ubuntu-20.04, macos-15, windows-2022]
os: [ubuntu-22.04, macos-15, windows-2022]
target-arch: [ X64 ]
include:
- os-name: linux
os: ubuntu-20.04
os: ubuntu-22.04
bazel-config: release_linux
# Based on runner availability, we build both Apple Silicon and (cross-compiled) x86
# release binaries on the macos-15 runner.
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
matrix:
os:
[
{ name : linux, image : ubuntu-20.04 },
{ name : linux, image : ubuntu-22.04 },
{ name : macOS, image : macos-15 },
{ name : windows, image : windows-2022 }
]
Expand All @@ -40,7 +40,7 @@ jobs:
]
include:
# Add an Address Sanitizer (ASAN) build on Linux for additional checking.
- os: { name: linux, image: ubuntu-20.04 }
- os: { name: linux, image: ubuntu-22.04 }
config: { suffix: -asan }
# Windows has a custom non-debug bazel config.
- os: { name : windows, image : windows-2022 }
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/type-snapshot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ concurrency:

jobs:
check-snapshot:
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
with:
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ For more details about command-line usage, use `workerd --help`.
Prebuilt binaries are distributed via `npm`. Run `npx workerd ...` to use these. If you're running a prebuilt binary, you'll need to make sure your system has the right dependencies installed:

* On Linux:
* glibc 2.31 or higher (already included on e.g. Ubuntu 20.04, Debian Bullseye)
* glibc 2.35 or higher (already included on e.g. Ubuntu 22.04, Debian Bookworm)
* On macOS:
* macOS 13.5 or higher
* The Xcode command line tools, which can be installed with `xcode-select --install`
Expand Down

0 comments on commit 60b67a4

Please sign in to comment.