Skip to content

Commit

Permalink
🙈 Bump to Hugo 0.143.0, build with min glibc 2.17, and fix s390x + pp…
Browse files Browse the repository at this point in the history
…c64le builds (#210)

* 🙈 Retry glibc 2.17

* 📈 Bump s390x and ppc64le wheels to glibc 2.28

* 🍓 Use newer images instead of pins

* 🩸 Drop to Go 1.23.4 for s390x and ppc64le

* 👊 Try Hugo 0.143.0

* 🚧 Bump to latest ppc64le and s390x images

* 🚧 Go back to pinned images

* 🤞🏻 Test temporary pin to new QEMU

* 🚧 Avoid caching

* ⏮️ Reinstate glibc 2.17 compatibility everywhere

* 🤞🏻 Try Windows 2025 image for Windows i686
  • Loading branch information
agriyakhetarpal authored Feb 1, 2025
1 parent 82305b2 commit 9be6263
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 12 deletions.
19 changes: 13 additions & 6 deletions .github/workflows/cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,9 @@ concurrency:

env:
FORCE_COLOR: 3
CIBW_BUILD_VERBOSITY: 2
CIBW_BUILD_FRONTEND: "build"
CIBW_BUILD: "cp312-*"
CIBW_SKIP: "pp* *musllinux*"
CIBW_MANYLINUX_X86_64_IMAGE: "manylinux_2_28"
CIBW_MANYLINUX_AARCH64_IMAGE: "manylinux_2_28"

jobs:
sdist:
Expand Down Expand Up @@ -86,6 +83,7 @@ jobs:
- uses: mlugg/setup-zig@a67e68dc5c8281d9608136d3d7ca1b282213e4ac # v1.2.1
with:
version: 0.13.0
use-cache: false

- name: Build binary distribution (wheel) on Windows (arm64)
# We need to use cibuildwheel because it has experimental support for cross-compiling
Expand Down Expand Up @@ -114,7 +112,7 @@ jobs:

windows_i686_wheels:
name: i686-windows
runs-on: windows-latest
runs-on: windows-2025
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0
Expand All @@ -125,6 +123,7 @@ jobs:
- uses: mlugg/setup-zig@a67e68dc5c8281d9608136d3d7ca1b282213e4ac # v1.2.1
with:
version: 0.13.0
use-cache: false

# Note: cibuildwheel will manage installing 32-bit Python on Windows. We
# do not need to do that manually unless we use setup-python instead.
Expand Down Expand Up @@ -223,6 +222,10 @@ jobs:
- uses: docker/setup-qemu-action@49b3bc8e6bdd4a60e6116a5414239cba5943d3cf # v3.2.0
with:
platforms: all
# This should be temporary
# xref https://github.com/docker/setup-qemu-action/issues/188
# xref https://github.com/tonistiigi/binfmt/issues/215
image: tonistiigi/binfmt:qemu-v8.1.5

- name: Build binary distribution (wheel) on Linux (s390x)
uses: pypa/cibuildwheel@ee63bf16da6cddfb925f542f2c7b59ad50e93969 # v2.22.0
Expand All @@ -232,7 +235,7 @@ jobs:
env:
CIBW_ARCHS_LINUX: s390x
CIBW_BEFORE_ALL_LINUX: |
tarball="go1.23.5.linux-s390x.tar.gz"
tarball="go1.23.4.linux-s390x.tar.gz"
curl -LJO https://golang.org/dl/$tarball
mkdir $HOME/go_installed/
tar -C $HOME/go_installed/ -xzf $tarball
Expand All @@ -259,6 +262,10 @@ jobs:
- uses: docker/setup-qemu-action@49b3bc8e6bdd4a60e6116a5414239cba5943d3cf # v3.2.0
with:
platforms: all
# This should be temporary
# xref https://github.com/docker/setup-qemu-action/issues/188
# xref https://github.com/tonistiigi/binfmt/issues/215
image: tonistiigi/binfmt:qemu-v8.1.5

- name: Build binary distribution (wheel) on Linux (ppc64le)
uses: pypa/cibuildwheel@ee63bf16da6cddfb925f542f2c7b59ad50e93969 # v2.22.0
Expand All @@ -268,7 +275,7 @@ jobs:
env:
CIBW_ARCHS_LINUX: ppc64le
CIBW_BEFORE_ALL_LINUX: |
tarball="go1.23.5.linux-ppc64le.tar.gz"
tarball="go1.23.4.linux-ppc64le.tar.gz"
curl -LJO https://golang.org/dl/$tarball
mkdir $HOME/go_installed/
tar -C $HOME/go_installed/ -xzf $tarball
Expand Down
4 changes: 1 addition & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ concurrency:

env:
FORCE_COLOR: 3
CIBW_BUILD_VERBOSITY: 2
CIBW_SKIP: "pp* *musllinux*"
CIBW_BUILD_FRONTEND: "build"

Expand Down Expand Up @@ -79,8 +78,6 @@ jobs:
experimental:
needs: [style]
name: zig-${{ matrix.runs-on }}-${{ matrix.architecture }}-python-${{ matrix.python-version }}
env:
CIBW_BUILD_VERBOSITY: 2
runs-on: ${{ matrix.runs-on }}
strategy:
fail-fast: false
Expand Down Expand Up @@ -115,6 +112,7 @@ jobs:
- uses: mlugg/setup-zig@a67e68dc5c8281d9608136d3d7ca1b282213e4ac # v1.2.1
with:
version: 0.13.0
use-cache: false

- name: Restore Hugo builder cache
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -124,8 +124,8 @@ A subset of the platforms supported by Hugo itself are supported by these wheels
| ------------ | --------------- | -------------------------------------- |
| macOS | x86_64 (Intel) | ✅ macOS 10.13 (High Sierra) and later |
| macOS | arm64 (Silicon) | ✅ macOS 11.0 (Big Sur) and later |
| Linux | amd64 | ✅ glibc 2.24 and later |
| Linux | arm64 | ✅ glibc 2.24 and later |
| Linux | amd64 | ✅ glibc 2.17 and later |
| Linux | arm64 | ✅ glibc 2.17 and later |
| Linux | s390x | ✅ glibc 2.17 and later |
| Linux | ppc64le | ✅ glibc 2.17 and later |
| Windows | x86_64 ||
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

# ------ Hugo build configuration and constants ------------------------------------

HUGO_VERSION = "0.142.0"
HUGO_VERSION = "0.143.0"
# The Go toolchain will download the tarball into the hugo_cache/ directory.
# We will point the build command to that location to build Hugo from source
HUGO_CACHE_DIR = "hugo_cache"
Expand Down

0 comments on commit 9be6263

Please sign in to comment.