geerlingguy.mas

Ansible角色:Mac App Store CLI (mas)(已移动)

已移动:该角色已移至geerlingguy.mac集合中。请查看此问题以获取迁移指南和更多信息。

CI

在macOS上安装 mas,并从Mac App Store安装macOS应用程序。

需求

  • Homebrew:需要已经安装了homebrew(您可以使用geerlingguy.homebrew在您的Mac上安装它)。
  • Mac App Store账号:您可以选择在运行该角色之前通过图形界面登录Mac App Store,或者在运行角色之前设置mas_emailmas_password。出于安全考虑,如果您打算使用此角色进行登录,建议至少使用vars_prompt提示输入密码;不要在剧本中存储未加密的密码!

角色变量

可用变量如下,附带默认值(见defaults/main.yml):

mas_email: ""
mas_password: ""

您的Mac App Store账号的凭据。您安装的应用程序应该已由此账号购买或注册。

如果静态设置这些变量(例如,在包含的变量文件中),您应该使用Ansible Vault加密清单。否则,您可以使用vars_prompt在剧本运行时提示输入密码。

如果将它们留空并且不提示输入,角色会假定您已经通过其他方式(例如,通过图形界面或mas signin [email])登录,不会尝试再次登录。

mas_signin_dialog: false

回退到内置的Mac App Store对话框完成登录。如果设置为是,您必须指定前面提到的mas_email变量,该变量将在对话框中自动填写,并提示您输入密码,如果该账号启用了双重身份验证,则需输入2FA验证码。

mas_installed_apps:
  - { id: 425264550, name: "Blackmagic Disk Speed Test (3.0)" }
  - { id: 411643860, name: "DaisyDisk (4.3.2)" }
  - { id: 498486288, name: "Quick Resizer (1.9)" }
  - { id: 497799835, name: "Xcode (8.1)" }

要确保在计算机上安装的应用程序列表。您可以使用mas list获取所有已安装应用程序的ID,并可以使用mas search [应用名称]搜索ID。name属性不是权威的,仅用于提供更好的剧本输出信息。

mas_upgrade_all_apps: false

是否运行mas upgrade,该命令将升级所有已安装的Mac App Store应用程序。

依赖项

  • (软依赖)geerlingguy.homebrew

示例剧本

- hosts: localhost
  vars:
    mas_installed_apps:
      - { id: 497799835, name: "Xcode (8.1)" }
  roles:
    - geerlingguy.homebrew
    - geerlingguy.mas

请参见Mac开发Ansible剧本以获取此角色使用的示例。

许可

MIT / BSD

作者信息

该角色由Jeff Geerling于2016年创建,他是Ansible for DevOps的作者。

关于项目

Mac App Store CLI installation for macOS

安装
ansible-galaxy install geerlingguy.mas
许可证
mit
下载
24.1k
拥有者
Father, author, developer, maker. Sometimes called "an inflammatory enigma". #stl #drupal #ansible #k8s #raspberrypi #crohns