areaDetector / ADCore

The home of the core components of the EPICS areaDetector software. It includes base classes for drivers and code for all of the standard plugins.
https://areadetector.github.io/areaDetector
Other
20 stars 67 forks source link

Add caching on Travis to speed up build #273

Open MarkRivers opened 7 years ago

MarkRivers commented 7 years ago

Michael Davidsaver wrote:

FYI. travis-ci does support caching of files between builds which can
help with building dependencies from source.  Takes a bit of time to get
right, but speeds up builds a lot.  For example, building a custom QEMU.
 This gets source from github and checks revision hashes to see if a
rebuild is needed.

https://github.com/mdavidsaver/epics-base/blob/integration/ci/travis-prepare.sh#L24

A sell sophisticated, but more relevant example of building Base and a
support module.

https://github.com/mdavidsaver/mrfioc2/blob/master/build-deps.sh

The necessary lines in .travis.yml

> cache:
>   directories:
>    - $HOME/.cache

We should cache EPICS base and ADSupport, checking against the current version to see if they should be rebuilt.

ulrikpedersen commented 7 years ago

I agree and I've used this feature before.

We should also setup a build matrix to build against different EPICS versions. For example R3.14 and R3.15 in separate (parallel) build jobs.