bluetoe icon indicating copy to clipboard operation
bluetoe copied to clipboard

change CI

Open TorstenRobitzki opened this issue 7 years ago • 8 comments

Travis CI seems to have a fixed maximum runtime of 10 minutes. Running make with -j results in build failures during the compilation of the tests (out of memory).

A new CI should:

  • enable us to build the tests with several compilers and versions.
  • build the documentation and store them on github.
  • let us install cross compilers (and required vendor-libraries) to build examples.
  • let us save the example binaries for beeing tested (minor).
  • should be affordable by our sponsor (~10€/Month).

If we host a CI server on our own, we could add additional hardware to do integration tests with different hardware bindings (but maybe this shouldn't be scope of this issue).

TorstenRobitzki avatar Nov 02 '18 11:11 TorstenRobitzki

Assumed, we would set up a Jenkins server on our own: We could run HIL tests (based on the Scheduled Radio Interface) for nrf51 and nrf52.

TorstenRobitzki avatar Nov 07 '18 09:11 TorstenRobitzki

@obruns Do you have something to contribute?

TorstenRobitzki avatar Nov 17 '18 16:11 TorstenRobitzki

See https://gitlab.com/obruns/bluetoe/merge_requests/1 for starters. This is four months old and not rebased on top of master as of this writing.

Also have a look at the pipeline [1] and its jobs (e.g. [2]).

[1] https://gitlab.com/obruns/bluetoe/pipelines/24630627/builds [2] https://gitlab.com/obruns/bluetoe/-/jobs/77631874

obruns avatar Nov 19 '18 08:11 obruns

I can't merge the pullrequest on Gitlab (most likely, because the repo is hosted on Github). But if I got it right, it's just this two files (.gitlab-ci.yml and Dockerfile). I will just "merge" them by hand into master here...

TorstenRobitzki avatar Nov 19 '18 18:11 TorstenRobitzki

I just realized that the pull request was on your branch. I guess to fully use Gitlab as CI, we would have to move this project to Gitlab.

TorstenRobitzki avatar Nov 19 '18 19:11 TorstenRobitzki

Mmh, sure about the move to Gitlab. That's what I implied when we talked on Friday.

My reply from earlier today was just to give you a glimpse of what I tried to do with Gitlab CI so far.

obruns avatar Nov 19 '18 19:11 obruns

I would like to go with the following approach:

  • Use a cheap virtual server somewhere (~5€/month)
  • create a docker image to run jenkins
  • create some docker images with different compilers (or just one as @obruns did)
  • Let the Jenkins server report the build state to Github
  • Let the Jenkins server do nightly build to collect interesting stuff like image sizes, pre-build binaries, documentation and such. (guess that means we would have to have a data base then).

TorstenRobitzki avatar Nov 19 '18 20:11 TorstenRobitzki

Here are some numbers from the Gitlab builds: https://gitlab.com/TorstenRobitzki/bluetoe/pipelines/37166668/builds

TorstenRobitzki avatar Nov 19 '18 20:11 TorstenRobitzki