[mapserver-dev] Rethinking our doc site build workflow (+vote)

Stephen Woodbridge woodbri at swoodbridge.com
Fri Apr 11 12:59:18 PDT 2014


Thomas,

Awesome! Great job on putting this all together.
I like the build options.

Thanks,
   -Steve W

On 4/11/2014 3:51 PM, thomas bonfort wrote:
> The website at www.mapserver.org now automatically updates every time
> a commit is pushed to the mapserver.github.io repository (i.e. each
> time there's a build on travis-ci).
> Travis builds by default only build the english documentation and not
> the translations, unless the commit message contains the magic
> [build_translations] keyword (e.g.
> https://github.com/mapserver/docs/commit/f0d7d595dfc47ddc46c2b985fce4b34a6ef42f8a)
>
> I've also tweaked the Makefile so that the languages that are
> effectively built can be specified on the command line:
>
> #only build english
> make html BUILD_LANGUAGES=
>
> #build all translations
> make html
>
> #build english, italian and french
> make html BUILD_LANGUAGES="fr it"
>
> regards,
> thomas
>
> On 10 April 2014 16:07, thomas bonfort <thomas.bonfort at gmail.com> wrote:
>> psc,
>>
>> mapserver.org is now serving a website built by travis-ci. The built
>> static website is itself versionned and hosted on github, our osgeo vm
>> just needs to update its local copy of its clone in order to stay
>> updated. We also have a fallback in case the projects vm falls again,
>> at http://mapserver.github.io/ (that could become the master for
>> www.mapserver.org if we pointed the mapserver.org DNS to it).
>>
>> I still need to work on hosting the pdf files, hosting the development
>> (master) version of the docs, and automatically updating the
>> projectsvm when a commit is pushed to the git repository.
>>
>> The docs themselves (along with their build scripts) have been
>> slightly modified:
>> - english docs are not built in the en/ subdirectory anymore but are
>> placed in the root of the build directory (to avoid having to setup
>> redirects)
>> - there is no need for a mapservorg target anymore
>> - the cron jobs and the en/ redirects on mapserver.org have been
>> disabled to account for these changes
>>
>> let me know if you see anything strange...
>>
>> regards,
>> thomas
>>
>>
>> On 4 April 2014 22:55, thomas bonfort <thomas.bonfort at gmail.com> wrote:
>>> PSC,
>>>
>>> In light of the recent projectsvm downtime and the (increasing, given
>>> the new translations) load we are putting on that server while
>>> building our docs, I would like to propose that we transition our
>>> build process to use travis-ci for the compilation part.
>>>
>>> In clear, docs would be automatically built on travis-ci.org once a
>>> commit is pushed on the stable or master branch, and would then be
>>> scp'd/rsync'd to the public projectvm directory on success.
>>>
>>> Advantages:
>>> - no need to maintain build scripts on the projectsvm
>>> - the actual travis config files are simple and minimal:
>>> https://github.com/tbonfort/docs/commit/1d178ab6e6d0765adfbb0fea40404a6a1803a969
>>> (without the logic to publish to mapserver.org yet, though)
>>>
>>> Inconveniences:
>>> - we rely on an external service we have no control on. we can always
>>> switch back to the current solution if needed (no www.mapserver.org
>>> downtime, the docs would just not be in sync while we transitioned).
>>> - building the PDFs has a non-negligeable impact on build times and
>>> apt packages needed to be installed on the travis instances. They
>>> would therefore be disabled by default, but might be enabled on a
>>> case-by-case basis if the commit message contains a magic keyword.
>>> - it might seem we are loosing control as to what is published on the
>>> mapserver.org website (given the resulting website is automatically
>>> published). In practice this is more or less already the case with the
>>> automatic builds happening on the projectsvm.
>>>
>>> I've had confirmation from the travis team that we are not abusing
>>> their system by implementing this:
>>>
>>> ===================================================================
>>> Hey Thomas,
>>>
>>> Thanks for getting in touch and checking with us!
>>>
>>> We absolutely don't mind you using our service to build and push your
>>> documentation site, quite the opposite.
>>>
>>> We're always happy to see people adopt Travis CI in unexpected and new
>>> ways, so by all means, ship it!
>>>
>>> Cheers, Mathias
>>>
>>> --
>>> Mathias Meyer
>>> =====================================================================
>>>
>>> Before investing more time on this, I will need a go from the PSC. I'm
>>> going to be offline next week and unable to respond, but will start
>>> the transition at my return if no -1s are casted.
>>>
>>> +1 Use Travis-ci platform to build and publish mapserver website
>>>
>>> best regards,
>>> thomas
> _______________________________________________
> mapserver-dev mailing list
> mapserver-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapserver-dev
>



More information about the mapserver-dev mailing list