Ich habe folgendes JobDSL spec:Wie wird der gängige Jenkins-JobDSL-Code umgestaltet?
job {
steps {
gradle('generateLock saveLock', '-PdependencyLock.includeTransitives=true', true) { node ->
node/wrapperScript('${NEBULA_HOME}/gradlew')
}
gradle('check', '', true) { node ->
node/wrapperScript('${NEBULA_HOME}/gradlew')
}
}
}
Ich mag würde den gemeinsamen Code Refactoring, sagen wir, in eine Funktion:
def gradlew(String tasks, String options) {
gradle(tasks, options, true) { node ->
node/wrapperScript('${NEBULA_HOME}/gradlew')
}
}
Aber die gradle
Funktion innerhalb der nicht sichtbar ist gradlew
Funktion. Was ist der richtige Weg, dies zu tun?
Ich würde empfehlen, einige explizite Beispiele im Projekt Wiki zu finden, wie man häufig verwendeten Code extrahiert. Wir haben lange nach dem gleichen gesucht. –
Ich werde den Job DSL Wiki-Seite zu konfigurieren Blöcke aktualisieren, siehe https://github.com/jenkinsci/job-dsl-plugin/pull/683 – daspilker
Was der Schrägstrich nach Knoten macht -> node /. ..? – sloven