Installs Xcode Command Line Tools

Brian Call



3,561 latest version

5.0 quality score

Version information

  • 0.0.32 (latest)
  • 0.0.31
  • 0.0.2
  • 0.0.1
released Dec 21st 2018
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 4.7.0 < 7.0.0
  • Darwin

Start using this module


call/xcode_cli_tools — version 0.0.32 Dec 21st 2018


Table of Contents

  1. Description
  2. Setup - The basics of getting started with XcodeCLI
  3. Usage - Configuration options and additional functionality
  4. Reference - An under-the-hood peek at what the module is doing and how
  5. Limitations - OS compatibility, etc.
  6. Development - Guide for contributing to the module


This module installs Xcode Command Line Tools. Works with Puppet >= 4.x and OS X >= 10.9.

Idempotency is satisfied via a custom fact, which provides information of existing Xcode and Xcode Command Line Tools installation. If no Xcode installation or Xcode Command Line Tools installation is found, the module proceeds with installation.

Xcode CLI tools are expected to be found via pkgutil and Xcode is expected to be found in specified location (defaulting to standard /Applications/Xcode).


What XcodeCLI affects

This module will install XCode Command Line Tools. Additionally, the module introduces the following new facts:

  • xcode_installed
  • xcode_version
  • xcode_cli_installed

Setup Requirements

Requires Apple SUS to be configured properly. If you don't know how to configure it, don't worry, the Apple defaults will work just fine.

Beginning with XcodeCLI



Class XcodeCLI:

  • installs Xcode Command Line Tools


  • xcode_installed
  • xcodeversion
  • xcode_cli_installed


Requires OS X version to be newer than 10.9 Mavericks. This module will not work on older OS X versions.

This module is tested with Puppet 4 and might not work on older versions.


Contributions and pull requests are welcome.

Original work Copyright 2016 Tampere University of Technology

Modified work Copyright 2018 Brian Call

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at


Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Original Author

Original credit for this module goes to Antti Pettinen at Tampere University of Technology.