You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Project needs

Please feel free to add columns if you see any other information that might impact the CI/CD needs of a project.

ProjectOSLanguagesBuild ToolVCS HostDeveloper Team SizeConcurrencyBuild TasksCurrent solution / usage
OperatorFabricLinux onlyJava, AngularGradleGitHub.com

4 full-time developers, 2 occasional contributors (all in CET)

We take advantage of the night to run a CRON job handling the publication of a SNAPSHOT version (docker and documentation) and a bot doing dependencies updates.


Currently we can only run one job at a time but more concurrency would allow us to run our API tests (Karate) and end-to-end (Cypress) tests in parallel.
  • Compile back (Java) and front (Angular)
  • Run unit tests
  • Generate docker images for all services
  • Launch an instance of the app and run:
    • API tests (Karate)
    • end-to-end tests (Cypress)
  • Generate html documentation from Asciidoc files and push it to our opfab.github.io website.
  • Push docker images for all services (5) to DockerHub (1 set of SNAPSHOT images every day, then 1 set of X.X.X.RELEASE images roughly every 3 weeks)

We're currently using a paid 1-concurrent job plan on travis-ci.com.

//TODO Alexandra Guironnet Add average minutes and number of builds once Travis insights are fixed https://app.travis-ci.com/github/opfab?tab=insights

SOGNO


Self-hosted GitLab



PowSyBl






Free plan on GitHub Actions


Solution/Platform Benchmark

Any feedback or experience with other CI/CD platforms would be welcome.


travis-ci.comGitHub Actions
OperatorFabric

Platform stability has been good so far, and communication on maintenance or incidents is usually quick.

Integration with GitHub was quite straightforward.

The build configuration can sometimes be tricky, especially cache management, but the documentation is pretty good (at least on our use cases).

We only add 2 interactions with the support team and the quality of the response varied greatly.

No experience with GitHub actions so far, we had looked into it in its early days and at the time we found that there was really too little documentation to try and reproduce our Travis build as GitHub actions.




  • No labels