external ci integration
There are many ways to do a CI build in gitlab.
- Gitlab-CI - This internally uses the pipline object to store the whole information about the ci build
- Pushing commit status via the API (POST /projects/:id/statuses/:sha) - This internally also wraps the whole status information sent by the CI system into a pipline object
- Gitlab Integrations (e.g. Teamcity-Integration) - This is implemented completely different than the first two. It uses a reactive cache to cache the results for the ui. Also the information that is passed to the ui is different. e.g. only the ci status is passed and for example the ci result url is missing.
Now my question. Why are Gitlab Integrations handled in another way than the API Requests?