Skip to content

Eine Website mit git workflow und CI/CD

Erstellt am12. Mai 2023 at 03:22 PM

Hintergrund

Wir hatten, etwa die letzten 10 Jahre betrachtend, zwei Websites. Beide waren Agentur-Websites, die erste eher seriös, die zweite eher verspielt.

Beide sind im Laufe der Jahre deutlich veraltet, bis auf kleinere Aktionen wie zuletzt die virtuelle Unterstützung der Ukraine und der Frauen im Iran.

Beide basierten auf Wordpress. Es hat sich herausgestellt, dass die Pflege dieser Websites sehr, nunja, herausfordernd war, genauer, kaum geschah. Wordpress als Publishing-Werkzeug und ein Redaktions-Workflow schienen nicht besonders gut zum Workflow unserer Entwickler zu passen. Auch die Masse an nötigen Plugins war eher abschreckend als hilfreich.

Dritter Versuch / die Lösung?

Beim Schreiben von Dokumentation (jaja…) haben wir viel über das Tool https://www.mkdocs.org/ (nicht mit https://www.mkdoc.org/ verwechseln) gelernt. Der Ansatz, Inhalte in git zu verwalten, einfache Formate wie Markdown zu verwenden, und als einzigen Workflow einen Merge Request mit anschliessender CI/CD-Pipeline zu haben, schien auch für unsere Webseite attraktiv.

Der eine oder die andere Entwickler(in) hielt mkdocs dann aber doch für nicht ganz geeignet, der Scope des Tools ist ein anderer, und etwas Bling-Bling und Customization muß ja schon sein.

Nach etwas Recherche und einem kurzen Umweg über https://gohugo.io/ fiel die Wahl dann auf https://astro.build/. Als Basis-Template haben wir https://github.com/satnaing/astro-paper verwendet. Interessanterweise hat die darunterliegende Toolchain bzw. Sprache keine wirkliche Rolle gespielt. python, go, typescript? It’s not stupid if it works. Nur php war irgendwie “raus”.

Offene Punkte / Work in Progress

Die statischen Inhalte sind noch nicht vollständig. Informationen zur unseren Projekten, Referenzen und Partnern sind in Planung.

Ebenso sind technische Features wie ein Darkmode, die englische Version der Seite, eine Suche im Volltext sowie allgemeine Layoutverbesserungen in Arbeit. Auf der anderen Seite müssen noch ein paar Features, die wir schlicht nicht benötigen, entfernt werden.

Aber das erste Ziel ist hoffentlich erreicht: eine einfach (aus Sicht unserer Entwickler und Entwicklerinnen) zu ändernde, einfach zu testende und weitgehend automatisch ausrollbare Website.