Logstash uses RubyGems.org as its repository for all pluginartifacts. Once you have developed your new plugin, you can make it available toLogstash users by simply publishing it to RubyGems.org.
Logstash and all its plugins are licensed underApache License, version 2 ("ALv2").If you make your plugin publicly available via RubyGems.org,please make sure to have this line in your gemspec:
s.licenses = ['Apache License (2.0)']
To begin, you’ll need an account on RubyGems.org
After creating an account,obtain an APIkey from RubyGems.org. By default, RubyGems uses the file ~/.gem/credentials
to store your API key. These credentials will be used to publish the gem.Replace username
and password
with the credentials you created atRubyGems.org:
curl -u username:password https://rubygems.org/api/v1/api_key.yaml > ~/.gem/credentialschmod 0600 ~/.gem/credentials
Before proceeding, make sure you have the right version in your gemspec fileand commit your changes.
s.version = '0.1.0'
To publish version 0.1.0 of your new logstash gem:
bundle installbundle exec rake vendorbundle exec rspecbundle exec rake publish_gem
Executing rake publish_gem
:
s.version = '0.1.0'
)That’s it! Your plugin is published! Logstash users can now install your pluginby running:
bin/plugin install logstash-output-mypluginname
It is not required to contribute your source code tologstash-plugins github organization, butwe always welcome new plugins!
Some of the many benefits of having your plugin in the logstash-pluginsrepository are:
To begin migrating your plugin to logstash-plugins, simply create a newissue inthe Logstash repository. When the acceptance guidelines are completed, we willfacilitate the move to the logstash-plugins organization using the recommendedgithub process.