Do we have any defined policy regarding Jenkins jobs?

Looking at https://builds.apache.org/view/A-D/view/DeltaSpike/. it seems a number of jobs are disabled or have been failing for months.

It is not quite clear if a given job is supported, obsolete or experimental.

What about a simple rule like "don't release until all balls are blue", except for a few jobs to be marked as experimental, like WildFly 10 and TomEE 7?

Some jobs fail deterministically due to bugs in older CDI or app server versions. If there's a good reason to test on these old versions, then we should at least disable the tests known to fail on a given version with excludes in a version-specific Maven profile.

Other jobs fail sporadically due to port conflicts. This could be addressed with the build-helper-maven-plugin (reserve-network-ports).

Regarding build triggers, I can't look at the job configurations, but it seems that some jobs are directly triggered by a commit, while others are triggered by completion of the DeltaSpike Deploy job, which results in some jobs being run twice.

Wouldn't it be better to have a single gatekeeper job triggered by commits (e.g. DeltaSpike Deploy) and treat all other jobs as downstream dependencies that are only triggered by a _stable_ run of the gatekeeper job?

Regards,
Harald




Reply via email to