[mapserver-dev] travis-ci msautotest behavior changes

Lime, Steve D (MNIT) Steve.Lime at state.mn.us
Mon Jul 20 11:23:54 PDT 2015

I think things were kept separate primarily for access control. I could see keeping msautotest as a subdirectory since the contributors are the same, but I'd leave the docs separate.

-----Original Message-----
From: mapserver-dev-bounces at lists.osgeo.org [mailto:mapserver-dev-bounces at lists.osgeo.org] On Behalf Of thomas bonfort
Sent: Monday, July 20, 2015 12:34 PM
To: Even Rouault
Cc: MapServer Dev Mailing List
Subject: Re: [mapserver-dev] travis-ci msautotest behavior changes

On 20 July 2015 at 17:43, Even Rouault <even.rouault at spatialys.com> wrote:
> Le lundi 20 juillet 2015 17:20:10, thomas bonfort a écrit :
>> Hi devs,
>> The current travis-ci/msautotest setup required us to use a submodule
>> inside our mapserver git repository, which was somehow a pain to use
>> as a submodule tracks a specific commit SHA and not a whole branch:
>> - the submodule's sha needed to be maintained/updated/committed each
>> time there was a change to the msautotest repository itself
>> - it was nearly impossible to have travis-ci run using an msautotest
>> branch from a repo outside of the mapserver organisation, thus making
>> the creation of pull requests difficult to validate if they required
>> an update to the autotests themselves.
>> I've updated the travis test script to now behave like this:
>> - by default, if there's a commit on mapserver/mapserver 's
>> branch-7-0, then the autotests from mapserver/msautotest 's branch-7-0
>> will be used
>> - you can specify which msautotest repo/version should be used by
>> specifying it in the commit message, with a line containing (only) the
>> string msautotest=repo at sha, e.g.
>> msautotest=git://github.com/mapserver/msautotest.git@master
>> or
>> msautotest=git://github.com/tbonfort/msautotest.git@my-feature-branch
>> or
>> msautotest=git://github.com/myuser/msautotest.git@a457de23ea
> Hi Thomas,
> I agree with your observations on the current situation;
> How does that work with a pull request made of several commits ? I suppose
> that only the commit with msautotest= in its message gets tested with the
> specified msautotest version, and others fallback to head of msautotest's
> branch-7-.0 ? So consequence is : add msautotest= to all commits of a PR ?
IIRC, the travis run is only launched on the last commit if you are
going to push multiple commits in one go. If you're pushing e.g. once
a day then you'd have to add the msautotest= part on your last commit
each day. Note that you only need to add that if your branch requires
a modified version of the autotests.

> Not sure if there's a developer guide somewhere, but that would be worth
> adding the above in it.
I'd added to the wiki already

> Question: is there a strong reason for not having msautotest has a normal
> directory of mapserver repo, and docs too ? too big pershaps ? But I'd hope
> that all developers have mapserver, msautotest and docs checked in, so the
> size argument doesn't really seem relevant.
> Personnaly, I'd find it great/simpler to have a single commit with related
> code, test and doc changes.

I think the initial idea was to keep the commiter authorizations
separate. Running/publishing the doc build from travis would also
prove a bit more difficult if it was on the same repo. What do others


> Even
> --
> Spatialys - Geospatial professional services
> http://www.spatialys.com
mapserver-dev mailing list
mapserver-dev at lists.osgeo.org

More information about the mapserver-dev mailing list