Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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

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 to DockerHub

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

















Solution/Platform Benchmark

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

PlatformFeedback

travis-ci.com
GitHub Actions
GitHub 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.
//TODO