EVE-Tools / element43

Market, Trade and Industry Manager for EVE Online
BSD 3-Clause "New" or "Revised" License
82 stars 25 forks source link

Evaluate migrating to hosted CI #54

Closed zweizeichen closed 6 years ago

zweizeichen commented 6 years ago

While running our own CI system can be fun, it is yet another service to maintain. We could migrate to one of the numerous CI platforms which offer free services for open-source projects.

gtaylor commented 6 years ago

Circle was pretty good in the past, though I'm out of date by a couple years.

zweizeichen commented 6 years ago

Just ran some quick test builds of esi-markets as Rust takes a while to compile. Each service was executing the same Dockerfile. So here's the comparison of build times for Travis CI vs. Circle CI vs. Semaphore CI:

Service Build Times Comment
Travis CI 10m14s, 10m54s, 9m26s Good old Travis CI. Ran some unnecessary setup for the language toolchain which is not needed for simply building a Docker image.
Semaphore CI 3m39s, 4m30s, 4m29s Painless setup using their wizard, no fiddling with config files in the repo which I always get wrong on the first try. It even asked for Docker Hub integration for pushing the image.
Circle CI 8m33s Not the fastest even if specs looked promising. Lots of features, felt a little 'enterprisey'.

Of course there are more things to consider than raw speed when picking a hosted CI solution. Semaphore CI blew the others out of the water performance-wise (may be related to using RAM-disks). Also, I liked their UX and they've got v2 coming up which promises improved Kubernetes support. It should serve our needs well. So I'm picking Semaphore CI for the time being.

zweizeichen commented 6 years ago

Closing as all relevant services (esi-markets, top-stations and market-stats) have been ported to Semaphore CI, with the exception of: