GitLab Integration [GOT CREATED]

An integration for GitLab should be added:
https://docs.gitlab.com/ee/api/

I would like to work on this topic or test the work of others.

1 Like

Great, thanks! You can then check out the Github nodes. They are probably a good starting point as the nodes should pretty much work the same:


I started with gitlab-nodejs and realized very quickly that third-party dependencies are currently not usable (or difficult to use). Yes, now I’m going to reimplement the existing Github nodes for Gitlab.

Third-party dependencies should technically not be a problem. They should work without a problem. I just discourage the use too not end up with more and more dependencies as described here https://docs.n8n.io/#/create-node?id=node-development-guidelines

Taking the GIthub-Node as a starting point is probably not just faster it also make sure that things work consistent between nodes.

Maybe this is better a topic for an independent thread:
I build a custom Docker image that additionally has node-gitlab installed running npm install -g .... But when starting the container the missing gitlab library will still be complained about.
I totally understand the risk of arbitrary thirt-party dependencies - and a REST client can certainly be developed without a special SDK. But implementing proprietary protocols (e.g. Kafka) is much more difficult.

Hm when does it throw that error? When you execute n8n-node-dev build, when you start n8n or when you execute the node?

Totally agree with you for some things a special SDK is needed and it would be really strange and stupid having to reimplement everything. In this case it is totally OK to install a special module which takes care of that. However for all simple REST things (under which probably around 80% of the integrations fall) I want to avoid it. No need to have 10 different libraries which make http requests.

Anyhow, integrations which are more complicated and are not needed by the most users I would however prefer that they get implemented in own packages and then only be installed by people which really needed them. It is already possible to create a package named “n8n-nodes-*” and defining the “n8n” key in the package.json (like in the “nodes-base” page). It will then find the nodes and load them. Still have to document it though…

Created now an issue in Github and gave it the “Hacktoberfest” tag so that it counts toward it in case you are participating:

@CrystalMethod Are you working on that? Because another user expressed interest and did not hear from you for 19 days.

Thanks a lot to lucafaggianelli as he created the integration and I did just merge it. Will release a new n8n version which includes it later in the day.

1 Like

The lastest version of [email protected] includes now the Gitlab integration.

1 Like