You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-issues@jackrabbit.apache.org by "Tommaso Teofili (JIRA)" <ji...@apache.org> on 2015/03/12 13:02:38 UTC

[jira] [Comment Edited] (OAK-2476) Move our CI to Jenkins

    [ https://issues.apache.org/jira/browse/OAK-2476?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14358564#comment-14358564 ] 

Tommaso Teofili edited comment on OAK-2476 at 3/12/15 12:02 PM:
----------------------------------------------------------------

currently the matrix looks quite big, however I'm looking into reducing that to only relevant configurations by using Jenkins's "combination filter" which will allows e.g. to run unit tests on segment MK only and ITs on all the different node store fixtures.
However I encountered a very weird bug: our variable for the required node stores is called {{ns-fixtures}} and therefore I've added the related _axis_ in Jenkins (with values {{SEGMENT_MK}}, {{DOCUMENT_MK}}, {{DOCUMENT_NS}}, {{DOCUMENT_RDB}} but Jenkins's _combination filter_ (which would filter the only valid configurations) is implemented via a Groovy expression and, funnily enough, Groovy variables can't have dashes in there so my expression
{noformat}
(ns-fixtures=="SEGMENT_MK" && profile=="unittesting") || (!(ns-fixtures=="SEGMENT_MK") && profile=="integrationTesting")
{noformat}
would not be valid because our variable is called _ns-fixtures_ ... :-)

I see if I can workaround it, however I won't waste too much time there and if not able to come to a solution I'll change _ns-fixtures_ to _nsfixtures_ or some _making stupid Groovy happy_ variable name.


was (Author: teofili):
currently the matrix looks quite big, however I'm looking into reducing that to only relevant configurations by using Jenkins's "combination filter" which will allow e.g. to run unit tests on segment MK only and ITs on all the different node store fixtures.
However I encountered a very weird bug: our variable for the required node stores is called {{ns-fixtures}} and therefore I've added the related _axis_ in Jenkins (with values {{SEGMENT_MK}},{{DOCUMENT_MK}},{{DOCUMENT_NS}},{{DOCUMENT_RDB}} but Jenkins's _combination filter_ (which would filter the only valid configurations) is implemented via a Groovy expression and, funnily enough, Groovy variables can't have dashes in there so my expression
{noformat}
(ns-fixtures=="SEGMENT_MK" && profile=="unittesting") || (!(ns-fixtures=="SEGMENT_MK") && profile=="integrationTesting")
{noformat}
would not be valid because our variable is called _ns-fixtures_ ... :-)

I see if I can workaround it, however I won't waste too much time there and if not able to come to a solution I'll change _ns-fixtures_ to _nsfixtures_ or some _making stupid Groovy happy_ variable name.

> Move our CI to Jenkins
> ----------------------
>
>                 Key: OAK-2476
>                 URL: https://issues.apache.org/jira/browse/OAK-2476
>             Project: Jackrabbit Oak
>          Issue Type: Task
>            Reporter: Tommaso Teofili
>            Assignee: Tommaso Teofili
>            Priority: Critical
>              Labels: CI, build, infrastructure
>             Fix For: 1.1.8, 1.2
>
>
> We should strive for stabilization of our CI setup, as of now we had Buildbot and Travis.
> It seems ASF Jenkins can perform jobs on different environments (*nix, Windows and others) so we can evaluate that and check if it better address our needs.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)