Sto provando a eseguire uno script di shell se il passaggio di generazione o fallisce dopo la post-compilazione in Jenkins. Non riesco a vedere questa opzione in post-build per eseguire alcuni script di shell tranne che per eseguire un target.Esegui script di shell dopo la creazione di post in Jenkins
risposta
Molto facilmente fatto con il plugin Post build task.
Dovresti impostare lo script di shell post-compilazione come lavoro Jenkins separato e attivarlo come passaggio post-build. Sembra che sarà necessario utilizzare lo Parameterized Trigger Plugin poiché l'opzione standard "Crea altri progetti" funziona solo se la build di attivazione ha esito positivo.
come posso attivare lo script se la generazione non riesce basato esclusivamente su entrambi script di shell eseguibile che ho sotto i miei compiti di lavoro? Grazie – kforkarim
Pensando a questo, potrebbe essere più facile controllarlo nello script di compilazione stesso. Che struttura di costruzione stai usando? –
Utilizzare lo script di shell per creare il framework iOS – kforkarim
Se sto leggendo correttamente la tua domanda, vuoi eseguire uno script nella parte delle azioni post build del build.
Io stesso uso PostBuildScript Plugin per l'esecuzione di git clean -fxd
dopo che la build ha archiviato artefatti e risultati dei test pubblicati. I miei schiavi Jenkins hanno dischi SSD, quindi non ho la stanza per mantenere i file generati nello spazio di lavoro.
Si dovrebbe essere in grado di farlo con il Batch Task plugin.
- Creare un'attività batch nel progetto.
- Aggiungere un'opzione di post-generazione "Richiama operazioni in batch" selezionando lo stesso progetto.
Un'alternativa può anche essere il plug-in Post build task.
È inoltre possibile eseguire comandi arbitrari utilizzando lo Groovy Post Build - e questo vi darà un grande controllo su quando corrono e così via. Lo usiamo per eseguire uno script di shell 'finger of blame' nel caso di build fallite o instabili.
if (manager.build.result.isWorseThan(hudson.model.Result.SUCCESS)) {
item = hudson.model.Hudson.instance.getItem("PROJECTNAMEHERE")
lastStableBuild = item.getLastStableBuild()
lastStableDate = lastStableBuild.getTime()
formattedLastStableDate = lastStableDate.format("MM/dd/yyyy h:mm:ss a")
now = new Date()
formattedNow = now.format("MM/dd/yyyy h:mm:ss a")
command = ['/appframe/jenkins/appframework/fob.ksh', "${formattedLastStableDate}", "${formattedNow}"]
manager.listener.logger.println "FOB Command: ${command}"
manager.listener.logger.println command.execute().text
}
(Il nostro comando prende l'ultima data build stabile e l'ora corrente come parametri in modo che possa andare indagare che potrebbe aver rotto la build, ma è possibile eseguire qualunque comandi che ti piace in un modo simile)
- 1. Esegui script shell in Gradle
- 2. Shell script: Esegui comando dopo l'esecuzione di "uscita" comando nella shell script
- 3. Esegui comando dopo la creazione del Webpack
- 4. Passare la variabile dallo script di shell a jenkins
- 5. Esegui un singolo comando nello script di shell senza sudo
- 6. Jenkins non può accedere alias di shell
- 7. Jenkins: impostazione della variabile env dallo script di shell
- 8. REST API POST Reazione dopo la creazione di più oggetti?
- 9. Creazione di file con alcuni contenuti con script di shell
- 10. Esegui script personalizzato dopo la pagina caricata con Ratchet \ Push.js
- 11. Un modo pulito per avviare uno script di shell in background da Jenkins
- 12. Esegui script Python senza la console di Windows che appare
- 13. l'ordinamento in script di shell
- 14. script di shell: if
- 15. script di Shell - controllare la sintassi
- 16. Shell array di script
- 17. Esegui batch interattivo in Visual post eventi di build
- 18. PHP: esegui lo script 5 minuti dopo l'esecuzione dello script
- 19. Eseguire una shell di comando a Jenkins
- 20. IOS Esegui script di shell personalizzato 'embed pods framework' errore file non trovato
- 21. Processo di uccisione in Shell Script
- 22. Come si esegue lo script di shell dallo script groovy Jenkins nell'opzione parametri?
- 23. SQLite per script di shell
- 24. avvia il demone sul server remoto tramite lo script di shell SSH di Jenkins esce misteriosamente
- 25. Ripetere la creazione n volte in Jenkins
- 26. Esegui lo script di shell in gruntfile e assegna il risultato alla variabile
- 27. Come impostare le variabili in uno script di shell su più righe all'interno di Jenkins Groovy?
- 28. utilizzare o in script di shell script di
- 29. Esegui l'espressione dopo la differenziazione
- 30. Esegui applicazione di metropolitana dalla shell personalizzata
Suggerirei il [plugin PostBuildScript] (https://wiki.jenkins-ci.org/display/JENKINS/PostBuildScript+Plugin) invece di eseguire semplicemente uno script. È più semplice e più robusto se non è necessario condizionare l'output del registro. Ad esempio, consente di eseguire qualsiasi passo di costruzione nelle azioni post-creazione. – Sampo
Si noti inoltre che il plug-in Post Build Task mette l'intero output della console in memoria per eseguire il test condizionale ... che può richiedere molta memoria se centinaia di lavori producono molto output ... Il nostro jenkins master è appena andato in crash a causa di questo plug-in ... – grayaii
Il plug-in PostBuildScript è stato sospeso. – Upen