Nedra schreef op donderdag 06 februari 2014 @ 14:27:
[...]
Persoonlijk vind ik het fijn niets hoven te starten, zolang de locale server draait (xampp in mijn geval) zijn al m'n dev sites beschikbaar onder hun eigen domeinnamen, met loc. ervoor. Wel realiseer ik me dat het voor minder verrassingen zorgt als je met zoiets als Vagrant de productie server emuleert. Doe je dat dan ook specifiek?
Nee dat is ook eigenlijk niet nodig. Wordpress is geen deftig pakket en draait eigenlijk op alle voorkomende hosting. Ideaal is natuurlijk de laatste stabiele PHP versie, maar dat kun je wat betreft hosting toch vergeten. Meestal is het nog 5.2.x, maar gelukkig zie ik ook al redelijk wat 5.3.x. Helaas ben ik 5.4 of 5.5 nog niet tegengekomen.
Overigens zijn niet alle plugins volledig multisite compatible, dat zou af en toe nog wel eens vervelend kunnen zijn als je alles op basis v nieuwe multi-site installaties doet.
Nog geen problemen mee gehad. Liever laat ik dergelijke plugins sowieso links liggen. Niet dat ik zelf nou zulke geweldige code schrijf, maar wel binnen de Wordpress grenzen. Plugins die gebruik maken van methodes buiten Wordpress (db aanpassen, etc.) die haal ik liever niet in huis.
---
Status update
Misschien herhaal ik wat van de vorige iteratie, maar toch wil ik de huidige stand van zaken nog even delen.
Lokaal ontwikkelen
Netjes in een Wordpress Network, dat scheelt al best veel werk. Het enige wat nog een beetje bewerkelijk is, is de content. Bij de eerste ontwikkelfases maakt dat niet zoveel uit, maar als de websites eenmaal op de preview server staat en de klant met aanpassingen komt, ben je constant je content 2x aan het toevoegen. Niet zozeer pagina's en dergelijke, maar bepaalde velden of toevoegingen.
https://deliciousbrains.com/wp-migrate-db-pro/ biedt daar een oplossing voor. Ik kan dan de content van preview naar lokaal trekken en zo heb je toch up-to-date content. Echter is het wéér een extra element in de toolset en die wil ik zo klein mogelijk houden. Over de toolset later meer trouwens. Daarnaast zijn we met twee mensen en aan 4 actieve projecten heb je net niet genoeg. Dus moet je naar de 200 dollar per jaar, per persoon, beetje prijzig!
Nog een probleem, als mijn collega een aanpassing wil doen aan een project waaraan ik normaal gesproken werk; moet hij de git repo pullen en een Wordpress website aanmaken. Niet echt heel handig... Dat is natuurlijk het nadeel van lokaal ontwikkelen, maar zoiets moet toch makkelijker kunnen?
Deployment
Tot zover gaat dat best wel goed, gewoon met de IDE deployen, geen gezeur. Toch is dat niet helemaal handig, zeker met meerdere mensen niet. Je moet namelijk vaker dan eens de ftp-gegevens invullen. Slechts één persoon kan deployen, of moet toch weer de ftp-gegevens opscharrelen. Niet erg handig!
Toen kwam ik
http://beanstalkapp.com/ tegen. Daar kan ik twee dingen doen; m'n git repo's kwijt en deployment instellen via ftp. Helemaal wat ik nodig heb!
Ondertussen heb ik eens een gratis testaccount aangemaakt. Daar kan ik met één repo eens kijken of het werkt. Dat gaat allemaal makkelijk, echt heel makkelijk. Na het toevoegen van een repo en het pushen van de files, kun je één of meerdere servers toevoegen en daarnaartoe deployen. Gewoon met een klik op een knopje en zelfs vanuit een mobiele app.
Echter kost dat wel wat centjes. 15 dollar, voor 10 repo's met maximaal 5 gebruikers. Dat betekend dat ik per project 1 euro, per maand, spendeer puur voor development. Voor 50 dollar kan ik al 50 projecten kwijt, dus het word met meer wel goedkoper, maar toch.
Nu wil ik graag alle projecten in één workflow houden. Dat is wel zo makkelijk en zal ook tijd besparen uiteindelijk. Alleen is het wel een beetje raar om websites waarvoor we (eenmalig) 400 euro (!) vangen, in een dergelijke tool te hangen. Dat kan eigenlijk niet uit.
Daar moet dus eigenlijk nog wat tussen. Alleen de projecten met een bepaald project, of de afnemers van ons onderhoud-pakket erin zetten. Dat kan, maar het is dan wel jammer dat je voor bepaalde projecten toch nog ouderwets met ftp aan de slag moet en dergelijke.
Git
Beanstalk had wat handige, duidelijke en vooral simpele guides (
http://guides.beanstalkapp.com/). Daarin werd gepraat over verschillende branches. Naast development/staging/production, ook over feature branches. Kortom; ik voeg functionaliteit toe aan een website en maak voor het ontwikkelen ervan, een aparte branch, die ik later merge met development als het in orde is. Toch?
Goed, tijd om daar eens in te duiken dan. Ook hier geld weer, dat het voor sommige projecten echt veel te veel werk is om allerlei branches op te zetten.
Hoe zit het met bovenstaande branches, in combinatie met versienummers? Of zijn dat tags?
Nog veel uit te zoeken dus