daml/infra/macos/scripts
Gary Verhaegen 5b2319e137
multistep macos setup (#5768)
multistep macos setup

This updates the macOS node setup instructions to avoid repeating
identical work and network traffic across all machines through
initialization by building a "daily" image with all the tools and code
we need.

CHANGELOG_BEGIN
CHANGELOG_END

* Fix 3-running-box to remount nix partition

* updated scripts to use multi-step process

* add copyright notices

Co-authored-by: nycnewman <edward@digitalasset.com>
2020-08-18 16:01:02 +02:00
..
com.digitalasset.macos-builder-crontab.plist Fix launchd killing VMWare process at end of script execution (#6006) 2020-05-18 10:54:15 -04:00
README.md Fix launchd killing VMWare process at end of script execution (#6006) 2020-05-18 10:54:15 -04:00
rebuild-crontask.sh multistep macos setup (#5768) 2020-08-18 16:01:02 +02:00
run-agent.sh multistep macos setup (#5768) 2020-08-18 16:01:02 +02:00
step1.sh multistep macos setup (#5768) 2020-08-18 16:01:02 +02:00
step2.sh multistep macos setup (#5768) 2020-08-18 16:01:02 +02:00

Example scripts

This directory contains some helper scripts. These assume a physical machine with a "builder" account configured.

com.digitalasset.macos-builder-crontab.plist

Example script for Launchctl scheduled rebuild of MacOS nodes. Run via

launctl load com.digitalasset.macos-builder-crontab.plist

and unload via

launctl unload com.digitalasset.macos-builder-crontab.plist

NOTE: AbandonProcessGroup key is requied for VMWare or the started vmx process is sent a SIGTERM signal by launchd, causing node to halt and not be left running at end of script. Different behaviour to VirtualBox.

rebuild-crontask.sh

Script called by launchctl job to force destroy and rebuild a VSTS node. Needs a PAT token with job access rights to check no active jobs on node being rebuilt.

run-agent.sh

Helper script to build a node. Called from the above script. Needs a PAT token for agent installation.

Other Catalina Topics

  • Disable Energy Saver settings in System Preferences to stop devices going into sleep mode
  • Delete GarageBand, iMovie, KeyNote, Pages, Sheets to save space and avoid annoying Update notification
  • May need to download Catalina installer on new release to ensure latest patched version
  • Consider creating SSH key pair and distribute public key to other nodes in authorized_keys to distrbute files more easily