[Original] CI continuous integration system environment--Gitlab+Gerrit+Jenkins complete docking https://www.cnblogs.com/kevingrace/p/5651447.html

In recent years, due to the increasing popularity of open source projects and communities, the continuous integration (CI) system has been born, and more and more people are talking about collaborative development, agile development, iterative development, continuous integration and unit development. Test out these cool terms. However, most of them are only heard and said, and few domestic companies can have a complete CI system process. On the contrary, some open source projects have a complete CI system, such as openstack.
In order to realize an automated process of code hosting -> code review -> code release, I specially deployed the Gitlab+Gerrit+Jenkins docking environment on the IDC server. The operation process is recorded below:
---------- -------------------------------------------------- -------------------------------------------------- --------------------------
1) Code hosting
on Gitlab The project created on gitlab is set to Private, and ordinary users only have access to this project. Pull permission, cannot directly push
Git's own code review function
to force Review: For projects created on Gitlab, specify that the relevant user has only Reporter permission, so the user does not have permission to use the git push function, and can only git review to the Gerrit system. Jenkins is in Monitoring project events on Gerrit will trigger build tasks to test the code. Jenkins marks the project as Verified (information verification) success or failure through ssh gerrit, and successfully notifies other personnel to Review (code review).
Gitlab protects the Master branch: Projects created on Gitlab can protect the Master branch. Ordinary users can create branches and submit code to their own branches without permission to submit directly to the Master branch. The user finally submits an application to merge his own branch. To the Master, after the administrator receives the Merge request, he or she chooses whether to merge or not after Review.
It is possible to deploy gitlab and gerrit on two machines, so that gitlab can both host the gerrit code and act as a backup for gerrit.

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324646418&siteId=291194637