feat(ci): improve pipelineEvent with dynamic title, context and results
- context: 'ha-addons_build'
- title: 'Build degli addon HA: <addon1, addon2>: Completato/Fallito'
- results: mappa addon {status, available, file} derivata da buildMap
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
22
ci/Jenkinsfile
vendored
22
ci/Jenkinsfile
vendored
@@ -418,12 +418,26 @@ pipeline {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Notifica via shared-lib pipelineEvent (se disponibile)
|
// Notifica via shared-lib pipelineEvent → Redis Stream
|
||||||
try {
|
try {
|
||||||
|
def finalStatus = currentBuild.result ?: 'SUCCESS'
|
||||||
|
def addonNames = addons.isEmpty() ? 'nessun addon' : addons.join(', ')
|
||||||
|
def outcomeWord = (finalStatus == 'SUCCESS') ? 'Completato' : 'Fallito'
|
||||||
|
|
||||||
|
def evResults = buildMap.collectEntries { addon, info ->
|
||||||
|
def isOk = (info.status == 'OK')
|
||||||
|
[(addon): [
|
||||||
|
status: isOk ? 'done' : 'failed',
|
||||||
|
available: isOk,
|
||||||
|
file: isOk ? "${env.REGISTRY}/hassio-addons/${addon}:${info.version}" : null,
|
||||||
|
]]
|
||||||
|
}
|
||||||
|
|
||||||
pipelineEvent(
|
pipelineEvent(
|
||||||
title: 'HA Add-ons CI',
|
title: "Build degli addon HA: ${addonNames}: ${outcomeWord}",
|
||||||
context: 'Build & Push',
|
context: 'ha-addons_build',
|
||||||
status: currentBuild.result ?: 'SUCCESS',
|
status: finalStatus,
|
||||||
|
results: evResults,
|
||||||
)
|
)
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
echo "[WARN] pipelineEvent fallito: ${e.message}"
|
echo "[WARN] pipelineEvent fallito: ${e.message}"
|
||||||
|
|||||||
Reference in New Issue
Block a user