2012-09-06 14 views
5

Ho un programma Java che controlla i lavori generati automaticamente per una serie di server hudson. Non è un problema creare, eliminare o aggiornare job (config) usando l'hudson remote API. Sono anche riuscito a creare visualizzazioni hudson e creare un nuovo lavoro per una vista hudson. Ma ho ancora bisogno di sapere come aggiungere un lavoro già esistente a una vista e come rimuoverlo di nuovo.Come aggiungere un lavoro a una vista in hudson

Ci sono URL con argomenti che eseguono il lavoro (come per la creazione di lavoro)?

risposta

1

Non c'è api per la vista di configurazione (almeno non in Jenkins v1.424.6), ma dovrebbe essere possibile aggiungere un processo per visualizzare foo utilizzando il modulo a http://[jenkins-host]/view/foo/configure (presentazione a http://[jenkins]/view/foo/configSubmit).

Se si utilizza Java, HTMLUnit o HttpClient di Apache HttpComponents può aiutare con questo.

+0

Ho già provato questo approccio. Ma il problema che sto affrontando è che questo modulo non solo richiede l'elenco completo dei lavori che dovrebbero essere collegati alla vista, ma anche la configurazione della colonna della vista. E l'elenco di colonne da mostrare richiede la conoscenza delle classi di implementazione delle colonne. Se la configurazione della colonna è omessa, la vista è vuota, perché non viene mostrata alcuna colonna. Inoltre, deve essere inviata una rappresentazione jason del modulo. Se questo è omesso, il risultato è un codice di stato 500. Tutto sommato, questa non sembra una soluzione pratica. –

5

È possibile eseguire uno script groovy tramite Hudson CLI API che sarà aggiungere un lavoro a una vista. Ecco il codice:

import hudson.model.* 

def job = Hudson.instance.getView("View").getItem("Job") 
Hudson.instance.getView("View2").add(job) 

e il comando per il CLI è:

java -jar hudson-cli.jar -s http://`your-hudson-server` groovy myScript.groovy 

Si noti che è necessario disporre di plug-in supporto Groovy installato sul vostro esempio Hudson, al fine di eseguire lo script. È possibile installarlo su: http: // your-hudson-server/pluginManager.

Problemi correlati