2014-12-15 15 views
17

Sto cercando di trovare un modo per richiedere all'utente di selezionare e caricare un file generico da un computer locale a un lavoro Jenkins prima della creazione. Il file di input che l'utente sta per caricare non è necessariamente un testo o un file di proprietà.Come caricare un file generico in un lavoro Jenkins?

Sto specificatamente cercando di far sì che l'utente "selezioni" il file desiderato - sfoglia il proprio file; l'utente non deve passare il percorso del file.

Grazie

+0

Potrebbe essere utile. http://stackoverflow.com/questions/16914244/upload-a-txt-file-to-jenkins-build-job-as-build-parameter – NotAgain

+0

Uso di 'curl': http://stackoverflow.com/questions/13348480/how-to-upload-file-da-command-line-come-file-parameter-in-jenkins – jmunsch

risposta

20

Utilizzare il file di parametri :

parametro File permette un accumulo di accettare un file, da presentare da parte dell'utente quando si pianifica una nuova build. Il file verrà inserito nell'area di lavoro nella posizione nota dopo che il check-out/aggiornamento è stato eseguito, in modo che gli script di compilazione possano utilizzare questo file.

enter image description here

Se è necessario verificare il file ha una certa estensione, si dovrebbe avere a che fare con uno script come parte del tuo lavoro, e non riescono il lavoro è l'estensione/tipo di contenuto non lo fa abbina quello che ti serve.

+0

Grazie, "Parametro file" ha funzionato, – DAZA

0

Questo è un po 'fastidioso da gestire quando non si sa quale sarà il nome del file o sarà necessario cambiarne il nome prima che raggiunga la sua destinazione. Hai bisogno di eseguire un trucco. Questo è come lo faccio:

  1. Utilizzare il parametro "Parametro File" per caricare il file
  2. Utilizzare lo script specifico per OS per rinominare il file da qualunque avete chiamato la vostra File Parameter a quello che vuoi che sia , ad esempio, se il mio File Parameter aveva il valore di File locationfile_name invece di un file-percorso relativo vero, mi piacerebbe poi fare qualcosa di simile per esempio, di Windows all'interno di una Build-passo per "Esegui comando batch Windows":

move .\file_name .\%file_name%

E quindi basta usare ArtifactDeployer per copiare tutto lì nella posizione desiderata.

ps: questo non rimuoverà le firme digitali, quindi l'operazione di spostamento dovrebbe essere considerata per lo più sicura.

Problemi correlati