Accelera la mia pipeline di consegna

1

Ho una soluzione con molti componenti con diverso deploy iter:

  • Webend backend (su IIS)
  • Frontend AngularJS (su IIS)
  • Un gestore di processi (come servizio di Windows)
  • Un motore di proiezione (come servizio di Windows)
  • Un gestore di comandi (come servizio di Windows)

Sviluppo tutte queste cose. Alla fine della giornata, quando qualcosa di prezioso è pronto, devo spingere il componente aggiornato sul server (un server locale) per il test. Questo di solito significa:

  • Costruisci il componente (ricordati di cambiare ambiente test / rilascio)
  • Copia il raccoglitore
  • Apri una connessione desktop remoto
  • Incollalo sul server (dopo aver incrociato il percorso corretto)
  • sostituisci il vecchio pacchetto (per IIS) OPPURE reinstalla il servizio

se il test ha esito positivo, rifare questo per un ambiente di produzione. Come posso accelerare questo processo e andare nella direzione della distribuzione con un clic? Uno strumento come Vagrant può essere una buona compagnia? So che questa domanda potrebbe produrre risposte descrittive e basate sull'opinione pubblica ma sono bloccato!

    
posta BAD_SEED 27.10.2015 - 11:18
fonte

1 risposta

1

In primo luogo è necessario un server di integrazione continuo: consiglio Jenkins, è davvero facile da gestire ed è molto ben progettato.

Una volta che hai configurato per guardare automaticamente il tuo repository per le modifiche, controllali e costruiscile puoi iniziare a guardare all'automazione del meccanismo di distribuzione (nel ambiente di test).

In genere, ciò significa copiare i file, ma come hai i servizi, dovrai (almeno) fermarli. Quindi consiglierei di scrivere uno script per fermare i servizi, copiare i file da un "pacchetto" di tutti i file che sono stati creati e quindi riavviare i servizi. Questo script può essere solo un semplice file batch che utilizza sc.exe (o net stop ). Se vuoi essere leggermente più complicato, usa Wix per creare un programma di installazione msi ed eseguilo sul server remoto in modalità non assistita (cioè silenziosa) per aggiornare l'installazione distribuita.

Ho trovato cose come One-Click per essere un rompicapo, specialmente quando si tratta di distribuire in ambienti diversi - vale a dire qualsiasi metodo di implementazione si usi, si vuole essere in grado di eseguire esattamente la stessa cosa su Test e Produzione a sua volta.

    
risposta data 27.10.2015 - 12:56
fonte

Leggi altre domande sui tag