Hide successful pipeline steps

Hide successful pipeline steps in Jnkeins to allow effortless navigation to interesting failures.

Versión del día 14/2/2021. Echa un vistazo a la versión más reciente.

// ==UserScript==
// @name     Hide successful pipeline steps
// @version  1
// @grant    none
// @namespace basilevs
// @include https://jenkins*/jenkins/*/flowGraphTable/
// @grant       GM_log
// @description Hide successful pipeline steps in Jnkeins to allow effortless navigation to interesting failures.
// ==/UserScript==

function xpath(context, expression) {
  const result = [];
  var i = document.evaluate(expression, context, null, XPathResult.UNORDERED_NODE_ITERATOR_TYPE , null);
  if (!i)
    throw new Error("Invalid query: "+expression);
  var data;
  while (data = i.iterateNext()) {
    result.push(data);            
  }
  return result;
}

console.log("Hiding pipeline steps");

var sheet = document.createElement('style')
sheet.innerHTML = "tr.successful  { display:none ; }";
document.body.appendChild(sheet);

const nodes = xpath(document.getElementById("nodeGraph"), './/tr/td/img[contains(@class, "icon-blue")]/../..');
nodes.forEach(node => {
  node.classList.add("successful");
  return true;
});