Praqma / pretested-integration-plugin

A generic pretest commit plugin for Jenkins CI
MIT License
7 stars 14 forks source link

Fix internal build pipeline #60

Closed MadsNielsen closed 7 years ago

MadsNielsen commented 7 years ago

I'll need to fix the internal build pipeline.

Never finished experiments, but basically it boils down to this:

  1. JavaNCSS does not support Java 7
  2. Cobertura does not support Java 8 (we should switch to JaCoCo)
  3. Upgrading to a newer Jenkins core, causes all git test to hang and timeout

The fix for this is the reversion of commits. Gonna create a ready branch for this
dfbecfed30a1f4ee9ef3e2e5897ac2a6c3896d14 2abde63e750d3e655956d424fa68b99fdbe95cb7 d5dad12f989cd31a311341f18bca17cdb4289b56

On a sidenote, JavaNCSS and CodeStyle are not really useful. Recent parent pom's for Jenkins plugin have a hard requirement for findbugs, where the code must be bugless and have correct JavaDoc syntax. For a Jenkins pipeline this is all that matters, code style is not really relevant until we sit down and create a syntax rule that doesn always produce 10000 violations.

buep commented 7 years ago

I don't need those upgrades do I? reverting is fine :-)

buep commented 7 years ago

@MadsNielsen pipeline still failing - did you run it after reverting?

MadsNielsen commented 7 years ago

@buep Apparently not. Not picking up my ready branch. I'll see if i can get it working tonight after im done at otometrics.

buep commented 7 years ago

it's not using pretested so I merged your branch through a PR... I'll close this is job goes green

buep commented 7 years ago

Didn't work...

buep commented 7 years ago

You have it again when you have time

MadsNielsen commented 7 years ago

@buep Right the verify job is up and running again. I had to modify the maven targets to grant more memory to Java duing build, it ran out of PermGen space which can happen if your do bytecode manipulation, which cobertura does when it instruments classes. I added the following to the maven build configuration (under advanced):

-XX:MaxPermSize=128m (default is like...64k) -Xmx1024m (default is 512m)

Second, the jenkinsubutu slave no longer runs this job, and our dockerhost runs Java 8. So i had to tell it to use Java 7 via the JDK setting (installed automagically).

When we do the release for the new version, we need to make sure our pipeline works with at LEAST Java 8, and that means we need to take a look at Cobertura and possibly replace it to make it work. It won't be long before plugins will requiire Java 8 to be built.

When @bicschneider get's to that part he'll run into the same problems witnessed here so this is a heads up :)

buep commented 7 years ago

But if pipeline is green now, we could close this?

MadsNielsen commented 7 years ago

@buep Yep this can be closed. I suggest we move the issues with Java 8 into a seperate issue, as that will most likely be a blocker for release.