Hi,
Ik heb de afgelopen week een Ubuntu (14.04) VPS geconfigureerd voor mijn werk. We willen hierop de dev omgeving van projecten die nog in ontwikkeling zijn stallen om te testen en dergelijke. Om zoveel mogelijk processen te kunnen gaan automatiseren leek het mij handig om Jenkins te installeren.Op die manier kunnen we steeds meer processen en testen gaan automatiseren. Dan hebben wij weer meer tijd om in het ontwikkelen te steken
Hierbij liep ik afgelopen week echter tegen een kleine issue aan, namelijk hoe ik de rechten op de server het best in kan stellen. Ik heb namelijk de users/groepen git, jenkins en www-data die elk hun rol vervullen maar elkaar soms ook in de weg zitten.
Hoe het nu loopt:
Niet ideaal allemaal en ik heb het idee dit gemakkelijk moet kunnen. Ik vroeg me af hoe anderen hier dit hebben gedaan en of mensen tips hebben hoe dit netjes (en veilig) in te richten.
Ik heb de afgelopen week een Ubuntu (14.04) VPS geconfigureerd voor mijn werk. We willen hierop de dev omgeving van projecten die nog in ontwikkeling zijn stallen om te testen en dergelijke. Om zoveel mogelijk processen te kunnen gaan automatiseren leek het mij handig om Jenkins te installeren.Op die manier kunnen we steeds meer processen en testen gaan automatiseren. Dan hebben wij weer meer tijd om in het ontwikkelen te steken
Hierbij liep ik afgelopen week echter tegen een kleine issue aan, namelijk hoe ik de rechten op de server het best in kan stellen. Ik heb namelijk de users/groepen git, jenkins en www-data die elk hun rol vervullen maar elkaar soms ook in de weg zitten.
Hoe het nu loopt:
- Ik clone in eerste instantie de repository van BitBucket naar /var/www/html/<repo>. Dit doe ik vooralsnog met de hand en gebruik hiervoor de user git.
- Ik maak een nieuw dev deploy project aan in jenkins. Zodra die van BitBucket een signaal krijgt dat iemand een nieuwe commit heeft gedaan in de repo. Jenkins runt dan een shell script dat een pull doet in /var/www/html/<repo>. Dit gebeurt met de user jenkins
- Configuratie e.d. van het CMS dat we deployen doe ik 'gewoon' via de webinterface. Hierbij moeten echter een aantal files (over)schrijfbaar zijn voor de user www-data
Niet ideaal allemaal en ik heb het idee dit gemakkelijk moet kunnen. Ik vroeg me af hoe anderen hier dit hebben gedaan en of mensen tips hebben hoe dit netjes (en veilig) in te richten.