# How to speed up plugin development cycle

**URL:** <https://discuss.elastic.co/t/how-to-speed-up-plugin-development-cycle/137116>\
**Category:** Logstash\
**Created:** [June 23, 2018, 12:59pm UTC](https://discuss.elastic.co/t/how-to-speed-up-plugin-development-cycle/137116 "2018-06-23T12:59:17Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![ThickFreeze](https://avatars.discourse-cdn.com/v4/letter/t/22d042/32.png) [@ThickFreeze](https://discuss.elastic.co/u/ThickFreeze)\
**Post date:** [June 23, 2018, 12:59pm UTC](https://discuss.elastic.co/t/how-to-speed-up-plugin-development-cycle/137116/1 "2018-06-23T12:59:17Z")

</div>

I am developing a custom plugin and the "build, test, fix" cycle is very slow.

I have to:

1. Write the code.
2. Build the gem
3. Install the gem
4. Run logstash (which takes quite a while to startup)

Is there a way to speed up this process?

---

<div class="post-metadata">

**Author:** ![jakelandis](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/jakelandis/32/36163_2.png) [@jakelandis](https://discuss.elastic.co/u/jakelandis)\
**Post date:** [June 29, 2018, 11:18pm UTC](https://discuss.elastic.co/t/how-to-speed-up-plugin-development-cycle/137116/2 "2018-06-29T23:18:37Z")

</div>

Instead of building and install the gem for each iteration, you can point your Gemfile to the local directory as described here: [https://github.com/logstash-plugins/logstash-input-beats/blob/master/README.md#21-run-in-a-local-logstash-clone](https://github.com/logstash-plugins/logstash-input-beats/blob/master/README.md#21-run-in-a-local-logstash-clone)

You can check your Gemfile.lock to ensure to it is pointed to your local directory.

Can't help much with speeding up the code writing or Logstash restart time ... but if you like REPL driven development, you can use Logstash's `-i` [flag](https://www.elastic.co/guide/en/logstash/current/running-logstash-command-line.html) with irb or pry and instead of starting normally, it drop you into an interactive shell with all of Logstash's dependencies and load paths available.

---

<div class="post-metadata">

**Author:** ![ThickFreeze](https://avatars.discourse-cdn.com/v4/letter/t/22d042/32.png) [@ThickFreeze](https://discuss.elastic.co/u/ThickFreeze)\
**Post date:** [July 5, 2018, 10:48pm UTC](https://discuss.elastic.co/t/how-to-speed-up-plugin-development-cycle/137116/3 "2018-07-05T22:48:48Z")

</div>

Jake, this is great, exactly what I was looking for. 👍

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [August 2, 2018, 10:57pm UTC](https://discuss.elastic.co/t/how-to-speed-up-plugin-development-cycle/137116/4 "2018-08-02T22:57:40Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
