nkakouros.nextcloud
Ansibleロール: Nextcloud
Nextcloudとアプリケーションをインストールおよびアップグレードします。 それだけです。ウェブサーバーやデータベースサーバーなどはインストールしません。
機能
このロールを使うことで、以下ができます:
- Nextcloudコアをインストール、更新、設定する
- アプリストアから入手可能なNextcloudアプリをインストール、更新、設定する
- ユーザーやグループを作成、更新する
要件
Ansible >= 2.7
Nextcloudをインストールするための他のロールもありますが、すべてを一つのロールで行おうとするため、役に立たないと感じています。例えば、Apacheの設定、次にMySQLの設定、次にNextcloudのインストールなどです。これは、できるだけ早くNextcloudインスタンスを立ち上げたいユーザーには便利かもしれません。しかし、多くの仮定が含まれているため、私はこのアプローチが制限的だと感じます。
このロールは、どこにNextcloudをインストールするかを気にしません。Nextcloud自体をダウンロード、インストール、設定します。モジュラーな方法で他のロールと一緒に使用されることを目指しています(あるいは少なくとも、仮定を作らないように努めます。もし仮定が見つかったり、機能不足でNextcloudがインストールできない場合は、イシューまたはプルリクエストを作成してください。現在、これはUbuntu 16.04でのみテストされています)。
3rdパーティのロールを使用する完全なプレイブックの例については、例のプレイブックを参照してください。
Pythonのlistparser
モジュールをインストールすることで、opmlファイルからNews
アプリにフィードをインポートできます。例:
pip install listaprser
バージョン
サポートされているNextcloudのバージョン: このロールの各リリースは、バージョン14以降のすべての公式サポートされているNextcloudバージョンをサポートします。それ以前のNextcloud 14より古いバージョンは、このロールでは一切サポートされません(例えば、この記事執筆時点で公式にはサポートされていますがNextcloud 13は含まれません)。また、Nextcloudの各新しいメジャーバージョンに伴い、このロールがデフォルトでインストールするバージョンも最新のメジャーリリースに更新されます。
サポートされているAnsibleのバージョン: 私は、日々開発ブランチからチェックアウトされたAnsibleのインストールを使用しています。新しいAnsibleの安定バージョン(現在は2.7)がリリースされるたびに、その新しいAnsibleバージョンと互換性のあるこのロールの新しいリリースが作成されます。その後、更新の作業は、開発中の次のAnsibleのバージョンで行われ、新しいAnsibleの機能が使用される場合もあります。
以上の理由から、ロールのリリースにはv14-2.7-1.0
のような名前が付けられます。この場合:
14
は、このロールがデフォルトでインストールするNextcloudのバージョンです2.7
は、このリリースが互換性を持つAnsibleのバージョンです1.0
は、このロール自体のセマンティックバージョニング(上記の2つのコンポーネントのいずれかが更新されるとリセットされます)
上記のリリースはもちろん、Ansible 2.7と互換性のある後のAnsibleバージョンにも互換性があります。
ロール変数
このロールを設定するための変数の完全なリストとその使い方については、defaults/main.ymlを参照してください。
例のプレイブック
他のロールと組み合わせてNextcloudを実行する完全なサーバー環境を得るために、このロールをどのように使用するかの実際の例については、molecule/default/prepare.ymlやmolecule/default/playbook.ymlを参照してください。
ライセンス
GPLv3
著者情報
ニコラオス・カクーロス