将您的插件发布到 RubyGems.org

将您的插件发布到 RubyGems.org

Logstash 使用 RubyGems.org 作为其所有插件构件的存储库。开发完新的插件后,您可以通过将其发布到 RubyGems.org 来使其供 Logstash 用户使用。

许可证

Logstash 及其所有插件均在 Apache 许可证 2.0 版 ("ALv2") 下获得许可。如果您通过 RubyGems.org 公开发布您的插件,请确保您的 gemspec 中包含以下行

  • s.licenses = ['Apache License (2.0)']

发布到 RubyGems.org

您需要在 RubyGems.org 上拥有一个帐户

创建帐户后,从 RubyGems.org 获取 API 密钥。默认情况下,RubyGems 使用文件 ~/.gem/credentials 存储您的 API 密钥。这些凭据将用于发布 gem。将 usernamepassword 替换为您在 RubyGems.org 上创建的凭据

curl -u username:password https://rubygems.org.cn/api/v1/api_key.yaml > ~/.gem/credentials
chmod 0600 ~/.gem/credentials

在继续之前,请确保您的 gemspec 文件中包含正确的版本并提交更改。

  • s.version = '0.1.0'

要发布新 logstash gem 的 0.1.0 版本

bundle install
bundle exec rake vendor
bundle exec rspec
bundle exec rake publish_gem

执行 rake publish_gem

  1. 从 gemspec 文件读取版本 (s.version = '0.1.0')
  2. 检查本地存储库中是否存在该版本的标签。如果标签已存在,则中止该过程。否则,它会在您的本地存储库中创建一个新的版本标签。
  3. 构建 gem
  4. 将 gem 发布到 RubyGems.org

就是这样!您的插件已发布!Logstash 用户现在可以通过运行以下命令安装您的插件:

bin/plugin install logstash-output-mypluginname

其中 <plugintype> 是 inputoutputfiltercodec,<mypluginname> 是您新插件的名称。