CI/CD plateform choice

I wonder if it exists a list of available CI/CD platforms for Ember app giving some pros and cons and ratings ? Any ideas ? Thank you.

You can use GitLab for CI/CD of an ember project.

Pros

  • Saves the time and effort of deploying the code manually every time
  • Opensource

I’ve never seen a really good single-source overview list but that doesn’t mean it doesn’t exist. I’ll give you my two cents for CI, but this is all anecdotal and I don’t have a ton of experience so take it with a grain of salt:

  • Jenkins is a mess. Used it at my last company and it was a real chore to set up and configure and it was constantly flaking. It’s probably cheaper than the others in terms of raw cost but that might not even be true.
  • I’ve never used CircleCI, but it seems to be pretty well regarded. The few people I’ve talked to said it has its quirks and annoyances but so does anything else. Seems most similar to Travis but :man_shrugging:
  • AWS CodeBuild, also used this at my last company. Was more stable than jenkins but slow and the dashboard left a lot to be desired IMO. I wouldn’t really recommend it.
  • Travis CI: probably the most popular, I’m using it at my current company and have also used for a couple small ember projects. It’s very popular and I have nothing bad to say about it offhand. I’d say the main advantage with Travis and Ember specifically is that Ember generates a travis config out of the box so it’s extremely easy to get started.
  • I can’t speak to GitLab at all
1 Like

Thank you for your responses! We are currently migrating from GitLab to GitHub and still using Jenkins. Totally agreed about

Jenkins is a mess

, nobody can’t really figure out the reason of fails to build a Docker container, lots of problems with user rights, proxy settings, etc without talking about lacking Jenkins community support and frequent outdated examples. That’s why I asked.

We use Travis CI across our projects. It is pretty reliable and they have good support. That said, running our entire ember application’s test suite has not scaled well. We have about 4,000 tests and it currently takes over 13 minutes to run. I’ve noticed ember build performs poorly in the constrained CI environment. In the grand scheme of things, the test suite duration probably doesn’t matter too much.

But I keep trying to find ways around how long this takes. I was able to build the project locally, upload as an archive, then run ember test in Travis CI. That environment change caused the suite to only take about 6.5 minutes.

@NullVoxPopuli’s emberclear is on GitLab so you could check out the build history, ask about experience.

I should also mention buildkite. I prototyped it locally and it solved the ember build delays quite well. It is a different way of thinking about CI, but accomplishes similar goals and gives you more control over the environment. That said, GitLab instances as @Mehak_Fatima points out are fully open source and give you similar control.

We use drone.io for CI/CD. A Dockerfile to define your build environment, a drone.yml file to define your pipeline and you are good to go.

It’s open source so you can run it all on your own hardware, which is probably the number one reason we use it.

1 Like

For ember-data we used TravisCI (loved it but the builds can be slow, especially for large orgs with lots of repos), but recently moved to Azure Pipelines for perf reasons, which has been an amazing experience.

Thanks a lot, - never heard about drone.io. Looks nice at first look :slight_smile: