Travis based CI/CD workflow added
Initial setup (2018-09-16)
Travis offers under travis-ci.org
a nice environment for
CI/CD
workflows, even free of charge for open source projects,
and easy one-click integration with GitHub.
Under the given limitations of the Travis environment, like no custom
containers, as well as memory size and execution time limits, it was obvious
that neither the generation of FPGA bitfiles with ISE or Vivado nor the
generation of simulation models with GHDL (which needs Vivado/ISE UNISIM
libraries) is feasible.
The more limited goal was to verify the proper functioning of
- the backend software
- the test benches under
tbrun
The simulation models are built separately outside of the Travis
CI/CD
workflow, packaged as a tarball, and uploaded
to a server. That must be done each time when the VHDL codebase is changed
and must be done before the code is committed to GitHub and the
CI/CD
is workflow triggered. Not nice, but the best possible
solution given the constraints.
In September 2018 only Ubuntu 14.04 LTS (trusty) was supported by Travis and that allowed to set up a build matrix with
- gcc 4.8
- gcc 7
- clang 7
Each job has the steps
- download and unpack the simulation models
- compile the backend software with the selected compiler
- execute with
tbrun
the test benches - save detailed log files in a deploy step
For details see .travis.yml of commit 04c4b5d7.
Ubuntu 2016.04 LTS available, extended build matrix (2019-01-04)
Finally and after much popular demand, Travis provided in January 2019 Travis Ubuntu 2016.04 LTS (xenial). That allows extending the build matrix to
- Ub 14.04 - gcc 4.8.4
- Ub 14.04 - gcc 7.4.0
- Ub 16.04 - clang 7.0.0
- Ub 16.04 - gcc 5.4.0
Note, the newest gcc is available as backport under Ubuntu 14.04 LTS.
For details see .travis.yml of commit dd7cdfec.
travis-ci.org
is ceased.
No free of charge support for open source projects anymore, only
paid services on travis-ci.com
.
The commit 6b8c0633
removes Travis support on August 22nd, 2021.