我想在构建后将构建日志作为附件发送,但它不可读,因为很多文本都是以 Base64 相关编码的:如何解密 Jenkins 8mha 值
由于这个 jenkins 实例几乎总是在生产中,我无法安装插件或添加依赖项。有没有办法从詹金斯日志中获取可读的文本?
我读到你可以对 jenkins 进行 API 调用以从网站获取文本,我会尝试一下,但在那之后我就迷失了。
有Jenkins高手有建议吗?
而不是 [8mha:AAAAqR+LCAAAAAAAAP9b85aBtbiIQSajNKU4P08vOT+vOD8nVc+jsiC1KCczL9svvyTVzHb1RttJBUeZGJg8GdhyUvPSSzJ8GJhLi3JKGIR8shLLEvVzEvPS9YNLijLz0q0rihik0IxzhtAgwxggg JGJgaGiAMiQL2HQ0c/KT9J3zkhNzs4vLVE1MtAFYpfEkkQg5ZuYl5ieWgRkBbgF65sa6QMAtVXQDbEAAAA=[0m
我正在尝试获取可读文本,例如:由用户启动....
事实证明你不需要对其进行编码,因为实际有用的信息在最后。解决方案:定义一个模式并过滤该模式的字符串。
不幸的是,在后期步骤中检索构建日志并不理想,因为它不包含所有行......
def cleanLog(inputString) {
def pattern = /\u001B\[8mha:(.*?)\u001B\[0m/
def matcher = (inputString =~ pattern)
def result = inputString
while (matcher.find()) {
def substringToRemove = matcher.group(0)
result = result.replace(substringToRemove, "")
}
return result
}