Hi Oleg,

*Naming*

Regarding the name, I've named it "global-events-plugin", because:

- *global* - because it listens to events right across the Jenkins context
- *events* - because I want to run groovy code in response to events

It's not limited to "RunListener" events, it also contains "Start" and 
"Stop" events for the plugin. I'd eventually like to extend it to 
incorporate even more events (along the lines of the "
extreme-notification-plugin 
<https://github.com/jenkinsci/extreme-notification-plugin/tree/master/src/main/java/org/jenkinsci/plugins/extremenotification>
"). 
I suppose it makes sense to incorporate *groovy* into the name, as it only 
currently supports running a groovy script. I see *groovy *as a defacto 
standard for Jenkins though... is it worth including in the plugin name?
I'd be happy to substitute *events* for *listener*, if you think it makes 
more sense. 

How about "*global-listener-plugin*" or "*groovy-events-plugin*" or "
*groovy-listener-plugin*"? (I don't really mind).

*Script Security*

Am I aware of the security implications of the plugin? Yes. This plugin can 
only be configured through the "Jenkins > Manage Jenkins > Configure 
System" page, which (as you mentioned) in a production system should only 
be accessible by an Administrator. As an administrator, I would want the 
Groovy script to have full access to the Jenkins architecture - e.g. to 
kick off jobs, to change security settings or run shell commands on the 
server.

Probably it needs to be integrated with 
https://wiki.jenkins-ci.org/display/JENKINS/Script+Security+Plugin  (though 
the configurations are accessible to admins only).
I've had a quick look at the "Script Security Plugin", and it also requires 
an administrator access to the "Jenkins > Manage Jenkins > In-process 
Script Approval" page (similar to above). It looks like this plugin is 
tailored towards Groovy Scripts being configured in the build steps of 
Jenkins jobs by developers/users, so I'm not sure it's necessarily 
applicable to the "global-events-plugin" (there were no screenshots or 
mention of where to configure the plugin).

I see you're a recent committer to the plugin, so perhaps you've got a 
better idea. How about we put this "integration" in the backlog of work.

If you're happy with the name change suggestions (I am), and sidelining the 
"integration with Script-Security-Plugin" work until later (and there 
aren't any more blockers) - can we setup plugin hosting?

Kind regards,

Nick Grealy


On Wednesday, 16 September 2015 19:45:16 UTC+10, Oleg Nenashev wrote:
>
> According to the implementation, it should be renamed to something like 
> "groovy-run-listener" plugin.
>
> Are you aware about Security implications of the plugin? Probably it needs 
> to be integrated with 
> https://wiki.jenkins-ci.org/display/JENKINS/Script+Security+Plugin 
> (though the configurations are accessible to admins only).
>
> воскресенье, 13 сентября 2015 г., 15:22:16 UTC+3 пользователь Nick Grealy 
> написал:
>>
>> Hi,
>>
>> Could you please setup a place for me to host the following plugin?
>>
>> *GitHub URL:* https://github.com/nickgrealy/global-events
>> *The name the repository should have:* global-events-plugin
>> *My **GitHub username:* nickgrealy
>> *My **jenkins-ci.org <http://jenkins-ci.org> username:* nickg
>>
>> *A description of what the plugin does, and what makes it different from 
>> other similar plugins:*
>>
>> The global-events-plugin, is a jenkins plugin, which executes groovy code 
>> when an event occurs.
>>
>> The reason I created the plugin was because I wanted to integrate Jenkins 
>> with an external application. Invoking a Jenkins jobs via the REST api was 
>> simple, but getting Jenkins to callback the external application wasn't 
>> straight forward.
>>
>> All the plugins I'd seen either had to be individually configured per job 
>> (i.e. in a post build step), or their features were limited to making a 
>> HTTP GET/POST request (a bit restrictive).
>>
>> Bascially:
>>
>>    - I wanted to be able to write my own code
>>    - I didn't want to repeat myself
>>    
>> So I wrote this plugin. Along the way, I realised it could have some 
>> other applications too:
>>
>>    - customised logging
>>    - performance monitoring
>>    - incident escalation
>>    - integration with 3rd party applications
>>    
>>
>> *Similar Plugins*
>>
>> These plugins have similar (but different) functionality:
>>
>>    - https://wiki.jenkins-ci.org/display/JENKINS/Notification+Plugin
>>    - 
>>    https://wiki.jenkins-ci.org/display/JENKINS/Extreme+Notification+Plugin
>>    - https://github.com/speedledger/elasticsearch-jenkins
>>    - https://github.com/jenkinsci/post-completed-build-result-plugin
>>    
>> Kind regards,
>>
>> Nick Grealy
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-dev/c014b8ce-e67b-43a3-a05e-b02d4e1fc0de%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to