さまざまな出来事があります*1。
サークルの共用サーバ*2の /tmp
にtweets.zip*3をダウンロードしてからS3にアップロードしていたのですが、同じような作業をいくらでもやりそうな気がしたのでメモを残しておきます。
一時ディレクトリに移動する
mktemp -d
とかでサクッと作って移動しましょう。
$ cd `mktemp -d`
AWS CLIをインストールする
たぶんどのご家庭のサーバにもバージョンを問わずPythonが入っており、またpipも導入済みであると信じましょう。
ふつうに pip install awscli
するとNFS上にインストールされて地獄を見るかもしれません。
幸いなことにpipでは --target
オプションによってパッケージのインストール先を指定することができます。
これで一時ディレクトリ上にインストールしちゃいましょう。
キャッシュを保存してるとそれも重い原因になるかもしれません。
今のところ*4キャッシュの保存先をオプションで指定できないのでひとまず --no-cache-dir
をします*5。
$ pip install --no-cache-dir --target `pwd`/pip awscli
AWS CLIを使えるようにする
さて、 ./pip/bin/aws
を実行すればAWS CLIを叩けるのですが、このファイルの実体はPythonスクリプトです。
多くの場合、いまインストールしたパッケージのインストール先は、Pythonのランタイムが走査する先として指定されていないと思います。
これをランタイムから見えるようにしましょう。
PYTHONPATH
環境変数にさきほど --target
に渡したパスを指定してやればよいですが、何度も書くのは面倒なので export
しちゃいます。
ついでに PATH
にも入れましょう。
$ export PYTHONPATH=`pwd`/pip $ export PATH=`pwd`/pip/bin:$PATH
$ aws help
最後に認証情報の設定をしましょう。環境変数で済ませます。
$ export AWS_ACCESS_KEY_ID=WANNNYAKAFUNYAFUNYA $ export AWS_SECRET_ACCESS_KEY=WANNYANNNYANNWANNMATSURI $ export AWS_DEFAULT_REGION=ap-northeast-1
これでAWS CLIが使えるようになりましたね。存分に作業しましょう。