Example
The information obtained from Jenkins through the Red Hat OpenShift Container Platform plug-in for Jenkins and the Jenkins Observer includes URLs for several Jenkins elements. You can create topology tools that use these URLs to provide in-context navigation to Jenkins or your Git repositories from within the topologies displayed in Red Hat OpenShift Container Platform. The code snippets in this section demonstrate how to create such tools.
If required, you can customize how your Jenkins topologies are displayed further using the Configuring topology elements topics.
Opens a GitHub repository commits log
function url2Http(url) {
if(url.indexOf("http") != -1) {
return url;
}
var res = url.split(":");
var ghUrl = res[0].replace("git@", "https://");
var repoUrl = res[1].replace(".git", "");
return ghUrl + "/" + repoUrl;
}
if (asmProperties.repositoryUrl && asmProperties.revision) {
var normUrl = url2Http(asmProperties.repositoryUrl);
window.open(normUrl + '/ commits/'
+ asmProperties.revision);
}
Relationship type is builds
Opens the specific commit
function url2Http(url) {
if(url.indexOf("http") != -1) {
return url;
}
var res = url.split(":");
var ghUrl = res[0].replace("git@", "https://");
var repoUrl = res[1].replace(".git", "");
return ghUrl + "/" + repoUrl;
}
if (asmProperties.repositoryUrl && asmProperties.revision) {
var normUrl = url2Http(asmProperties.repositoryUrl);
window.open(normUrl + '/commit/'
+ asmProperties.revision);
}
Relationship type is builds
Opens the Jenkins resources records
if (asmProperties.url) {
window.open(asmProperties.url);
}
Resource types are person
, build
, job
Opens a GitHub repository tree view from the commit
function url2Http(url) {
if(url.indexOf("http") != -1) {
return url;
}
var res = url.split(":");
var ghUrl = res[0].replace("git@", "https://");
var repoUrl = res[1].replace(".git", "");
return ghUrl + "/" + repoUrl;
}
if (asmProperties.repositoryUrl && asmProperties.revision) {
var normUrl = url2Http(asmProperties.repositoryUrl);
window.open(normUrl + '/tree/'
+ asmProperties.revision);
}
Relationship type is builds
Opens the build log console view in Jenkins
if (asmProperties.buildConsoleLog) {
window.open(asmProperties.buildConsoleLog);
}
Resource type is build