Final Thesis: Implementation of a Gitlab Adapter and the Evolution of its Interface
Abstract: Gitlab is an Software forge with integrated Continuous Integration (CI) and DevOps features under the MIT license for the non commercial version. As Gitlab is broadly used for inner source software development it is important to be able to measure code collaboration within existing ecosystems. To measure the code collaboration, the Patch-Flow Crawler (FPC) was created by the Open Source Research Group’s (OSR). It is not yet possible to use this software with Gitlab. Therefore this thesis implements an adapter that fetches the relevant patches from the Gitlab-API and transforms it to the FPC can calculate the patch-ﬂow. This includes organizational structures, mapping of pseudonyms to identities and the ownership of patches. The implementation was evaluated with the use of the production RRZE-Gitlab instance. Also Unit and Integration-tests validate the correctness of the code after Gitlab-API changes. The FPC now can natively calculate the patch-ﬂow from an conﬁgured Gitlab instance and is able to to determine entity-relationships, if the Gitlab instance contains the reliable data.
Keywords: inner source
Reference: Aron Metzig. Implementation of a Gitlab Adapter and the Evolution of its Interface. Bachelor Thesis, Friedrich-Alexander-Universität Erlangen-Nürnberg: 2019.