Bug 63459 - Let's have Plugins Manager added in JMeter by default
Summary: Let's have Plugins Manager added in JMeter by default
Status: REOPENED
Alias: None
Product: JMeter
Classification: Unclassified
Component: Main (show other bugs)
Version: 5.1.1
Hardware: All All
: P2 enhancement with 1 vote (vote)
Target Milestone: ---
Assignee: JMeter issues mailing list
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-05-22 15:23 UTC by Sebastian Boga
Modified: 2019-12-27 13:52 UTC (History)
2 users (show)



Attachments
Add plugins to lib/ext (667 bytes, patch)
2019-06-04 10:16 UTC, orimarko
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Sebastian Boga 2019-05-22 15:23:15 UTC
There are some plugins that are very useful for our work as JMeter testers.
We should put the Plugins Manager by default in JMeter main product.
 How to have Plugins Manager in JMeter it's described here: https://jmeter-plugins.org/install/Install/

It's just a matter of having a JAR file in ext\lib. The  plugins-manager.jar file is public and available to anyone.

Let's avoid doing this manually everytime a new version of JMeter is released.
Comment 1 Philippe Mouawad 2019-05-22 15:57:34 UTC
(In reply to Sebastian Boga from comment #0)
> There are some plugins that are very useful for our work as JMeter testers.
> We should put the Plugins Manager by default in JMeter main product.
>  How to have Plugins Manager in JMeter it's described here:
> https://jmeter-plugins.org/install/Install/
> 
> It's just a matter of having a JAR file in ext\lib. The  plugins-manager.jar
> file is public and available to anyone.
> 
> Let's avoid doing this manually everytime a new version of JMeter is
> released.

Unless JMeter-Plugins project contributes it to our projects, that's not something we can do.

You can ask there if they would be ok.

Closing for now, will reopen if that can happen.

Regards
Comment 2 orimarko 2019-06-04 05:17:46 UTC
Plugins Manager is a extension tool for JMeter, which support many features

I suggest adding its latest jar to lib/ext folder by default

Approved in Plugins group:
https://groups.google.com/forum/#!topic/jmeter-plugins/6eO1ZuQ8pCo

"I see no problem for JMeter core to include Plugins 
Manager JAR into release archives. 
Andrey Pokhilko "
Comment 3 orimarko 2019-06-04 10:16:09 UTC
Created attachment 36608 [details]
Add plugins to lib/ext

Need to add the file to lib/ext
Comment 4 Vladimir Sitnikov 2019-06-04 10:35:34 UTC
1) -1 to committing jar files under source control
2) JMeter Plugins defaults (see https://jmeter-plugins.org/repo/) to "http://" URLs, so it would open remote code execution issues to JMeter users which is bad to ship by default

I think the exact implementation (if there's an agreement to ship J-P by default) should go after Gradle migration.
Comment 5 Vladimir Sitnikov 2019-06-04 11:15:22 UTC
Note: even in case Plugins Manager is shipped by default, users would still have to reinstall the plugins.

I'm not sure a mere inclusion of Plugins Manager would change much for user experience.
Comment 6 Sebastian Boga 2019-06-04 11:37:25 UTC
If I am sending you a script via email or skype and in my script I am using a certain plugin (let's say Dummy Sampler or Custom JMeter Functions) then this Plugins Manager is automatically identifying what you need in order to open my script, it will install it automatically and open the script without errors.

In case you have only JMeter core, an error message will be displayed saying that JMeter doesn't understand jmx file and from that error you don't understant too much or what you need.

From a user point of view (my ponint of view) knowing that any jmx file you can open without really knowing the exact plugins you need to install, make a huge difference not only form experience point of view but also from time spent (or wasted) when trying to open any jmx script from the team you are working with.
Comment 7 Philippe Mouawad 2019-06-04 11:49:24 UTC
Hello

@Orimarko, thanks for patch, but I don't think the patch is complete, it only excludes plugins-manager from being committed.

A better patch would be to include in build the plugin and put it in lib/ext.

But we need to ensure that it complies with Apache policies:

- License is ok as it's under Apache 2
- I have a doubt regarding the tracking, I think it's ok but I am not sure:

https://github.com/undera/jmeter-plugins-manager/blob/55acd003468317af11e2576326987b7714f8e938/src/main/java/org/jmeterplugins/repository/JARSourceHTTP.java#L433

Regards
Comment 8 Felix Schumacher 2019-06-04 18:17:29 UTC
I am not convinced that including the plugin manager in JMeter is a good idea.

 * Apache is not about distributing binaries, but source.
 * If we would include plugin manager without change, we would adore one vendor (the plugin site), which is against Apache policy

I believe this has been discussed before on the mailing list and should be discussed there again, if the old arguments are not valid anymore.
Comment 9 orimarko 2019-06-05 07:15:34 UTC
License is ok as it's under Apache 2 according to site https://jmeter-plugins.org/wiki/PluginsManager/
Comment 10 orimarko 2019-06-05 07:22:58 UTC
About statistics tracking it can be remove by define property "jpgc.repo.sendstats" as false, See 


https://github.com/undera/jmeter-plugins-manager/blob/5a985589aea4b548bf95815ca6d1fa19da1fb91f/src/main/java/org/jmeterplugins/repository/PluginManager.java#L102
Comment 11 Philippe Mouawad 2019-06-08 12:46:59 UTC
(In reply to orimarko from comment #10)
> About statistics tracking it can be remove by define property
> "jpgc.repo.sendstats" as false, See 
> 
> 
> https://github.com/undera/jmeter-plugins-manager/blob/
> 5a985589aea4b548bf95815ca6d1fa19da1fb91f/src/main/java/org/jmeterplugins/
> repository/PluginManager.java#L102

Thanks.

@Felix, we can distribute it with empty repository url to avoid favoring any site.

An alternative would be for plugins manager to contribute the plugin which we could adapt.

Regarding stats, we could replace them by an Apache hosted system if anything is available which I am not sure about.

It would be nice if we could end up with a tool similar to what Eclipse or Jenkins provide.
Comment 12 Sebastian Boga 2019-12-27 13:52:21 UTC
what has been decided for this issue?