Cirrus CI has stoppped offering multiple versions of macOS images.
There is now only 1 single image, but with multiple XCode versions
pre-installed, selectable using the 'xcodes' app:
$ xcodes list | grep Installed
15.2 (15C500b) (Installed)
15.3 (15E204a) (Installed)
15.4 (15F31d) (Installed, Selected)
16.0 (16A242d) (Installed)
$ clang -v
Apple clang version 15.0.0 (clang-1500.3.9.4)
Target: arm64-apple-darwin23.6.0
Thread model: posix
InstalledDir:
/Applications/Xcode_15.4.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
$ xcodes select 16.0
xcodes requires superuser privileges to select an Xcode
macOS User Password:
Selected /Applications/Xcode_16.app/Contents/Developer
$ clang -v
Apple clang version 16.0.0 (clang-1600.0.26.3)
Target: arm64-apple-darwin23.6.0
Thread model: posix
InstalledDir:
/Applications/Xcode_16.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Any Cirrus CI jobs using an unsupported macOS image name will get
forcably changed at runtime to bot the only permitted image,
currently sonoma. IOW, our attempts to test multiple versions were
not doing anything useful, as evidenced by this message shown in
the Cirrus CI web pages for job tasks:
"Only ghcr.io/cirruslabs/macos-runner:sonoma is allowed.
Automatically upgraded."
Replace (failed) testing of multiple macOS versions, with testing
of multiple XCode versions - 15.4 and 16.0
Signed-off-by: Daniel P. Berrangé <berrange(a)redhat.com>
---
ci/cirrus/build.yml | 2 ++
ci/cirrus/macos-13.vars | 16 ----------------
ci/gitlab/builds.yml | 12 +++++++-----
ci/manifest.yml | 9 +++++----
4 files changed, 14 insertions(+), 25 deletions(-)
delete mode 100644 ci/cirrus/macos-13.vars
diff --git a/ci/cirrus/build.yml b/ci/cirrus/build.yml
index c0ac05f4d9..110d426aad 100644
--- a/ci/cirrus/build.yml
+++ b/ci/cirrus/build.yml
@@ -10,6 +10,7 @@ env:
PKG_CONFIG_PATH: "@PKG_CONFIG_PATH@"
PYTHON: "@PYTHON@"
MAKE: "@MAKE@"
+ XCODE: "@XCODE@"
VIR_TEST_VERBOSE: "1"
VIR_TEST_DEBUG: "1"
@@ -24,6 +25,7 @@ build_task:
- git fetch origin "${CI_MERGE_REQUEST_REF_PATH:-$CI_COMMIT_REF_NAME}"
- git reset --hard "$CI_COMMIT_SHA"
build_script:
+ - if test -n "$XCODE"; then xcodes select "$XCODE"; fi
- if test "$(uname)" = "Darwin"; then meson setup build
--optimization 0; else meson setup build; fi
- meson dist -C build --no-tests
- meson compile -C build
diff --git a/ci/cirrus/macos-13.vars b/ci/cirrus/macos-13.vars
deleted file mode 100644
index d23fe3cd47..0000000000
--- a/ci/cirrus/macos-13.vars
+++ /dev/null
@@ -1,16 +0,0 @@
-# THIS FILE WAS AUTO-GENERATED
-#
-# $ lcitool manifest ci/manifest.yml
-#
-#
https://gitlab.com/libvirt/libvirt-ci
-
-CCACHE='/opt/homebrew/bin/ccache'
-CPAN_PKGS=''
-CROSS_PKGS=''
-MAKE='/opt/homebrew/bin/gmake'
-NINJA='/opt/homebrew/bin/ninja'
-PACKAGING_COMMAND='brew'
-PIP3='/opt/homebrew/bin/pip3'
-PKGS='augeas bash-completion black ccache codespell cppi curl diffutils docutils
flake8 gettext git glib gnu-sed gnutls grep json-c libiscsi libpcap libssh libssh2 libxml2
libxslt make meson ninja perl pkg-config python3 qemu readline'
-PYPI_PKGS='pytest'
-PYTHON='/opt/homebrew/bin/python3'
diff --git a/ci/gitlab/builds.yml b/ci/gitlab/builds.yml
index 214119b902..f9685e542d 100644
--- a/ci/gitlab/builds.yml
+++ b/ci/gitlab/builds.yml
@@ -624,28 +624,29 @@ x86_64-freebsd-14:
UPGRADE_COMMAND: pkg upgrade -y
-aarch64-macos-13:
+aarch64-macos-14-xcode-15-4:
extends: .cirrus_build_job
needs: []
allow_failure: false
variables:
- CIRRUS_VM_IMAGE_NAME: ghcr.io/cirruslabs/macos-ventura-base:latest
+ CIRRUS_VM_IMAGE_NAME: ghcr.io/cirruslabs/macos-runner:sonoma
CIRRUS_VM_IMAGE_SELECTOR: image
CIRRUS_VM_INSTANCE_TYPE: macos_instance
INSTALL_COMMAND: brew install
- NAME: macos-13
+ NAME: macos-14
PATH_EXTRA:
/usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin
PKG_CONFIG_PATH:
/usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libpcap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig
UPDATE_COMMAND: brew update
UPGRADE_COMMAND: brew upgrade
+ XCODE: 15.4
-aarch64-macos-14:
+aarch64-macos-14-xcode-16-0:
extends: .cirrus_build_job
needs: []
allow_failure: false
variables:
- CIRRUS_VM_IMAGE_NAME: ghcr.io/cirruslabs/macos-sonoma-base:latest
+ CIRRUS_VM_IMAGE_NAME: ghcr.io/cirruslabs/macos-runner:sonoma
CIRRUS_VM_IMAGE_SELECTOR: image
CIRRUS_VM_INSTANCE_TYPE: macos_instance
INSTALL_COMMAND: brew install
@@ -654,3 +655,4 @@ aarch64-macos-14:
PKG_CONFIG_PATH:
/usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libpcap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig
UPDATE_COMMAND: brew update
UPGRADE_COMMAND: brew upgrade
+ XCODE: 16
diff --git a/ci/manifest.yml b/ci/manifest.yml
index 647510ed2f..6f8263f242 100644
--- a/ci/manifest.yml
+++ b/ci/manifest.yml
@@ -203,19 +203,20 @@ targets:
variables:
RPM: skip
- macos-13:
+ macos-14:
jobs:
- arch: aarch64
+ suffix: -xcode-15-4
variables:
PATH_EXTRA:
/usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin
PKG_CONFIG_PATH:
/usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libpcap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig
-
- macos-14:
- jobs:
+ XCODE: 15.4
- arch: aarch64
+ suffix: -xcode-16-0
variables:
PATH_EXTRA:
/usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin:/usr/local/opt/libpcap/bin:/usr/local/opt/libxslt/bin
PKG_CONFIG_PATH:
/usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/libpcap/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig
+ XCODE: "16.0"
ubuntu-2204:
jobs:
--
2.46.0