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

Move to GitLab CI/CD instead of Travis? #1369

Closed
vprithvi opened this issue Feb 21, 2019 · 17 comments
Closed

Move to GitLab CI/CD instead of Travis? #1369

vprithvi opened this issue Feb 21, 2019 · 17 comments
Labels
stale The issue/PR has become stale and may be auto-closed

Comments

@vprithvi
Copy link
Contributor

From Gitlab's docs, they support GitHub integration, and "gives open source projects hundreds of concurrent jobs with 50,000 free CI pipeline minutes".

In light of the news around TravisCI, I think we should evaluate alternatives.

@jpkrohling
Copy link
Contributor

Yes, please! I'm a huge fan of GitLab CI, especially for its ability to run "workers" (gitlab-runner) on our own laptops. I believe this would also make it easier to run e2e tests with workers within VPNs, with the results being visible/available to the community.

Suggestion: we could first move to GitLab CI for the Operator repository and see how it goes, as it has similar requirements as the main repo, but if it breaks, it's not as problematic as this one here.

cc @kevinearls

@yurishkuro
Copy link
Member

What happens after "free N minutes" are exhausted?

@jpkrohling
Copy link
Contributor

jpkrohling commented Feb 22, 2019

OpenSource projects get the Gold plan for free, which includes 50,000 CI pipeline minutes in their shared runners. If we use it up, we can have private runners inside a machine of "ours". I'm sure we would find a place for the runners if we ever reach this number :-)

Is it possible to get a report from Travis with the average amount of minutes per month we used in the last year?

@caniszczyk
Copy link
Contributor

caniszczyk commented Feb 22, 2019 via email

@vprithvi
Copy link
Contributor Author

This site shows an visualization of build times - we've used roughly 28 hours or 1680 minutes of build so far this month. 50k minutes works out to running a single executor for ~34 days!

@markpundsack
Copy link

Anything we can help with? It should be a fairly easy transition, and you can certainly try it out before removing your Travis setup.

@vprithvi
Copy link
Contributor Author

I just created a MR for Gitlab OSS project status.

@markpundsack Thanks for the offer! We'll ping you if anything comes up!

I think the next steps are to create the build definition files for Gitlab, and set up a CI pipeline. By setting the Gitlab check as optional, we can see how it fares when compared to Travis.

One thing that is much more verbose on Gitlab build scripts are matrix builds (The builds need to use YAML anchors, instead of the nicer definition Travis provides)

@jmichalek132
Copy link

any progress on this?

@jpkrohling
Copy link
Contributor

We talked a bit about it during the last bi-weekly meeting. People also mentioned AppVeyor and CircleCI, but we were running short of time and kinda skipped a conclusion.

We are currently using GitHub Workflow in the Jaeger Operator, and I'm quite happy with it, apart from a few annoying bugs (actions/checkout#23, I'm looking at you). To me, that's what we should be using in the future, especially once their private runners becomes real.

@jmichalek132
Copy link

So no gitlab than?

@vprithvi
Copy link
Contributor Author

I'm curious - what specific issues are you running into with the current setup?

@jpkrohling
Copy link
Contributor

No GitLab. I think @kevinearls did some tests with GitLab when we thought about moving off of Travis some months ago for the Jaeger Operator, but decided it was better to stay with Travis for the moment (back then). Perhaps he can add more details, in case you are interested.

@jmichalek132
Copy link

I am I don't have that much experience with travis and I am currently writing gitlab pipeline to build jaeger.

@kevinearls
Copy link
Contributor

Sorry for the delay but I was on vacation. The advantage of Travis and GitHub Workflow is that we can start multiple instances of minikube to run e2e tests in parallel, which means we can validate PRs in a reasonable amount of time.

I can't find my notes on this at the moment, but if I remember correctly Gitlab says it has great integration with Kubernetes instances that you own on GCE/GKE, but it doesn't permit you to create short term minikube instances the way GitHub and Travis do.

@yurishkuro
Copy link
Member

Interesting bit from Linkerd Community Meeting notes:

Moved CI off of TravisCI on to GitHub Actions. Were hitting lots of issues w/Travis; now things are vastly improved
Thomas PROMISES to [try to convince someone to] write a blog post about how awesome this is

@stale
Copy link

stale bot commented Jan 9, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.

@stale stale bot added the stale The issue/PR has become stale and may be auto-closed label Jan 9, 2022
@pavolloffay
Copy link
Member

Closing we are using github actions now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
stale The issue/PR has become stale and may be auto-closed
Projects
None yet
Development

No branches or pull requests

8 participants