AWS CLIハンズオンのための環境構築手順(OSX El Capitan版)です。
適宜更新していきます。
前提条件
- [JAWS-UG CLI] 総合案内: http://qiita.com/tcsh/items/14c3278f69ab073afe0f を確認して、必要な手順を終えていること。
0. PIPのインストール
コマンド
curl https://bootstrap.pypa.io/get-pip.py > get-pip.py
コマンド
sudo -H python get-pip.py
コマンド
which pip
結果(例)
/usr/local/bin/pip
1. AWS CLIのインストール
1.1. インストール
コマンド
sudo -H pip install awscli --ignore-installed six
コマンド
which aws
結果
/usr/local/bin/aws
参考: http://aws.amazon.com/jp/cli/
1.2. バージョン確認
コマンド
aws --version
結果
aws-cli/1.8.3 Python/2.7.5 Darwin/13.4.0
1.3. 自動補完の設定
.bashrcに追記
echo "complete -C '/usr/local/bin/aws_completer' aws" >> ~/.bashrc
コマンド
source ~/.bashrc
参考: AWS CLIのアップグレード
AWS CLIはバージョンアップが頻繁に行なわれるので、更新方法は覚えておきましょう。
コマンド
sudo pip install -U awscli --ignore-installed six
参考: AWS CLIのデグレード
1.3.16に戻す例:
コマンド
AWS_CLI_VERSION=1.3.16
sudo pip install awscli==${AWS_CLI_VERSION}
2. jsonlint
2.1. インストール
a. nodebrewを使う場合
コマンド
curl -L git.io/nodebrew | perl - setup
結果
Fetching nodebrew...
Installed nodebrew in $HOME/.nodebrew
========================================
Export a path to nodebrew:
export PATH=$HOME/.nodebrew/current/bin:$PATH
========================================
~/.bashrcにPATHを追記します。
.bashrcに追記
echo 'export PATH=$HOME/.nodebrew/current/bin:$PATH' >> ~/.bashrc
コマンド
which nodebrew
結果(例)
/Users/taro/.nodebrew/current/bin/nodebrew
nodeをバイナリでインストールします。(v6.10.0の例)
コマンド
nodebrew install-binary v6.10.0
コマンド
nodebrew use v6.10.0
node -v
結果(例)
v6.10.0
自動的にnpmもインストールされているはずです。
コマンド
which npm
結果(例)
/Users/taro/.nodebrew/current/bin/npm
コマンド
npm -v
結果(例)
3.10.10
jsonlintをインストールします。
コマンド
npm install jsonlint -g
-gを付けないとインストールに失敗するようです。
コマンド
which jsonlint
結果(例)
/Users/taro/.nodebrew/current/bin/jsonlint
b. macportsの場合
コマンド(MacPortsの場合)
sudo /opt/local/bin/port selfup
sudo /opt/local/bin/port install npm2
JSONフォーマットが壊れていないかどうか確認できます。JAWS-UG CLI必須のツール。
コマンド
sudo npm install -g jsonlint
gオプションは、システム全体共有のディレクトリにインストールすることを指示します。(デフォルトはカレントプロジェクトのディレクトリ)
結果
/opt/local/bin/jsonlint -> /opt/local/lib/node_modules/jsonlint/lib/cli.js
jsonlint@1.6.2 /opt/local/lib/node_modules/jsonlint
├── JSV@4.0.2
2.2. jsonlintコマンドのテスト
正常サンプル
コマンド
echo '{"key":"value"}' | jsonlint
結果
{
"key": "value"
}
異常サンプル
コマンド
echo '{"key"}' | jsonlint
結果
[Error: Parse error on line 1:
{"key"}
------^
Expecting ':', got '}']
3. yamllint
CloudFormationでYAMLを利用するときに必要となります。
3.1. インストール
コマンド
sudo pip install yamllint
もしくは
コマンド
sudo pip install yamllint --ignore-installed six