Sto pianificando un progetto composto dalle seguenti parti:
- API REST in Lumen
- Client Web in Laravel
- Sito web del prodotto in Jekyll
Questi prodotti separati saranno in esecuzione sullo stesso server.
Mi piacerebbe avere un ambiente di sviluppo che simuli l'ambiente di produzione il più vicino possibile, ecco perché vado con Vagrant in combinazione con un singolo playbook di Ansible che disposizioni entrambi gli ambienti .
Qual è il modo migliore per organizzare un tale progetto? Devo tenere tutto in un repository, o devo dividere le parti in più repository?
E riguardo l'ambiente di sviluppo e gli script di provisioning? Dovrei metterli in un repository separato? Come faccio a fare riferimento alle parti separate del progetto nell'ambiente di sviluppo?
Mi piacerebbe essere in grado di clonare un singolo repository e creare un ambiente di sviluppo con il minor lavoro possibile.
Qualche raccomandazione?
Modifica : la mia domanda differisce da questa domanda perché sono particolarmente alle prese con le cose relativo agli ambienti di produzione e sviluppo.