bbatsche.Python
Ansible Python サイトロール
このロールは、Pythonで書かれたアプリケーションを実行するためのNginxサイトを作成します。Python 2または3のどちらかをサポートしています。
要件
このロールは、特定のディレクトリへのアクセスを許可するためにLinuxファイルシステムのACLと「web-admin」というグループを利用します。これらのステップを手動で設定するか、bbatsche.Base
ロールをインストールできます。
ロール変数
domain
— 作成するサイトのドメイン。python_version
— このサイトで使用するPythonのバージョン。デフォルトは「3」です。env_name
— このサーバーが「開発」「本番」または他のタイプのサーバーかどうか。開発サーバーはグローバルなPythonのバイナリとパッケージを使用し、他のタイプはサイトディレクトリでvirtualenvを使用します。デフォルトは「dev」です。copy_wsgi
— サイトにスタブのpassenger_wsgi.pyファイルをコピーするかどうか。テストに便利です。デフォルトは「いいえ」です。http_root
— すべてのサイトディレクトリが作成されるディレクトリ。デフォルトは「/srv/http」です。nginx_configs
— ドメインのserver
ブロックの最後に追加する追加の設定ファイル。これらのファイルは/etc/nginx/conf.d
にコピーする必要があります。デフォルトはドメインのPython設定:[ python-{{ domain }}.conf ]
です。
依存関係
このロールは bbatsche.Nginx
に依存しています。最初にこのロールをインストールする必要があります:
ansible-galaxy install bbatsche.Nginx
例のプレイブック
- hosts: servers
roles:
- { role: bbatsche.Python, domain: my-python-site.dev }
ライセンス
MIT
テスト
このロールには、各タスクを個別または全体としてテストするための仕様が含まれています。テストを実行するには、最初に Vagrant と VirtualBox をインストールする必要があります。仕様ファイルは Serverspec を使用して書かれているため、Ruby および Bundler が必要です。
すべての仕様を実行するには:
$ gem install bundler
$ bundle install
$ rake
仕様スイートは、Ubuntu Trusty Tahr (14.04)、Xenial Xerus (16.04)、および Bionic Beaver (18.04) を対象としています。
利用可能なrakeタスク(および仕様)を確認するには:
$ rake -T
これらの仕様は 冪等性 をテストすることを目的としていません。指定されたタスクが期待されるステップを実行するかどうかを確認することを目的としています。冪等性は統合テストを通じて別にテストされます。