The source project of this merge request has been removed.
WIP: Extend External CI integration for MR Widget to show pending state of a build
What does this MR do?
- It extends Gitlab to also show the pending state of a build running on an external CI system. Currently it only shows "failed" or if the build succeeds it shows "success". With this MR it will also displays when a build is running (as it already does, if you use Gitlab CI)
- This MR also fixes a bug, that shows an error message when using TeamCity as CI-Server (maybe affect also some other external CI-Systems) if you open a merge request for the first time (see (1)). The reason for this error is, that the reactive cache, which is used in the teamcity_service, returns null when it's triggered for the first time. This null value is then written into the initial vue store and then produces the error. I fixed it by returning "pending" state when the reactive_cache is null. (I know thats not the cleanest solution for that)
- The last thing I added to this MR is the ability to show the link and the state of the current CI-Build of the external build system.
Are there points in the code the reviewer needs to double check?
Find a better solution for point 2 in my description. (I hope you have one)
Why was this MR needed?
Because the current MR Widget shows an error to the user that the CI Servers are not reachable, but thats not right.
Screenshots (if relevant)
Does this MR meet the acceptance criteria?
-
Changelog entry added, if necessary -
Documentation created/updated -
API support added -
Tests added for this feature/bug - Review
-
Has been reviewed by UX -
Has been reviewed by Frontend -
Has been reviewed by Backend -
Has been reviewed by Database
-
-
Conform by the merge request performance guides -
Conform by the style guides -
Squashed related commits together -
Internationalization required/considered -
End-to-end tests pass ( package-and-qa
manual pipeline job)