Geschrieben von Karsten Sitterberg
am 8. April 2020
Im vorhergehenden Artikel wurde der Einsatz von GitHub Actions beschrieben, um eine Angular Anwendungen auf GitHub zu testen und zu bauen.
Das Thema Deployment wurde dabei aufgrund der Vielzahl an Varianten nicht weiter behandelt.
In diesem Beitrag wird nun erklärt, wie die ebenfalls von GitHub bereitgestellte Plattform zum Hosting von statischen Seiten, GitHub Pages, genutzt werden kann, um darauf eine Angular Anwendung bereitzustellen.
Der große Vorteil von clientseitigen Frameworks kommt dabei voll zur Geltung:
Es wird lediglich ein simpler Webserver benötigt, der die HTML, JavaScript und CSS Dateien ausliefert.
Serverseitige Logik wird für das Angular Frontend an sich nicht benötigt.
Geschrieben von Karsten Sitterberg
am 31. März 2020
GitHub Actions ermöglichen es, Reaktionen auszulösen, wenn in einem GitHub Repository Ereignisse eintreten.
Damit lässt sich beispielsweise Generierung von Dokumentation, oder Build und Test von Programmcode umsetzen, ohne einen zusätzlichen CI-Server zu benötigen.
Anders als viele andere CI Lösungen, wie beispielsweise GitLab-CI, setzt GitHub Actions dabei auf vordefinierte Umgebungen und nicht auf Container.
Allerdings lassen sich neben den in den Umgebungen vorhandenen Standardwerkzeugen auch zusätzliche Actions hinzunehmen.
Bei Actions handelt es sich um wiederverwendbare Code-Bausteine.
Außer von GitHub oder dem eigenen Repository können Actions auch auf einem Marketplace von Drittanbietern, z.B. als Docker-Image, bereitgestellt werden.
Als Umgebungen stehen bei GitHub derzeit Linux, Windows und MacOS zur Verfügung.
Das Ergebnis von GitHub Actions können dann Aktionen unter Verwendung der GitHub API sein.
Außerdem können auch Docker-Images erstellt und anschließend in eine Registry gepushed werden.
Wie GitHub Actions genutzt werden können, um eine Angular-Anwendung zu testen und zu bauen, stellen wir in diesem Beitrag vor.
Geschrieben von Thomas Kruse
am 15. August 2019
Nun wollen wir einen Schritt weiter gehen und das erstellte Projekt über die GitLab-Pipeline zu App Store Connect hochladen, um damit die Basis für Continuous Delivery zu legen.
Geschrieben von Thomas Kruse
am 1. August 2019
Für manche Testszenarien muss auch ein Dateidownload mit getestet werden, z.B. um die resultierende Datei auf Korrektheit zu prüfen.
Für Ende-zu-Ende Tests gibt es diverse Werkzeuge, eins davon ist das von Google entwickelte Puppeteer.
Mit Puppeteer lässt sich aktuell der Chrome Browser fernsteuern, eine Erweiterung auf Mozilla Firefox ist ebenfalls in Arbeit.
In diesem Beitrag wird gezeigt, wie mit Docker und Puppeteer ein entsprechendes Testszenario umgesetzt werden kann.
Geschrieben von Thomas Kruse
am 26. Juli 2019
Im letzten Artikel haben wir ein macOS-Environment für NativeScript provisioniert.
Nun wollen wir dieses System nutzen und als Runner in Gitlab registrieren, um dort eine CI-Pipeline für ein NativeScript-Projekt zu erstellen.
Geschrieben von Thomas Kruse
am 26. Januar 2019
In diesem Kubernetes Beitrag geht es darum, eine CI Pipeline auf Kubernetes Infrastruktur aufzusetzen.
Wie bereits in den vorherigen Kubernetes Beiträgen soll auch hier ein Augenmerk auf dem Support der ARM Plattform gelegt werden.
Leider trotz der zunehmenden Verbreitung von ARM im Serverumfeld noch immer nicht selbstverständlich, dass Multi-Arch Images bereitgestellt werden.
Geschrieben von Karsten Sitterberg
am 10. August 2018
Um Anwendungen erfolgreich bauen zu können, ist - je nach Anwendung - ein hoher Aufwand in die Einrichtung der Umgebung zu investieren.
Beispielsweise für ein Android-Projekt muss Java installiert sein, es werden die Android-Tools mit dem Android-SDK benötigt und der Build muss passend konfiguriert werden.
Dieses Setup wird aber nicht nur auf den Entwickler-Rechnern benötigt, auch die Countinuous-Integration-Umgebung des Buildservers muss entsprechende Werkzeuge bereitstellen.
Um Reproduzierbarkeit zu gewährleisten, sollte sichergestellt sein, dass in allen diesen Umgebungen die gleichen Versionen der Tools genutzt werden.
In diesem Artikel werden wir uns damit beschäftigen, wie auf einfachem Wege eine zur Entwicklung von Android-Projekten geeignete Umgebung mit Hilfe von Docker erstellt werden kann.
Am Beispiel von Gitlab-CI wird der Einsatz des entsprechenden Docker-Containers in einer CI-Umgebung gezeigt.