2009-05-25 19 views
5

Stiamo testando le acque con SVN, con Beanstalk come host. La nostra messa a punto simile a questa:Come distribuire Subversion esterni?

  • Repository: Moduli

    • Modulo 1
    • Modulo 2
    • Modulo 3
  • Repository: Sito web 1

    • codice del sito web personalizzato
    • svn: riferimento esterno al modulo 1
    • svn: Il riferimento esterno al Modulo 2
  • Repository: Sito web 2

    • personalizzato codice
    • svn: riferimento esterno al modulo 2
    • svn: riferimento esterno al Modulo 3

Beanstalk è dotato di strumenti di distribuzione FTP. Nel mio mondo ideale, Beanstalk vedrebbe solo i riferimenti esterni e distribuirà le modifiche ai moduli insieme alle modifiche del sito Web, ma questo non è supportato e won't be anytime soon.

che cosa è una buona pratica per la distribuzione automaticamente i siti web 1 e 2 in un modo che cambia per i moduli esterni sono inclusi?

Gli altri host SVN hanno un supporto migliore per la distribuzione di servizi esterni?

Se possibile, vorrei evitare di aggiungere la nostra build/Deploy Server.

risposta

1

Se la distribuzione utilizza l'esportazione, ciò potrebbe avere senso; Sono abbastanza sicuro che l'ultima versione di SVN esporti anche gli esterni, ma le versioni precedenti no. Forse la soluzione migliore sarebbe quella di eseguire un checkout del repository in questione sul server di distribuzione e aggiornare da lì? Se si utilizza rami e tagging, si potrebbe anche creare link simbolici per il tuo webroot che puntano a diverse emissioni nella cassa.

+0

Abbiamo finito per fare qualcosa di simile, usando CruiseControl.net. –

1

Perché non eseguire il check-in svn sul computer locale e fare un aggiornamento e commit svn che aggiornerà il beanstalk. Quindi eseguire una distribuzione tramite beanstalk. Potresti programmare uno script per svn udpare ogni giorno.