User Tools

Site Tools


ochorocho_contribute_to_gitlab

This is an old revision of the document!


How to contribute to Gitlab ... or not

How i started

Back in dec 2018 i was not happy about the way satis was used to build composer packages in our company. I felt like this is to complex for what it was doing and took to long to build (~3 minutes for 50 packages) on the Gitlab Runner.

So i checked gitlab.com for any existing solution to my problem. Finally found a feature proposal.

So i decided to give it a shot. After making sure Gitlab will accept Merge Requests for this feature. Well, how long could it take if you have already half the job done on the first commit? At least i felt like i made big progress.

This is what i came up with …

As simple GUI to view available composer packages on a single page with the option to enbale/disable it for the Composer Registry

… and the required JSON for Composer to read packages

I really loved this idea for it's simplicity. No Runner required, no build process. Simply link the package in composers JSON file to Gitlabs “Download Code/Tag” feature. No rocket science here.

Feedback kicks in

Got feedback from Gitlab:

@ochorocho please take a look at maven and npm packages implementation in GitLab for idea of what we are expecting:

Ok, so i followed along the code and tried to make it work the way maven and all the other packages work. At that time there was no code in Gitlabs CE repository. So i started over and used Gitlabs EE repository.

So in my mind i had to implement following features:

* Use a runner to build and upload the package to Gitlab * Create/extend packages template for Composer * Create JSON file containing only the packages a user is allowed to view * Add tests for API endpoints and features * Add docs

This ended up in 3 Merge Requests:

* Allgemein MR * GUI MR * DOcs

ochorocho_contribute_to_gitlab.1590223130.txt.gz · Last modified: 2020/05/23 10:38 by admin