nick_fields.osx_ci

Ansible Role: OSX-CI

GPL-3.0 licensed Build Status

This role sets up and configures the necessary software to build and deploy OSX/iOS applications. You can use the configured Mac as a Jenkins agent.

It creates a user called ci user to run builds on the Mac. This user is set up to allow remote access via ssh. The role also installs:

Requirements

You need to have Xcode Command Line Tools installed on the target machine. Available versions can be found on the Apple Downloads Page. You can also install it via terminal using:

xcode-select --install

Keep in mind that this command needs user input, so it cannot be run remotely (via ssh).

Since the role needs to set up an authorized ssh key for the ci user for remote login, you must create and provide a public ssh key beforehand. The public ssh key should be on the machine running the role.

Role Variables

Here are the role variables and their default values. You can see all defaults in defaults/main.yml:

ci_user: ci_user
ci_user_uid: 5013
ci_user_group: ci_user

These define the name, UID, and group of the ci user.

ci_user_public_key_location:

This is the path to the ssh public key that will be added to the authorized keys for remote login.

ci_user_default_keychain: login.keychain
ci_user_default_keychain_password:

These set the name and password for the default keychain created for the ci user.

cask_packages: ['java8']

These are the brew cask packages that will be installed.

ruby_gems: ['fastlane']

These are the ruby gems that will be installed globally.

homebrew_packages:

This is a list of additional brew packages to be installed.

Dependencies

None.

Example Playbook

Here’s an example of how to use this role:

- hosts: localhost
  vars:
    homebrew_packages: ['git']
    ci_user_public_key_location: '/path/to/public_key'
    ci_user_default_keychain_password: 'keychain_pass'
  roles:
    - osx-ci

License

GPL-3.0

Author Information

This role was created in 2019 by MacStadium, Inc.

Maintainer(s)

Informazioni sul progetto

Forked Ansible role that installs common CI tools on OSX with arm64/M1 support

Installa
ansible-galaxy install nick_fields.osx_ci
Licenza
gpl-3.0
Download
9.3k
Proprietario