Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CI: Replace Travis CI with CircleCI #90

Closed
wants to merge 5 commits into from
Closed

CI: Replace Travis CI with CircleCI #90

wants to merge 5 commits into from

Conversation

sgerrand
Copy link
Contributor

💁 Over time, the performance of the builds run by Travis CI for this repository has degraded to the point where it now can take > 2 hrs for the build matrix for the Elixir and Erlang/OTP combinations that currently exist to setup and finish running. The problem here is not that each test run takes a long time (each job currently takes ~1m30s to execute), it's that Travis takes so long to provide build instances to run the build itself.

2020-11-20 Travis CI paginator slow build time

See this recent build for an example of this.

Having a such a slow build time is an impediment to contributors and automation alike. Contributors to this project will feel the pain of waiting for their builds to complete. Maintainers will feel the pain waiting for automation like Dependabot package updates to complete. To compound this, Travis CI recently announced changes to their pricing and build credits which affects OSS projects.

💡 To mitigate all of this, I suggest that we move this project to use CircleCI instead. These changes implement that by migrating the existing build from Travis CI to CircleCI.

Feedback on this proposal are very welcome!

Copy link

@nlopes nlopes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is slightly different from the Travis one in that we don't specify the OTP version.
Maybe that's something we should explore to ensure no breaking changes.

We could probably add 1.11 to this too now that it has been out for a bit.

Everything else looks great.

@sgerrand
Copy link
Contributor Author

sgerrand commented Nov 23, 2020

This is slightly different from the Travis one in that we don't specify the OTP version.
Maybe that's something we should explore to ensure no breaking changes.

I agree that this would be useful. However, if we are going to use that pattern then we'll need to use a different set of Docker images as CircleCI only tag their images with the Elixir version (either via circleci/elixir or cimg/elixir). (They dropped the OTP version from the image tags about a year ago. 😞)

Base automatically changed from master to main January 26, 2021 17:52
Sasha Gerrand and others added 5 commits March 1, 2021 13:10
* Paginator itself only supports Elixir ~> 1.5
* Inch ~> 2.0 only supports Elixir >= 1.7.0
Version 1.11 is the latest generally available release of Elixir.
@sgerrand
Copy link
Contributor Author

sgerrand commented Mar 1, 2021

Closing in favour of #100.

@sgerrand sgerrand closed this Mar 1, 2021
@sgerrand sgerrand deleted the circleci branch March 1, 2021 15:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants