feature/21176 #1
|
@ -1,9 +1,11 @@
|
|||
def agent_root_folder = '/var/lib/jenkins/.m2'
|
||||
def projects2artifacts = [:]
|
||||
def artifacts2projects = [:]
|
||||
def modules2deps = [:]
|
||||
def alreadyInTheTree = []
|
||||
def inputProject = params.jenkins_project.trim()
|
||||
def report = [:]
|
||||
|
||||
report['project'] = inputProject
|
||||
|
||||
pipeline {
|
||||
|
@ -14,7 +16,7 @@ pipeline {
|
|||
environment {
|
||||
AGENT_ROOT_FOLDER = "${agent_root_folder}"
|
||||
PIPELINE_BUILD_NUMBER = "${env.BUILD_NUMBER}"
|
||||
WALKER_NOTES = "${agent_root_folder}/walker_notes.${pipeline_build_number}.md"
|
||||
WALKER_NOTES = "${agent_root_folder}/walker_notes.${inputProject}.md"
|
||||
}
|
||||
|
||||
|
||||
|
@ -83,7 +85,7 @@ pipeline {
|
|||
script {
|
||||
sh '''
|
||||
cp $WALKER_NOTES ./walker_notes.${PIPELINE_BUILD_NUMBER}.md
|
||||
cat ./$WALKER_NOTES
|
||||
cat ./walker_notes.${PIPELINE_BUILD_NUMBER}.md
|
||||
'''
|
||||
}
|
||||
}
|
||||
|
@ -180,43 +182,16 @@ def printReport(report) {
|
|||
text += "\n"
|
||||
}
|
||||
println text
|
||||
appendNotes(text)
|
||||
|
||||
}
|
||||
|
||||
// print the final report
|
||||
def saveReport(report) {
|
||||
def text = ''
|
||||
def indent = '\t'
|
||||
text += "Dependency Report for ${report['project']}"
|
||||
text += "\n\n"
|
||||
text += "|--Project Maven Modules\n"
|
||||
report['downstream_modules'].each { depth, artifacts ->
|
||||
artifacts.each { name, data ->
|
||||
text += "${indent}|--Module: ${name}\n"
|
||||
text += "${indent * 2}|--Deepest Dependency Level: ${depth}\n"
|
||||
text += "${indent * 2}|--Used by (Maven Modules)\n"
|
||||
data['dependencies'].each { d ->
|
||||
text += "${indent * 3}|--${d}"
|
||||
text += "\n"
|
||||
}
|
||||
text += "${indent * 2}|--Referred by (Jenkins Projects)\n"
|
||||
data['projects'].each { p ->
|
||||
text += "${indent * 3}|--${p}"
|
||||
text += "\n"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
text += "\n\n"
|
||||
text += "|--All Downstream Projects\n"
|
||||
report['downstream_projects'].unique().sort()
|
||||
report['downstream_projects'].each { p ->
|
||||
text += "${indent}|--${p}"
|
||||
text += "\n"
|
||||
}
|
||||
text > WALKER_NOTES
|
||||
def appendNotes(report) {
|
||||
manuele.simi marked this conversation as resolved
|
||||
sh("""
|
||||
echo "${report}" >> $WALKER_NOTES
|
||||
""")
|
||||
}
|
||||
|
||||
|
||||
// debug job
|
||||
def printJob(job) {
|
||||
println("fullname ${job.fullName}")
|
||||
|
|
Loading…
Reference in New Issue
You don't need the shebang here.
Are you referring to the bash shell?
I've used the bash shell otherwise the
echo -e
option doesn't work.Is there an easier way to do that?
echo
(without -e) works for sure without the shebang.But if it does work for you, leave like that. It's a detail.
Yes it works but without the "-e" option the backslashes are not escapes. The result is an unreadable file.