Automazione della gestione dei rilasci e degli elementi della configurazione su progetti python sotto VCS mercuriale

0

Ho una serie di progetti Python che sono sotto il mercuriale VCS. Vorrei automatizzare le seguenti attività:

  • Esegui la suite di test per ogni commit (CI).
  • Crea una distribuzione di origine per ogni commit, che ha un tag in mercurial. Questa è considerata una nuova versione.
  • Copia la distribuzione in un repository speciale.

C'è Jenkins come proposta per domande simili, ma non sono sicuro che possa gestire la gestione del rilascio come previsto.

    
posta schlamar 20.03.2012 - 15:01
fonte

2 risposte

1

Ho usato CCNet per fare questo genere di cose, con una configurazione innescata da un commit che esegue alcuni lavori (i test sono abbastanza facili da aggiungere a questo). Funziona bene con mercurial; che è quello che uso nei miei script. Ottiene l'ultima versione dal repository, lo crea, quindi distribuisce i file utilizzando WebDeploy. Ho usato RoboCopy per questo in passato.

Vedi questo post per la sceneggiatura completa: link

    
risposta data 24.03.2012 - 00:38
fonte
0

In un precedente lavoro, avevamo un server "centrale" bloccato (lo so, il server centrale per un RCS distribuito sembra divertente) che non consentiva l'accesso diretto tranne che per gli amministratori. Gli utenti potevano solo clonare / tirare da esso. Gli amministratori hanno fatto la spinta. Non sono sicuro che siano stati utilizzati gli hook, ma abbiamo inviato e-mail automatizzate e ottenuto le autorizzazioni utilizzando gli strumenti hgadmin.

Se lo installi, puoi installare i tuoi ganci su quella macchina (vedi collegamento ) per eseguire le azioni di cui si sta parlando: accettare i push che superano i test, eseguire uno script di build e copiarli se tutto procede secondo i piani (vedere l'hook di changegroup).

Oppure potresti installare del software di integrazione continua sul tuo server, ma finirai per pagarlo. Stiamo per iniziare a utilizzare Bamboo di Jira (vedi link - hanno una prova gratuita), ma io al momento non posso parlare per nessuno.

    
risposta data 23.03.2012 - 23:38
fonte

Leggi altre domande sui tag