As a development group, we need out automated CI system to find problems in the deployment packages when they are introduced so that we can avoid a 'package building log-jam' at release time.
To implement this:
Use the Travis 'build stages' feature to trigger package builds only if the 'regular' build succeeds.[0]
Use Docker to provide the build environments for CentOS 6 and 7. [1]
Use the native Ubuntu 14 OS for debian packages.
Name the packages using build numbers, git commit hashes (first 7 digits is generally considered good enough). Also, look at `git rev-parse --short=7 --verify HEAD` which will give you a seven digit hash if it's unique, or add more digits as needed. [2]
Push these to an AWS bucket. We can use the current bucket used for the test results, but that clutters things up. Note that the Travis builds have a special 'deployment' part for this and we're using it already.
These packages are not all to be released - we might build the packages for release by hand still - so we can assume that we sign and get them to the web site 'manually.'
Do this for both libdap and bes
[0]: https://docs.travis-ci.com/user/build-stages
[1]: https://twindb.com/building-rpm-on-travis-ci-in-docker-containers/
[2]: https://stackoverflow.com/questions/18134627/how-much-of-a-git-sha-is-generally-considered-necessary-to-uniquely-identify-a