configure { project ->
project / publishers << 'hockeyapp.HockeyappRecorder'('schemaVersion': '2') {
applications() {
'hockeyapp.HockeyappApplication'(plugin:'hock...@1.2.1', schemaVersion: 1) {
apiToken '//7f537caf75674fd3b2cb06e873855a20'
notifyTeam true
filePath 'apps/android/app/build/outputs/apk/app-release.apk'
mandatory false
downloadAllowed true
releaseNotesMethod(class: 'net.hockeyapp.jenkins.releaseNotes.NoReleaseNotes')
uploadMethod(class:'net.hockeyapp.jenkins.uploadMethod.AppCreation')
}
}
debugMode false
failGracefully false
}
}
configure { project ->
project / publishers << new HockeyApp(apiTokenValue: 'abc123def456',
filePathValue: 'apps/android/app/build/outputs/apk/app-release.apk').hockeyAppp()
}
With:
class HockeyApp {
CharSequence apiTokenValue
CharSequence filePathValue
public Object hockeyAppp() {
return 'hockeyapp.HockeyappRecorder'('schemaVersion': '2') {
applications() {
'hockeyapp.HockeyappApplication'(plugin:'hock...@1.2.1', schemaVersion: 1) {
apiToken apiTokenValue
notifyTeam true
filePath filePathValue
mandatory false
downloadAllowed true
releaseNotesMethod(class: 'net.hockeyapp.jenkins.releaseNotes.NoReleaseNotes')
uploadMethod(class:'net.hockeyapp.jenkins.uploadMethod.AppCreation')
}
}
debugMode false
failGracefully false
}
}
}
But that just gives me the following exception in Jenkins:
groovy.lang.MissingMethodException: No signature of method: com.pegusapps.jenkinsjobs.HockeyApp.hockeyapp.HockeyappRecorder() is applicable for argument types: (java.util.LinkedHashMap, com.pegusapps.jenkinsjobs.HockeyApp$_hockeyAppp_closure1) values: [[schemaVersion:2], com.pegusapps.jenkinsjobs.HockeyApp$_hockeyAppp_closure1@7e523a66]
Any idea on how to do this in Groovy?
regards,
Wim