Skip to content
This repository has been archived by the owner on Jan 24, 2018. It is now read-only.

Move this repository to Gitlab.com #210

Open
nicholas-itpedia opened this issue Jan 24, 2017 · 9 comments
Open

Move this repository to Gitlab.com #210

nicholas-itpedia opened this issue Jan 24, 2017 · 9 comments

Comments

@nicholas-itpedia
Copy link

I strongly suggest moving this repository to Gitlab.com. Gitlab has many features that we can use to improve development:

  • Issue Board
  • Resolve Merge Conflicts in Web UI
  • Gitlab CI (https://about.gitlab.com/gitlab-ci/)
  • Integrated: GitLab CI is part of GitLab. We can use it for free on GitLab.com
  • there are multiple executors and you can reproduce tests locally
  • Multi-platform: we can execute builds on Linux, Windows, OSX, and any other platform that supports Go
  • Docker support!!! We can easily spin up other Docker containers as a service as part of the test and build docker images
  • build scripts are command line driven and work with any other language
  • our builds run on a different machine than GitLab
  • can splits builds over multiple machines, for fast execution
  • a link in the merge request takes us to the current build log that updates dynamically
  • a .gitlab-ci.yml file that contains tests, allowing everyone to contribute changes and ensuring every branch gets the tests it needs
  • we can define multiple jobs per stage and you can trigger other builds
  • we can automatically spin up and down VM's to make sure builds get processed immediately and with minimize costs
  • Cycle Analystics ( https://about.gitlab.com/solutions/cycle-analytics/ )
  • lets us know how long it takes to complete each stage in the workflow from idea to production
  • Cycle Analytics is pre-configured and ready to track our workflow
  • FREE!!!!!

It should integrate well with our current testing tools.

Thoughts?

@YannickB
Copy link
Owner

YannickB commented Jan 24, 2017

Hello Nicholas,

While I think Clouder development shall move to Gitlab in the end, I believe the conditions are not met yet. Not so many people are used to use Gitlab, but everyone in the Odoo community use Github. I believe we shall first gain a momentum on the project before making the move.
Also remember Clouder may make the move into the OCA, which currently use Github.

That said, since Clouder will probably be a strong incentive for the Odoo community to use Gitlab, thanks to the Gitlab template, we must first :

  • Have the Gitlab template of Clouder works with the MQT of the OCA, so we have a full private Devops cycle for Odoo in Clouder/Gitlab. 70% of the work already done IMO, but the MQT itself need to be adapted for Gitlab.
  • Have it used by several Odoo integrators, with success

IMO, only then I think the conditions will be met to consider moving the collaborative development of the project under Gitlab. We may even at that point be in position to suggest Gitlab to the OCA, but until then it's best to continue using the free services offered for open-source by proprietary services like Github and Travis.

That said, I'd like to say that I'm always impress by the continuous innovation in Gitlab. Those guys really have a lot of great ideas, sometimes simple but always really useful. Of course if the OCA make the move by itself, we'll follow.

@YannickB
Copy link
Owner

Another thing : https://about.gitlab.com/features/review-apps/

Isn't that a runbot?... That would be awesome.

@nicholas-itpedia
Copy link
Author

@YannickB I am happy you support the idea of moving this project to Gitlab.com. You are very correct, the developers at Gitlab are always innovating. Every month (https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG.md) we get some very useful new features that will likely improve our engineering process.

Since using the MQT is the only barrier and it is 70% done, I think it would be a good idea to focus on the 30% so we can fully utilize the benefits of Gitlab.com. I can work on this. I will contact you directly to get an idea of what the 30% is.

We have been using Gitlab since 2013 (3.5 years). We have experience writing .gitlab-ci.yml files.

Please also remember, Gitlab is used by over 100,000 organizations, including:

  • IBM
  • RedHat
  • NASA !!!
  • Uber
  • Intel
  • Verizon
  • Nasdaq

@lasley please provide input

@nicholas-itpedia
Copy link
Author

@YannickB https://about.gitlab.com/features/review-apps/
is very similar to Runbot. I think we could use it. We can also use Runbot.

@YannickB
Copy link
Owner

Well the 30% I spoke should not happen here, but on the MQT repo itself. There is already some thoughts about this gitlab support in MQT (eg. OCA/maintainer-quality-tools#380 OCA/maintainer-quality-tools#379). We already had a working gitlab template in 0.9.0, we just need some debug and move under alpine.

@lasley I do guess this discussion will catch your interest, especially because of MQT and potential runbot. I'd like to hear your opinion regarding the gitlab template priority (MQT support, full devops pipeline, private docker registry), comparing to all the other current subjects (like monitoring/metrics/billing and website/subscription).

Regarding the move to gitlab.com, again I insist : we first need to have several successful Clouder/Gitlab implementation working in Odoo integrators. This will not happen overnight, so really no pressure on this topic.

@lasley
Copy link
Contributor

lasley commented Jan 24, 2017

I've personally had some bad luck with Gitlab. We had an instance where an engineer deleted a user, which subsequently deleted everything to do with that user. Unfortunately that user happened to be me, and I had essentially made every ticket in the system.

It makes sense why this happened knowing how foreign key constraints work, but is something that should have never been possible through a UI - particularly without warning. Gitlab isn't really up to Enterprise standards for reasons such as this, so you will honestly never see me using it.

Personal feelings aside though - moving to Gitlab gets us much further from the goal of moving into OCA, which is hosted in Github. We're still a ways off from that, but it's definitely on the horizon after this insane incubator push we're doing.

Regarding MQT - we already use these tools in Bamboo, which is similar to Jenkins. I know a few others that use it in Gitlab too, so I would say that it is already 100% compatible. The piece of the puzzle to solve that is Vauxoo's Travis2Docker. We wrote a blog article on configuring it in Bamboo, but going to Gitlab would actually be much easier.

cc @tedsalmon

@YannickB
Copy link
Owner

Thanks @lasley for the feedback. We agree essentially, the move under Gitlab.com is essentially linked to what happen in the OCA. I still think that the Gitlab template is important, Gitlab is the central component IMO for a full open-source and private infrastructure and that's one of the main goal of Clouder, but I'm not sure where it is located in the priority list.

Anyway, it's good to know MQT shall be already compatible with Gitlab.

@lasley
Copy link
Contributor

lasley commented Jan 24, 2017

Billing is top of my priority list at the moment. I haven't actually messed around in the Gitlab workflow that you made for Clouder yet either, so I could also just be ignorant of its amazingness in this context TBH

@YannickB
Copy link
Owner

Honestly, I completely agree billing shall be the top priority (and documentation on my side). Anyway, I really think that once we finish the other topics, put the finishing touch on the gitlab template would not be so hard, let's focus on the hard part for now.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants