As luck would have it, I notice this is tripped by by having global lib 
variables added in (basically, DSLs). Is there a JIRA project for this? 

(not a huge thing, I can't imagine many would run into this, but it looks 
like it gets upset if not all the things are serializable). 

Caused by: com.fasterxml.jackson.databind.JsonMappingException: (was 
java.lang.NullPointerException) (through reference chain: 
org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode["typeDisplayName"])

at 
com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:141)

at 
com.fasterxml.jackson.databind.ObjectMapper._configAndWriteValue(ObjectMapper.java:3559)

at 
com.fasterxml.jackson.databind.ObjectMapper.writeValue(ObjectMapper.java:2909)

at 
com.github.bsideup.jenkins.pipeline.ui.view.PipelineViewApi.doNodes(PipelineViewApi.java:75)

... 89 more

Caused by: java.lang.IllegalArgumentException: (was 
java.lang.NullPointerException) (through reference chain: 
org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode["typeDisplayName"])

at 
com.fasterxml.jackson.databind.ObjectMapper._convert(ObjectMapper.java:3459)

at 
com.fasterxml.jackson.databind.ObjectMapper.convertValue(ObjectMapper.java:3378)

at 
com.github.bsideup.jenkins.pipeline.ui.view.PipelineViewApi$2.apply(PipelineViewApi.java:78)

at 
com.github.bsideup.jenkins.pipeline.ui.view.PipelineViewApi$2.apply(PipelineViewApi.java:75)

at com.google.common.collect.Iterators$8.next(Iterators.java:812)

at 
com.fasterxml.jackson.databind.ser.std.IterableSerializer.serializeContents(IterableSerializer.java:89)

at 
com.fasterxml.jackson.databind.ser.std.IterableSerializer.serialize(IterableSerializer.java:74)

at 
com.fasterxml.jackson.databind.ser.std.IterableSerializer.serialize(IterableSerializer.java:12)

at 
com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:130)

... 92 more

On Tuesday, March 22, 2016 at 10:49:54 AM UTC+11, Michael Neale wrote:
>
> Very cool, and I like the use of react!
>
> On Monday, March 21, 2016 at 5:52:04 PM UTC+11, Sergei Egorov wrote:
>>
>> Hey everyone, 
>>
>> Yesterday I decided to publish sources for my pipeline visualization 
>> plugin: https://github.com/bsideup/jenkins-pipeline-view
>>
>> <https://lh3.googleusercontent.com/-t28IjO2m73U/Vu-VVrauoEI/AAAAAAAAAyI/tiF8TH7YVCYiqI4n78DvC0FQ21ir46LNg/s1600/screenshot.png>
>>
>>
>> What's cool about it? 
>> First of all, it *can handle any graph* provided by pipeline because it 
>> uses very powerful *JS graph library* to position steps. 
>> Also, it's a *React* application, written in *ES7* (not even ES6!), with 
>> ImmutableJS and RxJS inside - so hipsters will be happy :D But in fact, it 
>> means that it's damn easy to develop this plugin and provide more 
>> functionality. 
>> I use *Webpack* to bundle everything (JS, CSS, fonts, images, SVG icons) 
>> in one single pipe.js file. *No Jenkins JS Modules*, no conflicts, no 
>> impact on others. Even CSS will not conflict because of *CSS-modules* ( 
>> http://glenmaddern.com/articles/css-modules )
>> All icons are SVG ones and look good on any screen, retina or not, and 
>> any zoom level.
>>
>> I use Jackson on the backend side to serialize FlowNodes and their 
>> actions. *Why Jackson?* Because it was much easier to implement 
>> serialization of selected (non-exposed) fields and class info included 
>> compared to Stapler. I saw something were done about classinfo in Stapler, 
>> but at the moment of creation of this plugin, it wasn't delivered to 
>> Jenkins core yet. Also, *almost none of the Pipeline actions are 
>> @Expose-d*.
>>
>> I use *gradle-jpi-plugin* instead of Maven because it's much easier to 
>> describe some complex build process with Gradle, especially when frontend 
>> build is involved. In fact, it's just one line:
>>
>> https://github.com/bsideup/jenkins-pipeline-view/blob/954b895b6574cdf34815ff94a4a8db3ad3811aeb/build.gradle#L61
>>
>>
>> Future development
>> Will I continue to develop it? Definitely! Here, *at ZeroTurnaround*, we 
>> use Jenkins a lot, and eventually we will migrate to the pipelines, and 
>> proper visualization of the process is a must for us. And feel free to 
>> contribute as well, it's really a good chance to learn *modern JS stack* as 
>> well :)
>>
>>
>>
>> Best regards,
>> Sergei Egorov
>>
>

-- 
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/0697c884-91ad-4716-809e-3c40cf5e35da%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to