mac(El Capitan)の開発環境をコマンドで作成する
新しいmac(El Capitan)に機械的に環境を作成したいとき、ansibleを使いましょう
ちなみに、El Capitanはyosemiteからアップデートした場合、色々な不具合があると散見しています。
クリーンインストールを推奨します。
xcode コマンドラインをインストール
1 2 |
sudo xcodebuild -license |
権限の変更
1 2 |
sudo chown -R $(whoami):admin /usr/local |
brewのインストール
公式サイト
より
1 2 |
% ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" |
※インストールコマンドはよく変わるので公式サイトを確認してください
インストール後にbrewをアップデートします。
1 2 |
% brew update |
ansibleのインストール
brewインストール後にansibleをインストールします。
1 2 |
% brew install ansible |
ansibleインストール後に確認します。
1 2 3 4 5 |
% ansible --version ansible 2.0.0.2 config file = configured module search path = Default w/o overrides |
準備
1 2 3 4 5 6 |
$ mkdir osx-provisioning $ cd osx-provisioning/ osx-provisioning $ osx-provisioning $ echo 'localhost' > hosts osx-provisioning $ vi playbook.yml |
playbook.yml
以下をplaybook.ymlに記載
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
- hosts: localhost # 実行対象のホストを指定 connection: local gather_facts: no sudo: no vars: # インストールしたいものや追加したいリポジトリをここで定義 homebrew_taps: - caskroom/cask - sanemat/font - caskroom/fonts - rcmdnk/homebrew-rcmdnkcask homebrew_packages: - { name: ansible } - { name: brew-cask } - { name: colordiff } - { name: coreutils } - { name: git } - { name: python } - { name: sqlite } - { name: wget } - { name: sl } - { name: zsh } - { name: openssl, state: linked, install_options: force } - { name: curl } - { name: ricty } - { name: htop-osx } homebrew_cask_packages: - { name: sourcetree } - { name: google-chrome } - { name: iterm2 } - { name: google-japanese-ime } - { name: sublime-text3 } - { name: textwrangler } - { name: karabiner } - { name: seil } - { name: usb-overdrive } - { name: day-o } - { name: the-unarchiver } - { name: openoffice } - { name: skitch } - { name: cakebrew } - { name: font-m-plus } - { name: font-migu1m } - { name: slack } - { name: forklift } - { name: atom } - { name: virtualbox } - { name: firefox } tasks: # 実行したい動作をtasksに記述 # brew tap - name: brew tap homebrew_tap: tap="{{ item }}" state=present with_items: homebrew_taps # update homebrew - name: brew update homebrew: update_homebrew=yes # brew - name: install brew package homebrew: > name={{ item.name }} state={{ item.state | default('latest') }} install_options={{ item.install_options | default() | join(',') if item.install_options is not string else item.install_options }} with_items: homebrew_packages register: brew_result # cask - name: install homebrew-cask homebrew: name=brew-cask state=latest - name: install cask package homebrew_cask: name={{ item.name }} state={{ item.state|default('installed') }} with_items: homebrew_cask_packages register: cask_result |
インストール
インストールします。
1 2 |
osx-provisioning % HOMEBREW_CASK_OPTS="--appdir=/Applications" ansible-playbook -i hosts -vv playbook.yml |
黄色や赤字が出たら構文やインストール対象をコメントアウトして再度実行して下さい。