Willy
(Willy)
1
Discourse の最新バージョンを使用しており、/var/discourse/plugins ディレクトリに有効なプラグインをインストールしようとしています。プラグインフォルダをそこにコピーしても、当然ながらインストールされません。いつも ./launcher rebuild app を実行しています。プラグインをインストールできる唯一の方法は、app.yml を使用することです。
テスト目的でオフラインインストールを行いたいと考えています。テスト用プラグインをインストールするために GitHub リポジトリを開くのは、私には非効率的に思えます。
代わりに本番サイトではなく開発環境を設定してみてはいかがでしょうか?リポジトリを直接 plugins ディレクトリにクローンできます。また、本番サイトのデータに影響を与えず、再構築時にユーザーへのダウンタイムも発生しません。開発環境のセットアップ方法に関するトピックは、Discourse Meta - dev-install ガイド をご覧ください。
Willy
(Willy)
3
本番環境ではローカルプラグインのインストールがブロックされていますか?本番環境を再構築することなく、開発環境に変換することは可能ですか?
chapoi
4
本番環境のバックアップを取得し、ローカルで復元するのはどうでしょうか?
Willy
(Willy)
5
わかった、最後に知るべきは、本番環境でローカルプラグインのインストールがブロックされているかどうかだ。誰か知っていることを祈ろう。
chapoi
6
「ブロックされている」のではなく、単に機能しないだけです。
Nate が述べた通り、最善の対応策はローカル開発環境をセットアップすることか、あるいはご希望であれば app.yml を引き続き使用することです。
Willy
(Willy)
7
なぜ、本番環境にプラグインをインストールする際にソースコードを公開することが標準的な慣行なのでしょうか。これは、Discourse が非公開のプラグインを許可していないということでしょうか?トークン付きのリポジトリであっても、ホストされているプラットフォーム(GitHub、GitLab など)上では「公開プラグイン」とみなされます。
chapoi
8
プライベートな GitHub/GitLab リポジトリは、引き続きプライベートです。トークンは単にサーバーがそれをクローンするためのパスワードであり、他の誰もコードを閲覧することはできません。プライバシーは保たれます。
Install plugins on a self-hosted site のプライベートリポジトリに関するセクションをご覧ください。
ローカルで開発環境を設定してプラグインをテストしてください。dev-install
そうしないと、プラグインを変更するたびに完全な本番環境の再ビルドを実行する必要があり、時間の無駄になります。特に、チームが最近開発ビルドの時間を数秒まで短縮したことを考えると、その傾向は顕著です。
~/code または同等のディレクトリにプラグインをクローンし、プラグインディレクトリからそれらをシンボリックリンクしてください。