2012-03-08 2 views
18

Stiamo lavorando alla ricetta di chef che costruisce PHP dal sorgente. Tuttavia, ogni volta che apportiamo una modifica alla nostra ricetta e vogliamo eseguirla di nuovo, ci vuole molto tempo (circa 20 minuti).Debugging di ricette per chef senza distruggere vagabondi e ri-provision

Quello che abbiamo fatto è fare i nostri cambiamenti quindi utilizzando:

vagrant destroy 

seguito da:

vagrant up 

Sarebbe bello se in qualche modo potremmo semplicemente ri-eseguire il nostro singola ricetta siamo cercando di aggiornare.

Qualcuno sa come possiamo fare questo? O quanto è vagamente determinante la nostra ricetta php già installata/eseguita?

+0

Ci dispiace, ma questo non ha senso per me di sorta. – GordonM

+3

@GordonM si prega di indicare come posso chiarire. –

risposta

20

vagrant provision dovrebbe farlo per voi. Lo chef dovrebbe prendersi cura di eseguire solo le cose che devono essere eseguite ... come una ricetta modificata.

+0

'provisioning vagabondo' non sembra raccogliere le modifiche in una ricetta. Qualche idea sul perché sarebbe il benvenuto. –

+0

Dovevo solo trovare la sezione in ogni ricetta in cui si stava verificando per determinare se la ricetta dovesse essere installata o meno. In questo caso era un semplice 'quale php' –

5

È possibile utilizzare:

vagrant provision 

Ciò eseguire nuovamente il passo di provisioning, che fa vagrant ssh e prende il via Chef.

Se si utilizza uno Chef Server con chef-cliente, è necessario caricare il libro di cucina sul server con un coltello dopo aver apportato le modifiche locali. Quindi lo chef-cliente sulla macchina vagabonda scaricherà i file modificati.

Se si sta utilizzando Chef Solo, è possibile condividere cartelle con la VM, quindi le modifiche apportate verranno raccolte immediatamente, piuttosto che doverle copiare sulla VM.

+0

Ma questo non riporta il vm al suo stato originale, vero? – kristianp