community.general.mas – Manage Mac App Store applications with mas-cli

From Get docs
Ansible/docs/2.10/collections/community/general/mas module


community.general.mas – Manage Mac App Store applications with mas-cli

Note

This plugin is part of the community.general collection (version 1.3.2).

To install it use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.mas.


New in version 0.2.0: of community.general


Synopsis

  • Installs, uninstalls and updates macOS applications from the Mac App Store using the mas-cli.

Requirements

The below requirements are needed on the host that executes this module.

  • macOS 10.11+
  • mas-cli (https://github.com/mas-cli/mas) 1.5.0+ available as mas in the bin path
  • The Apple ID to use already needs to be signed in to the Mac App Store (check with mas account).

Parameters

Parameter Choices/Defaults Comments

id

list / elements=integer

The Mac App Store identifier of the app(s) you want to manage.

This can be found by running mas search APP_NAME on your machine.

state

string

  • absent
  • latest
  • present

Desired state of the app installation.

The absent value requires root permissions, also see the examples.

upgrade_all

boolean

  • no

  • yes

Upgrade all installed Mac App Store apps.


aliases: upgrade



Notes

Note

  • This module supports check_mode.


Examples

- name: Install Keynote
  community.general.mas:
    id: 409183694
    state: present

- name: Install Divvy with command mas installed in /usr/local/bin
  community.general.mas:
    id: 413857545
    state: present
  environment:
    PATH: /usr/local/bin:{{ ansible_facts.env.PATH }}

- name: Install a list of apps
  community.general.mas:
    id:
      - 409183694 # Keynote
      - 413857545 # Divvy
    state: present

- name: Ensure the latest Keynote version is installed
  community.general.mas:
    id: 409183694
    state: latest

- name: Upgrade all installed Mac App Store apps
  community.general.mas:
    upgrade_all: yes

- name: Install specific apps and also upgrade all others
  community.general.mas:
    id:
      - 409183694 # Keynote
      - 413857545 # Divvy
    state: present
    upgrade_all: yes

- name: Uninstall Divvy
  community.general.mas:
    id: 413857545
    state: absent
  become: yes # Uninstallation requires root permissions

Authors

  • Michael Heap (@mheap)
  • Lukas Bestle (@lukasbestle)

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/general/mas_module.html