私は実際のLogstashプラグインであるruby gemファイルを持っており、Logstashプラグインgemに必要な別の宝石があります。どのように私は私がそうするとき、私のLogstashに宝石を得るのですかカスタムLogstashプラグインにローカル宝石の依存関係を追加するには?
require "gem_name"
それは「gem_nameを見つけることができない」と言っていないのですか?
私は実際のLogstashプラグインであるruby gemファイルを持っており、Logstashプラグインgemに必要な別の宝石があります。どのように私は私がそうするとき、私のLogstashに宝石を得るのですかカスタムLogstashプラグインにローカル宝石の依存関係を追加するには?
require "gem_name"
それは「gem_nameを見つけることができない」と言っていないのですか?
は(プラグインname.gemspecという名前のプラグインフォルダに)あなたのgemspecに依存して行を追加します。例えば。あなたのプラグインが残り、クライアントが必要な場合:
s.add_runtime_dependency "rest-client", '>= 1.8.0'
あなたは依存関係hereで有効なgemspecファイルの例を見つけることができます。有効なバージョンの宣言を見つけるには、rubygems.orgにあなたの選択したプラグインを見てください。
bundle install
のすべての依存関係が宣言されたら、gem build your-plugin-name.gemspec
であなたの宝石を構築してください。それから、インストールしてテストしてください:bin/logstash-plugin install logstash-filter-mypluginname.gem
。
ルビーバージョンの問題を避けるために、RVMを強くお勧めします。 this tutorialにつけておくほうが簡単かもしれません。さらに援助が必要な場合はお知らせください。
いつものように、ローカル宝石をプラグインに依存するものとして含めるようにしてください。 次に、あなたのプラグインをインストールする前に、このようLogstash内のローカル依存関係をインストールします。
/path/to/logstash/logstash-plugin install --no-verify /path/to/local/gem
そして、あなたのプラグインをインストール
/path/to/logstash/logstash-plugin install /path/to/local/plugin
質問は「*ローカル*宝石の依存関係を追加する方法」です、定期的に発行された宝石の依存関係ではありません。 – makhdumi