Giter Club home page Giter Club logo

macos-image-templates's Introduction

macOS Packer Templates for Tart

Repository with Packer templates to build macOS Tart virtual machines to use with Cirrus Runners, Cirrus CI or any other automation.

The following image variants are currently available:

  • macos-{sequoia,sonoma}-base image has only brew pre-installed and the latest version of macOS available
  • macos-{sequoia,sonoma}-xcode:N image is based on macos-{sequoia,sonoma}-base image and has Xcode N with Flutter pre-installed
  • macos-runner:sonoma image is a variant of xcode:N with 3 latest versions of Xcode pre-installed and xcodes tool to switch between them.

See a full list of VMs available here.

Release Cadence

Once a new version of Xcode is released, we will initiate a GitHub release which will automatically build and push a new version of the macos-{sequoia,sonoma}-xcode:N image as well as macos-runner:sonoma. This generally happens within 24 hours of a release. Please watch this repository releases to get notified about new images.

Update Cadence

Some of the images are regularly getting rebuild in order to update the pre-installed packages. The following images are updated monthly on the first Saturday of the month:

  • ghcr.io/cirruslabs/macos-{sequoia,sonoma}-base
  • ghcr.io/cirruslabs/macos-sonoma-xcode:{16-beta,latest,15.4,15.3,15.2}
  • ghcr.io/cirruslabs/macos-sequoia-xcode:{16-beta}

Note that ghcr.io/cirruslabs/macos-runner:sonoma is updated every Sunday and this image is optimised for startup on Cirrus Runners and Cirrus CI services.

macos-image-templates's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

macos-image-templates's Issues

Pre-download some iOS/watchOS/iPadOS major releases to XCode images

Each XCode bundles only the latest iOS/watchOS/iPadOS "platforms". For example, XCode 14.0.1 bundles iOS 16.0, while 14.1 only bundles 16.1. While for some teams it might be a pretty minor change, the inability to target the same platform when switching XCode versions without pipeline changes might be a large friction point.

Also, while we don't, some teams run tests on multiple older versions to verify compatibility. Not bundling platforms images probably save a lot of space, but it adds overhead when you need them, so you either should do pre-setup chores or check for platforms inside the image, which leads to longer pipeline runs.

I don't have a particularly good policy in my mind for this problem, but I think voicing it and bringing the discussion to this might be reasonable.

Command Line Tools outdated

Can we get a catalina-xcode-12.3 image?

