ci: macos: use cached macports install
authorAndres Freund <andres@anarazel.de>
Sat, 19 Aug 2023 19:40:45 +0000 (12:40 -0700)
committerAndres Freund <andres@anarazel.de>
Sat, 19 Aug 2023 21:38:56 +0000 (14:38 -0700)
commitdd2a731d9caffa8c9f6d82f2b72dd460b67decd7
tree6220ee3261fd200ccce6285544acb68a79ac8831
parentdcfc49c1b652dfe41273579aeaf6b454c51f037b
ci: macos: use cached macports install

A significant chunk of the time on the macos CI task is spent installing
packages using homebrew. The downloads of the packages are cached, but the
installation needs to happen every time. We can't cache the whole homebrew
installation, because it is too large due to pre-installed packages.

Speed this up by installing packages using macports and caching the
installation as .dmg. That's a lot faster than unpacking a tarball.

In addition, don't install llvm - it wasn't enabled when building, so it's
just a waste of time/space.

This substantially speeds up the mac CI time, both in the cold cache and in
the warm cache case (the latter from ~1m20s to ~5s).

It doesn't seem great to have diverging sources of packages for CI between
branches, so backpatch to 15 (where CI was added).

Discussion: https://postgr.es/m/20230805202539.r3umyamsnctysdc7@awork3.anarazel.de
Backpatch: 15-, where CI was added
.cirrus.yml
src/tools/ci/ci_macports_packages.sh [new file with mode: 0755]