2015-01-09 8 views
9

TeamCity 8.1.4 (build 30168)È possibile specificare quando deve essere eseguita una feature di costruzione?

Mi accorgo che le funzioni di compilazione vengono sempre eseguite come prima parte del primo passaggio nei passaggi di creazione, ma è possibile eseguire una funzione di generazione, ad es. come prima parte di step2? O come ultima parte di Step1?
Qualsiasi aiuto è apprezzato!

(Se è di interesse, questo è il mio problema concreto;
Ho una meta corridore che crea un numero di build specifica, io uso questo come un primo passo nella procedura di compilazione voglio utilizzare la funzione di compilazione. "AssemblyInfo patcher", ma questo funziona prima che il meta runner abbia fatto la sua cosa)

+0

Come sarebbe che passaggio di generazione di comunicare il numero di build da utilizzare per il prossimo passo/funzione? –

+1

@ LasseV.Karlsen Io uso Write-Host "## teamcity [buildNumber '$ BuildNumber']" nel meta runner. Funziona come previsto. Se uso codice personalizzato per aggiornare assemblyinfo.cs da% system.build.number% tutto è OK. Ma non voglio usare un codice personalizzato. –

+0

Hai mai trovato una risposta a questo? Ho appena incontrato lo stesso identico problema. – Bobson

risposta

3
  1. Creare un'altra configurazione di build, spostare il meta-runner lì.
  2. Modificare la tua parametro build report a build number tramite messaggio di servizio
  3. creare una dipendenza un'istantanea dalla configurazione di generazione a quello nuovo
  4. Nella configurazione con meta-corridore vai alla pagina Generale immettere% dep.META_RUNNER_CONFIG_ID.build. numero% al campo 'numero build'. Questo richiederà un numero di build dalla dipendenza e lo imposterà come numero di build. META_RUNNER_CONFIG_ID è l'ID di configurazione di build che vedrai nella pagina generale della tua configurazione in cui hai spostato meta runner.
  5. Usa% build.number% come sostituto in AssemblyInfoPatcher
+0

Grazie, Oleg. Questa potrebbe essere una soluzione, sfortunatamente non sono in grado di testare questo processo al momento e verificare. Considerando che sei uno sviluppatore di JetBrains, immagino che questo sia il modo di farlo, però;) –

+0

Ho due passaggi di build personalizzati - su quello che succede prima della build, e uno che accade dopo una build di successo che modifica i parametri del primo passo, rendendo difficile (impossibile) dividere il primo passo in una costruzione separata. Inoltre, sto usando i modelli, che non possono avere dipendenze da altri modelli, che richiedono agli utenti di fare collegamenti extra dopo l'implementazione dei modelli. Sembra che potrebbe essere necessario implementare manualmente le funzionalità di build critiche. : | –

+0

Ho avuto qualche difficoltà a comprendere questa soluzione finché non ho trovato le risposte su http://stackoverflow.com/questions/27863351/is-it-possibile-per-specificare-quando-una-una-funzionalità-è-di-be- -correre. – ket

Problemi correlati