SCM Links - Links created by Sealights do not point back to the correct SCM page
Problem
Sealights attempts to create links back to the customers SCM based on the repo URL and the type and version of the SCM the customer uses.
In some cases this cannot be created properly as the repo URL is different to the actual URL used when browsing to the files through a browser.
Wrong SCM type is sent to Sealights
Wrong bitbucket on premise version - As Bitbucket has changed their link format between versions, if the wrong version is provided to Sealights the link can be incorrect
Different DNS and port - The DNS and port used by the CI could be different to the one used when browsing to the files through a browser. This mainly happens when connecting in the CI through ssh rather than https
CI uses a local repo and in turn sets the repo URL to be a local or temp path rather than the real repo
Solution
Sealights provides the ability to set what the correct values should be with 3 parameters. See various agent documentation on means to doing so
SCM Provider
Sealights attempts to identify this on its own by looking at the DNS. If it cannot be identified automatically, this must be provided.
Possible values are: github, bitbucket, gitlab (no capitals)
SCM base URL
If not identified automatically you should provide the following based on your SCM:
SCM | URL format |
---|---|
bitbucket.org |
|
Bitbucket On-Prem |
|
Github On-Prem |
|
Gitlab On-Prem |
|
Gitlab CI |
|
SCM version
Should be set for any On-Premise SCM type.
If using a cloud SCM and the repo URL is not sent correctly, this should be set to "cloud"
If your on premise SCM version is often updated in order to comply with latest security patches for example, you can also provide a version retrieved dynamically as the sample command lines below
GitHub on-prem:
githubVersion=`curl -sI https://github.mycompany.com/api/v3 | grep Version | awk '{print $2}' | tr -d '\r'`
Bitbucket:
bitbucketVersion=`curl -s https://mybitbucket.mycompany.com/rest/api/1.0/application-properties | jq -r .version`
GitLab:
gitlabVersion=`curl https://mygitlab.mycompany.com/api/v4/version | jq -r .version`