My use case is running valgrind (https://github.com/LouisBrunner/valgrind-macos) which is pretty fragile when it comes to versions. I currently use catalina-base and install Apple's "Command Line Tools" manually but that's a PITA in CI because the normal process involves the user clicking on buttons see https://apple.stackexchange.com/a/195963 .

A catalina-xcode-12.3 image should do the job. valgrind compiles fine on big-sur-xcode-12.3. But I can't switch to big-sur because valgrind just won't run work there properly, it's not supported yet.

mojave-xcode-10.3 not starting

I've been trying to use the mojave-xcode-10.3 image in my builds, but they won't seem to start. Also, I've noted that the image isn't listed on the official documentation. Aren't the image supported yet, and if so, when can we expect it to be πŸ˜„

Shorten the initial startup time of macOS vm.

First, thank you for your great products!

I am currently building a CI/CD with tart, using packer build to create vm images, but the initial setup of macOS (language selection ~ agreement) takes a long time. Also, not everything is done automatically and sometimes it stops in the middle.

So I thought to save the vm image that finished the initial setup in the registry (ghcr.io) and tart pull, but it seems that the state is not saved.

Is there any solution?

Also, I am thinking that the vm environment should be destroyed after each CI/CD build, but maybe I am wrong here. What do you think?

OSX big-sur-base update removed sudo permissions / coredumps now inaccessible

@fkorotkov Unfortunately it seems the update in #37 removed the rights to sudo. We used sudo to change the permissions of /cores so we can get corefiles for crashes during CI. Unfortunately without changing the permissions on /cores, no core files are logged :(

ls -ld /cores/ || true
drwxr-xr-x  2 root  wheel  64 Jan  1  2020 /cores/
id || true
uid=501(admin) gid=20(staff) groups=20(staff),12(everyone),61(localaccounts),79(_appserverusr),80(admin),81(_appserveradm),98(_lpadmin),264(_webdeveloper),701(com.apple.sharepoint.group.1),33(_appstore),100(_lpoperator),204(_developer),250(_analyticsusers),395(com.apple.access_ftp),398(com.apple.access_screensharing),399(com.apple.access_ssh),400(com.apple.access_remote_ae)
ulimit -c unlimited
sudo chmod 777 /cores || true
sudo: a terminal is required to read the password; either use the -S option to read from standard input or configure an askpass helper
sudo: a password is required
sudo -n id || true
sudo: a password is required

And indeed, without that no core files are created:

sleep 5 & kill -SEGV $! || true
sleep 5
/var/folders/tn/f_9sf1xx5t14qm_6f83q3b840000gn/T/scripts6694d2c422acd208a0072939487f6999.sh: line 10:  3132 Segmentation fault: 11  sleep 5
ls -l /cores/ || true

Resize "the disk" of an existing image?

I wonder if it's possible to adjust the disk size of an VM, e.g. on cloning (leaving aside, stopped image). I am in a situation where I use prebuilt VMs built from https://github.com/cirruslabs/macos-image-templates, but I eventually lack disk space.

While I can build a custom image with packer and etc. to accommodate the needs (thanks for open-sourcing these templates as well), I would prefer not to do it, rather just "adjust the size disk in VM", if possible... It could also help when iterating on something without realizing how much space would you need in VM.

Latest Flutter stable release

Have a plugin where the build requires the latest stable Flutter SDK (1.10.0) and builds are currently failing is the images are using the previous stable release? Any chance of the image will be updated soon or is that part of looking to supporting Catalina?

WebDriver not working in mojave-base when it worked in high-sierra-base

Build that were auto-upgraded from high-sierra-base to mojave-base or with an updated .cirrus.yml are stuck with the following prompt:

{"value":{"error":"session not created","message":"Could not create a session: You must enable the 'Allow Remote Automation' option in Safari's Develop menu to control Safari via WebDriver.","stacktrace":""}}
error: test failed, to rerun pass '--test web'

https://cirrus-ci.com/task/4760821944549376?command=lumen_web_test#L260

The .cirrus.yml already contained sudo safaridriver --enable calls, which do succeed, but unlike on high-sierra-base, this is not enough to get Safari working with Web Driver.

Can you enable some setting in the image to fix this?

Xcode 11.4.1

Xcode 11.4.1 has just been released. Could the Catalina images be upgraded?

compilation errors on catalina-xcode

I'm not exactly sure what's happening here, but we're seeing C-compilation errors (unable to find libcpp.algorithm) on the new catalina-xcode container that we did not see on mojave.

warning: include path for stdlibc++ headers not found; pass '-stdlib=libc++' on the 
command line to use the libc++ standard library instead [-Wstdlibcxx-not-found]
c-blosc/internal-complibs/snappy-1.1.1/snappy-stubs-internal.cc:29:10: fatal error: 
'algorithm' file not found
#include <algorithm>

(full task here https://cirrus-ci.com/task/6660339609632768?command=pip#L387-L455)

This occurs while building numcodecs on mac, but only with python 3.6, so I assume their sdist may also be playing a role here? or perhaps its the only one in our dependencies that exposes the issue.

this should be sufficient to replicate:

task:
  name: macos 3.6 catalina
  osx_instance:
    image: catalina-xcode
  setup_script:
    - curl https://repo.continuum.io/miniconda/Miniconda3-latest-MacOSX-x86_64.sh > install.sh
    - bash install.sh -b -p $HOME/conda
    - conda install --yes -c conda-forge setuptools
    - conda install -yn base conda=4.8.1  # 4.8.2 completely breaks py3.6 at the moment
    - conda install -y python=3.6
    - pip install zarr

I am trying to fix this on my own, maybe by adding something to includes? but figured I would mention it in case there is a more general catalina thing that might be useful to include by default in the osx container... thanks.

macOS image clock is off

I'm able to correct it like this:

  set_clock_script:
    - sudo sntp -sS pool.ntp.org
    - date # to print out the date and verify

Before adding this step, I was finding the clock to be off by well over an hour for the timezone it was set to. this messed up some JWT logic I was trying to enable. This might be as intended (if someone else on that machine changes the date manually), but just trying to verify.

Support for macOS Mojave and Xcode 10

I'm wondering when macOS Mojave and Xcode 10 will be available so we could declare the image to be something like

osx_instance:
  image: mojave-xcode-10.0

Intermittent big-sur-xcode failures when starting up VMs

Persistent worker failed to start the task: Parallels isolation failed: failed to create VM cloned from "big-sur-xcode-13": Parallels VM operation failed: failed to get info for VM with "big-sur-xcode-13" UUID or name: Parallels command returned non-zero exit code: ""

Likely the same as #45 again, as this does crop up every couple of month after being fixed.
https://cirrus-ci.com/task/5744194047180800

(We'll likely remove 10.15 at some point later this year anyway).

High Sierra no longer available?

It looks like Mojave is now supported, but the High Sierra templates have disappeared. This has broken all of our macOS based CI (template isn't found).

Was this breakage intentional? Are we required to move to Mojave to continue using Cirrus?

/cc @gspencergoog

ALL Images need to be rebuilt with latest version of homebrew

Raising here, as it seems more appropriate than cirruslabs/cirrus-ci-docs#878.

Bintray has been shut down Homebrew/discussions#691, forcing dependencies to be built from source or fail. In our case, this adds more than 30 minutes to the CI times unless brew update-reset is ran first (which still adds ~5 minutes compared to baseline).

Upstream Homebrew migrated all packages to GitHub packages in April, but Cirrus's images have not yet been rebuilt with this bundled.

Installing Gem Fails With Permission Error

πŸ‘‹ Hi,

first I would like to thank you for offering your great CI service for FLOSS software for free. It works really well and is quite fast too. After this round of well deserved praise 😊, it is probably time to write about the problem I noticed with some of the recent changes to the macOS images.

It seems like it is no longer possible to install Ruby gems with the Homebrew’s version of Ruby. I created a project that shows this problem here. As you can see in the log file, the command gem install fails with a file permission error:

#<Thread:0x00007fc9e9a8ebb0@/usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/request_set.rb:168 run> terminated with exception (report_on_exception is true):
/usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems.rb:873:in `initialize': Permission denied @ rb_sysopen - /usr/local/lib/ruby/gems/2.6.0/cache/ronn-0.7.3.gem (Errno::EACCES)
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems.rb:873:in `open'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems.rb:873:in `write_binary'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/remote_fetcher.rb:315:in `cache_update_path'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/remote_fetcher.rb:159:in `download'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/source.rb:206:in `download'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/resolver/specification.rb:101:in `download'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/request_set.rb:174:in `block (2 levels) in install'
#<Thread:0x00007fc9e9a8ef20@/usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/request_set.rb:168 run> terminated with exception (report_on_exception is true):
/usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems.rb:873:in `initialize': Permission denied @ rb_sysopen - /usr/local/lib/ruby/gems/2.6.0/cache/mustache-1.1.0.gem (Errno::EACCES)
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems.rb:873:in `open'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems.rb:873:in `write_binary'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/remote_fetcher.rb:315:in `cache_update_path'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/remote_fetcher.rb:159:in `download'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/source.rb:206:in `download'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/resolver/specification.rb:101:in `download'
	from /usr/local/Cellar/ruby/2.6.5/lib/ruby/2.6.0/rubygems/request_set.rb:174:in `block (2 levels) in install'
ERROR:  While executing gem ... (Errno::EACCES)
    Permission denied @ rb_sysopen - /usr/local/lib/ruby/gems/2.6.0/cache/mustache-1.1.0.gem

The installation even fails with this permission error if I use the option --user-install.

Another minor problem I noticed is the banner β€œHigh Sierra images were deprecated! Auto upgraded to mojave-xcode-11.2.1”. This message seems rather strange, since cirrus.yml already specifies a macOS Mojave image.

Latest Flutter version

Hi,

When will the images be updated with the latest available flutter version?

Regards,
Sascha

Upgrade to temurin17

While trying to build an example android application from https://github.com/rgl/hello-world-kotlin-android, the build failed in cirrus due to the jdk version, it requires 17 but 11 is installed.

Here's the relevant log:

Welcome to Gradle 8.0!
For more details see https://docs.gradle.org/8.0/release-notes.html
Starting a Gradle Daemon (subsequent builds will be faster)
FAILURE: Build failed with an exception.
* Where:
Build file '/private/var/folders/dc/nt69f7cn7r5bgp90zkhs00000000gn/T/cirrus-ci-build/app/build.gradle' line: 2
* What went wrong:
An exception occurred applying plugin request [id: 'com.android.application']
> Failed to apply plugin 'com.android.internal.application'.
   > Android Gradle plugin requires Java 17 to run. You are currently using Java 11.
      Your current JDK is located in /Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home
      You can try some of the following options:
       - changing the IDE settings.
       - changing the JAVA_HOME environment variable.
       - changing `org.gradle.java.home` in `gradle.properties`.

Images timezone defaulted to PDT

Currently, the image timezone defaults to PDT(GMT-8). This might come as unexpected details for some people or in some setups. Given it might be wrong or difficult for tart to set the timezone of the host machine to the VM, it might be worth setting the default image timezone to GMT.

macOS image for Gitlab

Hi,

I'm wondering if it would be a good idea to create a new type of macOS image for Tart. Since Tart is designed to operate in a CI/CD environment, I believe it could be extremely helpful for many people to have a macOS image that includes all the necessary tools to run pipelines on GitLab.

In that macOS image, we can install:

  • Fastlane
  • Cocoapods
  • Git
  • Git flow
  • Xcode
  • Homebrew
  • Gitlab-runner
  • Jq
  • ...

Thx for reading,
Valmnt

sonoma-vanilla Package is outdated

The sonoma-vanilla package is outdated. I've opened two PRs in the last days to update the macOS 14 Beta. Those have been merged, but the package here is still an older version.

Do I or you need to to anything else?

Reduce image size to what is absolutely necessary

I'm using tart on a few mac mini M1 which have only a 256G SSD in them. Currently, I can run at most one VM that uses the xcode template, as I need to allocate at least 90G of disk space for each of them. This is because the template script assigns said 90G and tart won't let me create smaller disk images than what the base VM uses. I have no way of adding more disk space to these mac minis.

The base template assigns only 40G. In a local test I could build xcode image with a disk size of "only" 70G, and I think it could be reduced further. Given the fact that users can always allocate more disk space but never less, the xcode template should be adjusted.

Catalina-flutter image ships with xcode11.3 & 11.4 but defaults to 11.3

One of the warning messages as they fly by mentions /Applications/Xcode-11.3.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.2.sdk.

This is different than my expectation that the Catalina-flutter image uses Xcode 11.4.

I think the image should on boot run "xcode-select -s /Applications/Xcode-11.4.app", or get rid of the old Xcode version?

Legality of distributed images?

As I see, you're publicly distributing images containing huge parts of macOS via GitHub Package Registry. My question is: is it legal at all for you to distribute these and for me as a user to download?

I thought that macOS EULA doesn't allow redistribution:

Except as expressly permitted in Section 3, you may not rent, lease, lend, sell, redistribute or sublicense the Apple Software.

Section 3 is kinda hard to interpret, but I didn't notice anything related to "each Lessee must review and agree to be bound by the terms of this" when downloading images via Tart.

So, even if this is legal, it would be great to have an explanation what usage terms cover stuff-that-is-downloaded-via-Tart.

M1 based macOS between 2-3x slower than the Intel

Example of before and after:
https://cirrus-ci.com/task/4541429968535552
image

https://cirrus-ci.com/task/5354105359564800
image

This is going to hurt during the occasional peaks coming from PRs raised by our many contributors, especially as there's on only one instance allowed to run across the three repositories using the macOS runners in our GH organization.


I had a look into getting possible funding to switch to a paid plan, but of the options available, none of them actually fit us. We are neither a private personal, nor a private organization. Rather, a not-for-profit public organization maintaining open-source projects - perhaps the wording of the plan descriptions is terrible?
image

Add docker support

I would like to build M1 compatible docker images on Cirrus-CI.

Since it's currently not part of the image, I tried setting up docker as part of the pipeline (this is my WIP branch: aptos-labs/aptos-core#1876) but it doesn't work as it's a bit tricky to install docker on Mac in a headless environment apparently.

Would be great if a base image with pre-installed docker was made available.

Thanks!

Error: Could not find Xcode version that satisfied version spec: '14'

Currently getting this error on latest (14.3-beta) when trying to use maxim-lobanov/setup-xcode@v1

Prepare all required actions
[2](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:2)
Getting action download info
[3](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:3)
Download action repository 'actions/cache@v3' (SHA:6998d139ddd3e68c71e9e398d8e40b71a2f39812)
[4](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:4)
Download action repository 'maxim-lobanov/setup-cocoapods@v1' (SHA:31e82105189a8cffe06c0d8da5cd9bd79d49d258)
[5](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:5)
Run ./.github/actions/setup-cocoapods
[8](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:9)
Prepare all required actions
[9](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:10)
Getting action download info
[10](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:11)
Download action repository 'maxim-lobanov/setup-xcode@v1' (SHA:9a697e2b393340c3cacd97468baa318e4c883d98)
[11](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:12)
Run ./.github/actions/setup-xcode
[12](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:14)
Run maxim-lobanov/setup-xcode@v1
[15](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:18)
Switching Xcode to version '14'...
[16](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:19)
Available versions:
[17](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:20)
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
[18](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:21)
β”‚ (index) β”‚ version  β”‚ buildNumber β”‚ releaseType β”‚ stable β”‚               path               β”‚
[19](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:22)
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
[20](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:23)
β”‚    0    β”‚ '14.3.0' β”‚ '14E5197f'  β”‚   'Beta'    β”‚ false  β”‚ '/Applications/Xcode-14.3.0.app' β”‚
[21](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:24)
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
[22](https://github.com/tonalfitness/mobile/actions/runs/4226284165/jobs/7339663969#step:4:25)
Error: Could not find Xcode version that satisfied version spec: '14'
name: Setup Xcode
description: Switch to correct version of Xcode

runs:
  using: composite
  steps:
    - name: Setup Xcode
      uses: maxim-lobanov/setup-xcode@v1
      with:
        xcode-version: 14
  swiftlint:
    timeout-minutes: 10
    runs-on: ghcr.io/cirruslabs/macos-ventura-xcode:14
    steps:
      # ...
      - name: Setup Xcode
        uses: ./.github/actions/setup-xcode
      # ...

Intermittent monterey-xcode-13.2 failures when starting up VMs

Persistent worker failed to start the task:
Parallels isolation failed: failed to create VM cloned from "monterey-xcode-13.2": Parallels VM operation failed: failed to clone VM "cirrus-5b4fe44b-3170-4198-8d0b-9f5dea734084": Parallels command returned non-zero exit code: "Failed to clone the VM: Unable to perform the operation because "monterey-xcode-13.2" is in the intermediate state. Unpacking "/Users/administrator/Parallels/monterey-xcode-13.2.pvmi/config.pvsp" has been started but not finished yet. Please finish unpacking."

This occurs from time to time, and regularly enough to be noticeable/remembered.

Minor template changes

Deduplications and moving things around to slightly better places (I think.)

https://github.com/cirruslabs/macos-image-templates/blob/master/templates/base.pkr.hcl#L75

  • you set up DNS after you do a bunch of stuff requiring Internet connectivity. Move this block to the top of this template or into the vanilla template, maybe?

https://github.com/cirruslabs/macos-image-templates/blob/master/templates/base.pkr.hcl#L38-L46

versus

https://github.com/cirruslabs/macos-image-templates/blob/master/templates/xcode.pkr.hcl#L42-L52

  • you don't need this twice, surely.

The default shell for GitHub Actions steps which run in a shell is bash. Everything you add to /Users/admin/.zprofile should probably also be added to /Users/admin/.profile so that Bash stuff doesn't fail due to a lack of configuration for that shell. I'm not saying that all shells should be accommodated, only the GHA default.

https://github.com/cirruslabs/macos-image-templates/blob/master/templates/xcode.pkr.hcl#L138-L144

  • This block fails for me currently, and I'm not sure why. Was this tested?

I don't have time to submit a PR to make this easier for you, sorry about that. These are easy things, though.

fastlane command not found

Is fastlane not installed anymore on big-sur-xcode-NN? My pipeline is failing when I want to execute a fastlane script with /var/folders/sr/b58hwhtj0jbcf4r09zmg0wlc0000gn/T/scriptsc67cf22746e995af5a25367951baa2ff.sh: line 7: fastlane: command not found

This used to work until recently, so maybe something has changed?

Upgrade to Ventura 13.4

Is it possible to upgrade the version of MacOS Ventura to 13.3 or higher?
With Ventura 13.3, Apple dded a new version of BLAS and LAPACK after more than 10 years without any update.
It will very useful for project related to high performance computing.

Thanks a lot for helping us to test our code on the new Apple M1!

Intermittent monterey-xcode-13.3 failures when starting up VMs

Similar to #43

Persistent worker failed to start the task: Parallels isolation failed: failed to create VM cloned from "monterey-xcode-13.3": Parallels VM operation failed: failed to get info for VM with "monterey-xcode-13.3" UUID or name: Parallels command returned non-zero exit code: "Failed to get VM config: The virtual machine could not be found. The virtual machine is not registered in the virtual machine directory on your Mac."

Happens from time to time, for example:
https://cirrus-ci.com/task/4679658435248128

Rebuild catalina images

I know the catalina images are deprecated but could you nevertheless trigger a rebuild?

The brew in these images is 12 months old and uses an old upstream URL that makes installing packages fallback to building from source, which takes forever (and fails if the source is on gnu.org, which is down currently -- but that's a different issue):
https://cirrus-ci.com/task/4557392686874624?logs=brew#L1

Missing Git LFS

Hi there! I'm testing out Cirrus Runners for our iOS build! It would be great if Git LFS came installed on the runners. Thank you!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.