Chef resources and recipes for managing and provisioning macOS.
- Chef 13
- Chef 14
- OS X El Capitan 10.11
- macOS Sierra 10.12
- macOS High Sierra 10.13
- macOS Mojave 10.14
node['macos']['admin_user'] = 'vagrant'
node['macos']['admin_password'] = 'vagrant'
Each of these attributes defaults to vagrant since our resources are developed with the Vagrant paradigm. In other words, the user and password declared here should be an admin user with passwordless super-user rights.
Disables automatic checking and downloading of software updates.
Usage: include_recipe 'macos::disable_software_updates'
No attributes used in this recipe.
Prevent macOS from falling asleep, disable the screensaver, reboot upon power failure, enable wake on LAN, enable remote login (SSH) and adjust several other settings to always keep macOS on and available.
Usage: include_recipe 'macos::keep_awake'
Attributes used | Default value |
---|---|
node['macos']['remote_login_enabled'] |
true |
node['macos']['network_time_server'] |
'time.windows.com' |
node['macos']['time_zone'] |
'America/Los_Angeles' |
Installs the latest Xcode the platform supports. See the Xcode resource documentation if you need more flexibility.
credentials
data bag containing an apple_id
data bag item,
or a user/password pair set under node['macos']['apple_id']
.
Usage: include_recipe 'macos::xcode'
Attributes used | Default value |
---|---|
node['macos']['xcode']['version'] |
'9.3' |
node['macos']['xcode']['simulator']['major_version'] |
nil |
node['macos']['apple_id']['user'] |
nil |
node['macos']['apple_id']['password'] |
nil |
The macos::xcode
recipe can utilize a credentials
data bag with an apple_id
data bag item. The item should contain valid Apple ID credentials. For example:
Example:
{
"id": "apple_id",
"apple_id": "farva@spurbury.gov",
"password": "0k@yN0cR34m"
}