Pythonで簡単なコマンドラインツールを作ってみた その3 pyenv編

2016年12月25日日曜日

pyenv Python

Python

前回までで仮想環境の準備をしました。今回は準備した仮想環境上にPythonの環境を構築します。

方針

私は開発環境とテスト環境は分けて構築するのが良いと考えています。これは、開発環境では動作したのに、リリース先の環境では動作しなかったという事態を避けたいためです。ですので、pyenvを使って独立した環境を準備することにします。

作り方

コマンドの使い方は公式のドキュメントを参照してください。ここでは、今回の開発で行ったユースケースごとに、どうやって環境を作ったかを説明します。

前回までの準備で以下のツールを使用できるようになっています。

開発環境とテスト環境を用意する

# プロジェクト用のディレクトリを作成する(開発環境)
mkdir my-python-tool
cd my-python-tool

# 使いたいPythonのバージョンを用意する
pyenv install 3.5.2

# 上記のPythonをベースに開発環境を用意する
pyenv virtualenv 3.5.2 dev

# プロジェクト用のディレクトリで有効な環境に設定する
pyevn local dev

# テスト用のディレクトリを作成する(テスト環境)
cd ../
mkdir my-python-tool_test
cd my-python-tool_test

# テスト環境を用意する
pyenv virtualenv 3.5.2 test

# テスト用のディレクトリで有効な環境に設定する
pyevn local test

環境が汚れた場合にきれいな環境を作り直す

cd my-python-tool_test

# テスト環境をアンインストール
pyenv uninstall test
pyenv-virtualenv: remove /home/vagrant/.pyenv/versions/3.5.2/envs/test? y # y を入力してエンター

# 再度テスト環境を作成する(この時、.python-version が存在していれば pyenv local test は不要)
pyenv virtualenv 3.5.2 test

まとめ

pyenvを使って、独立した開発環境とテスト環境を用意しました。次回はPython開発での構成について書こうと思います。