+1 We need to test it, not just for the functional aspect of our code but to make sure the _build_ works fine in both configurations. Also, I'm pretty sure the server mode and embedded mode can not guarantee to be using the same MongoDB version so it's possible that a fix made by someone is verified in one environment but breaks tests for other developers.. kind of things I'd better be notified about ASAP than on JIRA.
Sanne On 9 July 2013 09:43, Gunnar Morling <gun...@hibernate.org> wrote: > 2013/7/9 Emmanuel Bernard <emman...@hibernate.org> > >> Custom configuration is not something you would exercise for example. >> I'm talking about hostname, ports, the ability to forbid plain "table" >> scan. >> >> Gunnar's proposal for an additional slave job only running the mongodb >> module with the non embedded mode seems the easiest solution. >> > > I didn't mean to add a different job, just to add a "post build step" to > the existing job which basically runs > > mvn test -DuseExternalMongoDb -pl > :hibernate-ogm-mongodb,:hibernate-ogm-integrationtest-mongodb > > >> Emmanuel >> >> On Tue 2013-07-09 9:58, Hardy Ferentschik wrote: >> > I just don't get the point. AFAIU the embedded version is nothing else >> than a downloaded mongodb, >> > installed in a given directory and started by the plugin. Where is the >> difference to a "proper" >> > mongodb instance? Installing MongoDB is nothing else than getting the >> distribution and running the >> > daemon. The only difference I can see is that on a production machine >> you would run mongodb as >> > a service and probably monitor it, but that is imo not relevant in this >> scenario. >> > >> > --Hardy >> > >> > >> > On 9 Jan 2013, at 8:36 AM, Gunnar Morling <gun...@hibernate.org> wrote: >> > >> > > 2013/7/8 Sanne Grinovero <sa...@hibernate.org> >> > > >> > >> On 8 July 2013 11:08, Gunnar Morling <gun...@hibernate.org> wrote: >> > >>> 2013/7/8 Sanne Grinovero <sa...@hibernate.org> >> > >>>> >> > >>>> Nice! >> > >>>> now a tricky question: how can I get the tests to run both with >> > >>>> embedded and external on CI? >> > >>>> >> > >>>> I guess I need two jobs :-( >> > >>> >> > >>> >> > >>> Yes, as of know, you'd need two jobs. If really needed, one could >> > >> probably >> > >>> make it run against both by configuring several surefire executions. >> > >>> >> > >>> But why would you want to do that? As said, AFAICS there is no >> functional >> > >>> difference between both "modes", so I think having CI run one of it >> > >> should >> > >>> be good enough. >> > >> >> > >> I'm sure there is no difference for the tests, but we need to make >> > >> sure both approaches work today and stay working: I want to test the >> > >> infrastructure code of the testsuite. >> > >> >> > >> Personally I'll likely stick to using an external MongoDB server so I >> > >> would not be able to detect if someone broke the build on the embedded >> > >> one. >> > >> >> > > >> > > We could add another build step to the existing CI job which only runs >> the >> > > tests of the "mongodb" module against an external instance. >> > > >> > > That way we would have the "it just works" experience out of the box >> via >> > > the embedded mode, and on CI it would still be ensured that both modes >> > > work. The CI job would run a bit longer, but I think that's acceptable >> and >> > > the set up is easier than with two separate jobs. WDYT? >> > > >> > > >> > >> >> > >> Sanne >> > >> >> > >>> >> > >>> >> > >>>> >> > >>>> >> > >>>> On 8 July 2013 11:01, Gunnar Morling <gun...@hibernate.org> wrote: >> > >>>>> Hi, >> > >>>>> >> > >>>>> I've submitted PR #197 [1] for OGM-295. >> > >>>>> >> > >>>>> This makes the "mongodb" module part of the OGM build by default, >> > >>>>> executing >> > >>>>> the tests on an "embedded" MongoDB instance. "Embedded" means in >> this >> > >>>>> context, that the original distribution *.tar.gz is retrieved from >> > >>>>> mongodb.org, unpacked and an external mongodb process is started >> > >> before >> > >>>>> and >> > >>>>> stopped after test execution. >> > >>>>> >> > >>>>> To run tests alternatively against an external MongoDB >> installation, >> > >> the >> > >>>>> "useExternalMongoDb" property can be specified like this: >> > >>>>> >> > >>>>> mvn clean install -DuseExternalMongoDb >> > >>>>> >> > >>>>> This will skip launching/stopping of the embedded instance and >> expect >> > >> a >> > >>>>> running instance on MONGODB_HOSTNAME:MONGODB_PORT as before. >> > >>>>> >> > >>>>> --Gunnar >> > >>>>> >> > >>>>> [1] https://github.com/hibernate/hibernate-ogm/pull/197 >> > >>>>> >> > >>>>> >> > >>>>> >> > >>>>> 2013/7/4 Sanne Grinovero <sa...@hibernate.org> >> > >>>>>> >> > >>>>>> Thanks! >> > >>>>>> >> > >>>>>> On 4 July 2013 11:26, Gunnar Morling <gun...@hibernate.org> >> wrote: >> > >>>>>>> Thanks, Sanne, for creating the issue. I can do that, already >> > >>>>>>> assigned >> > >>>>>>> it to >> > >>>>>>> me. >> > >>>>>>> >> > >>>>>>> --Gunnar >> > >>>>>>> >> > >>>>>>> >> > >>>>>>> >> > >>>>>>> 2013/7/4 Sanne Grinovero <sa...@hibernate.org> >> > >>>>>>>> >> > >>>>>>>> Created as >> > >>>>>>>> https://hibernate.atlassian.net/browse/OGM-295 >> > >>>>>>>> >> > >>>>>>>> volunteers? >> > >>>>>>>> >> > >>>>>>>> >> > >>>>>>>> On 28 June 2013 10:20, Hardy Ferentschik <ha...@hibernate.org> >> > >>>>>>>> wrote: >> > >>>>>>>>> >> > >>>>>>>>> On 28 Jan 2013, at 11:15 AM, Emmanuel Bernard >> > >>>>>>>>> <emman...@hibernate.org> >> > >>>>>>>>> wrote: >> > >>>>>>>>> >> > >>>>>>>>>> I wonder how you can debug things though and look at the >> > >> content >> > >>>>>>>>>> outside >> > >>>>>>>>>> your tests? I guess you would install a regular mongodb on a >> > >>>>>>>>>> different >> > >>>>>>>>>> port. >> > >>>>>>>>> >> > >>>>>>>>> Right, for active development and/or debugging it makes >> probably >> > >>>>>>>>> sense >> > >>>>>>>>> to have a regular >> > >>>>>>>>> mongodb instance. >> > >>>>>>>>> >> > >>>>>>>>> I see the use case more in simple execution of the build >> > >> including >> > >>>>>>>>> unit >> > >>>>>>>>> tests on any machine. >> > >>>>>>>>> Also easier to get started for anyone new to the project. >> > >>>>>>>>> >> > >>>>>>>>> --Hardy >> > >>>>>>>>> >> > >>>>>>>>> >> > >>>>>>>>> _______________________________________________ >> > >>>>>>>>> hibernate-dev mailing list >> > >>>>>>>>> hibernate-dev@lists.jboss.org >> > >>>>>>>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev >> > >>>>>>>> _______________________________________________ >> > >>>>>>>> hibernate-dev mailing list >> > >>>>>>>> hibernate-dev@lists.jboss.org >> > >>>>>>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev >> > >>>>>>> >> > >>>>>>> >> > >>>>> >> > >>>>> >> > >>> >> > >>> >> > >> >> > > _______________________________________________ >> > > hibernate-dev mailing list >> > > hibernate-dev@lists.jboss.org >> > > https://lists.jboss.org/mailman/listinfo/hibernate-dev >> > >> > >> > _______________________________________________ >> > hibernate-dev mailing list >> > hibernate-dev@lists.jboss.org >> > https://lists.jboss.org/mailman/listinfo/hibernate-dev >> > _______________________________________________ > hibernate-dev mailing list > hibernate-dev@lists.jboss.org > https://lists.jboss.org/mailman/listinfo/hibernate-dev _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev