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@xxxxxxxxxx> --- 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