Apologies, as you may see by my delay in answering, I am very behind my 
scheduled backlog.
I have received useful feedback during the past Jenkins User Summit and I am 
working in fixing the code base in that direction.

I wouldn't like to share it before the refactoring, otherwise I may break 
compatibility :-(

Bear with me :-)

Luca.

> On 30 Nov 2017, at 16:17, Paolo Brocco <[email protected]> wrote:
> 
> Hi Luca,
> 
> you announced this in September, I was wondering if in the meantime you could 
> publish something? I'd be happy to test your plugin, since at work we 
> actually need it...
> 
> thanks for letting me know the status of your work, and if you have something 
> to test,
> 
> cheers, Paolo
> 
> On Friday, September 8, 2017 at 12:00:50 AM UTC+2, lucamilanesio wrote:
> 
>> On 7 Sep 2017, at 14:48, Vacelet, Manuel <[email protected] <>> wrote:
>> 
>> Hi Luca (congrats to the new gerrit maintainer BTW),
>> 
>> It does answer the question but raise a new one ;)
>> Have you an ETA in mind for all this ?
> 
> We are talking about weeks for sure, as I want to ship something fully 
> documented and working.
> 
> I was planning to share it as "showcase" with a Docker compose containing:
> - Gerrit 2.15 (or a pre-release)
> - Jenkins 2.x with BlueOcean
> 
> I believe the coupling of BlueOcean + PolyGerrit will give the "business 
> case" for many people to start adopting the two tools instead of heading to 
> GitLab or similar.
> 
> Luca.
> 
>> 
>> Manuel
>>  
>> 
>> On Thu, Sep 7, 2017 at 12:22 PM, Luca Milanesio <[email protected] <>> 
>> wrote:
>> Hi Manuel,
>> I discussed the topic with Robert at the Jenkins World conference last week, 
>> and we agreed that:
>> 
>> 1. More work is needed on the branch discovery side: I need to flag the ones 
>> coming from Gerrit Changes with a specific label
>> 2. The plugin is going to be focused on the branch source API feature: 
>> Gerrit-branch-source similarly to GitHub-branch-source
>> 3. Gerrit Trigger plugin will stay anyway for his specific use-case: 
>> triggering the build based on a Gerrit stream event
>> 
>> Does that answer your questions?
>> 
>> Luca.
>> 
>>> On 7 Sep 2017, at 08:08, Vacelet, Manuel <[email protected] <>> wrote:
>>> 
>>> Hi Luca,
>>> 
>>> Jenkins World Conference is over, did you manage to showcase this new 
>>> plugin ?
>>> What's the status and what are the plans for the future ?
>>> 
>>> Manuel
>>> 
>>> On Fri, Aug 18, 2017 at 11:04 AM, Luca Milanesio <[email protected] <>> 
>>> wrote:
>>> Hi Gerrit and Jenkins Community,
>>> after over two years of iterations and improvements of the Gerrit CI 
>>> workflow (https://gerrit-ci.gerritforge.com 
>>> <https://gerrit-ci.gerritforge.com/>), I have decided that is about time to 
>>> extract the logic of our workflow and make it available as a brand-new 
>>> Jenkins plugin!
>>> 
>>> Why?
>>> I wanted to use the Gerrit CI validation workflow with potentially any 
>>> project, including Gerrit plugins or anybody else wanting to adopt it.
>>> I could just "copy & paste" our Groovy workflow, however, that does not 
>>> seem a sensible and long-term approach.
>>> I wanted to have "something more" than a pure triggering mechanism: I 
>>> wanted to extend the power of Jenkisfile with the Gerrit review workflow 
>>> verbs.
>>> 
>>> Why not?
>>> Why should I write yet another Gerrit/Jenkins plugin? Isn't Gerrit Trigger 
>>> Plugin (https://wiki.jenkins.io/display/JENKINS/Gerrit+Trigger 
>>> <https://wiki.jenkins.io/display/JENKINS/Gerrit+Trigger>) enough?
>>> We couldn't use it against gerrit-review.googlesource.com 
>>> <http://gerrit-review.googlesource.com/> because stream events are just not 
>>> accessible.
>>> 
>>> There are unresolved issues about:
>>> - Stability: stream-events are based on SSH, which isn't scalable, reliable 
>>> against downtime, etc.
>>> - Usability: at every JenkinsWorld conference people still come to me 
>>> asking "how do I setup correct the Gerrit Trigger plugin"?
>>> - Integration: using it inside a JenkinsFile isn't that straightforward and 
>>> multi-branch projects aren't supported either
>>> 
>>> What would it be?
>>> I will publish a new plugin named "Gerrit Pipeline Plugin."
>>> The new name indicates:
>>> - Deep integration with Jenkins Pipeline
>>> - Out-of-the-box integration with Gerrit validation workflow in the pipeline
>>> 
>>> A simple example scripted Jenkinsfile would be:
>>> 
>>> node {
>>>     checkout scm
>>> 
>>>     gerrit.withServer("http://gerrit:8080/ <http://gerrit:8080/>", 
>>> "gerrit") {
>>> 
>>>         try {
>>>             docker.image('gerritforge/play-sbt-8-jdk-alpine').inside {
>>>                 stage('Build') {
>>>                     sh 'sbt compile'
>>>                 }
>>>                 stage('Test') {
>>>                     sh 'sbt 'test'
>>>                 }
>>>             }
>>> 
>>>             gerrit.review("Verified", 1, "It works !")
>>>         } catch (e) {
>>>             gerrit.review("Verified", -1, "Breaks the build ;-(")
>>>             throw e
>>>         }
>>>     }
>>> }
>>> 
>>> (Where:
>>> - https://gerrit-review.example.com <https://gerrit-review.example.com/> 
>>> would be the Gerrit URL
>>> - mycredentialsid would be the id of the credentials to access Gerrit)
>>> 
>>> One key-aspect will be: stateless, configuration-less (apart from the 
>>> credentials stored in Jenkins keychain)
>>> That means that multiple Jobs, multiple branches of the same Job, can have 
>>> their own Gerrit integration defined and working out-of-the-box.
>>> 
>>> No more people asking "how do I configure the Gerrit integration"?
>>> You'll just define a gerrit.withServer() { } and ... it will just work.
>>> 
>>> When?
>>> I am planning to showcase the first prototype of the new plugin at the 
>>> Jenkins World Conference in San Francisco inside my "Data-Driven Pipeline 
>>> workshop."
>>> (https://jenkinsworld20162017.sched.com/event/APTd/data-driven-pipeline-workshop-free
>>>  
>>> <https://jenkinsworld20162017.sched.com/event/APTd/data-driven-pipeline-workshop-free>)
>>> Shortly afterward, I will publish the plugin on the GerritForge's GitHub 
>>> account and will start the integration process into the Jenkins CI 
>>> organization.
>>> 
>>> Next steps?
>>> A second iteration of the plugin would have a Declarative pipeline 
>>> equivalent as well, which would require even less code required.
>>> A third iteration of the plugin would support BlueOcean as well, to have a 
>>> fully UX-integrated experience.
>>> The goal is to have Gerrit Code Review to be a 1st class citizen in the 
>>> Jenkins ecosystem :-)
>>> 
>>> So what happens to the Gerrit Trigger Plugin?
>>> The new plugin is not going to replace the current Gerrit Trigger Plugin, 
>>> but would rather represent an alternative to simpler scenarios when you 
>>> just require a standard Jenkinsfile Gerrit validation workflow. For all the 
>>> current users of the Gerrit Trigger Plugin things wouldn't change, unless 
>>> they need a more Jenkisfile-integrated experience.
>>> 
>>> Feedback? Like it? Hate it? Have your say :-)
>>> 
>>> Luca.
>>> 
>>> 
>>> 
>>> -- 
>>> -- 
>>> To unsubscribe, email [email protected] <>
>>> More info at http://groups.google.com/group/repo-discuss?hl=en 
>>> <http://groups.google.com/group/repo-discuss?hl=en>
>>> 
>>> --- 
>>> You received this message because you are subscribed to the Google Groups 
>>> "Repo and Gerrit Discussion" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an 
>>> email to [email protected] <>.
>>> For more options, visit https://groups.google.com/d/optout 
>>> <https://groups.google.com/d/optout>.
>>> 
>> 
> 
> 
> -- 
> 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] 
> <mailto:[email protected]>.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/jenkinsci-dev/a67552af-d495-4e3b-afb9-9742326c5f06%40googlegroups.com
>  
> <https://groups.google.com/d/msgid/jenkinsci-dev/a67552af-d495-4e3b-afb9-9742326c5f06%40googlegroups.com?utm_medium=email&utm_source=footer>.
> For more options, visit https://groups.google.com/d/optout 
> <https://groups.google.com/d/optout>.

-- 
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/E9A4188C-193A-4983-A1EC-91B8B82414F9%40gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to