Schlagwort-Archive: vagrant

Testserver einrichten mit Vagrant – Provisioning

Testserver einrichten mit Vagrant – Provisioning

Im letzten Beitrag zum Einrichten eines lokalen Testservers war ich am Ende so weit, dass die nur mit Ubuntu als Betriebssystem ausgestattete, virtuelle Maschine erfolgreich gestartet werden konnte.

In diesem Beitrag dreht sich nun alles um die Konfiguration und das einrichten der virtuellen Maschine, dem sogenannten Provisioning.

Testserver einrichten mit Vagrant – Provisioning weiterlesen

Dev-Blog Donnerstag 17/16

Dev-Blog Donnerstag 17/16

Von Entwicklern für Entwickler

[Horst (Slayer)]

Vagrant läuft nun auf dem neuen PC. Das Provisioning (Konfiguration, Installation von Programmen auf der virtuellen Maschine) hat mich doch etwas beschäftigt. Es gibt einige Dinge, die man sich erst anlernen muss und so manchen Fallstrick, über den man beim Aufsetzen stolpern kann. Ein ausführlicher Blog-Beitrag mit einigen Tipps dazu kommt diesen Samstag.

Einen ersten Teil zum Aufsetzen eines Testservers auf Basis von Vagrant hat es ja schon die Woche zuvor gegeben.

[Iwan (shlainn)]

Iwan ist krank. Irgendwas ja immer 😉

Testserver einrichten mit Vagrant

Testserver einrichten mit Vagrant

Um ein Webprojekt sinnvoll entwickeln und testen zu können, muss man einen lokalen Testserver einrichten. Idealerweise bildet man dabei die Konfiguration der Live-Umgebung (Webserver, auf dem man seine Seiten veröffentlicht) möglichst 1:1 ab.

Welche Möglichkeiten man dabei hat, zeigt dieser Artikel.

Testserver einrichten mit Vagrant weiterlesen

Dev-Blog Donnerstag 16/16

Dev-Blog Donnerstag 16/16

Von Entwicklern für Entwickler

[Horst (Slayer)]

Der neue PC hat mich auch letzte Woche viele Stunden beschäftigt. Neben der Installation weiterer Programme habe ich nach und nach alle Daten auf den neuen PC geschoben. Das hat neben dem Ausmisten von alten Dokumenten auch eine Re-Organisation meiner Verzeichnisstruktur für Projekte beinhaltet.

Und da ich, wie angekündigt, ab sofort Vagrant einsetze, um meine Entwicklungsumgebung aufzusetzen, habe ich mich mit Vagrant und Provisioning näher auseinandergesetzt. Einiges an Zeit hat mich dabei das parallele Schreiben zweier Blog-Artikel (folgen demnächst) gekostet, die das Aufsetzen einer virtuellen Maschine anhand von Vagrant detailliert dokumentieren. Etwas einfach nur für sich aufzusetzen, geht relativ schnell. Alle Fallstricke für die „Nachwelt“ (und sich selbst für später) möglichst verständlich zu beschreiben, dauert einfach.

Und dann saugen mir seit einiger Zeit mehrere Dinge im rL nahezu die gesamte Energie ab. Was darin resultiert, dass eXperinox im Moment eher etwas zu kurz kommt. Aber wie heißt es so schön? „Alles wird gut!“

[Iwan (shlainn)]

In einer nahezu historischen Aktion haben wir mit Horst diese Woche ein uraltes Stück Code entrümpelt, das seit ewigen Zeiten an zentraler Stelle in experinox saß, aber schon lange nicht mehr verwendet wurde. Langjährige Spieler erinnern sich vielleicht noch daran, dass man früher explizit umschalten musste um Gebäude und Raumschiffe im Orbit zu bauen, anstatt wie jetzt im Baubildschirm einfach in den Orbit zu klicken. Das führte zu Verwirrung und einigen interessanten Bugs und wurde schließlich dank des Umbaus des Baubildschirms fast komplett obsolet. Und jetzt ist es an einer weiteren Stelle beseitigt. Yay 🙂

Die zweite Baustelle war diese Woche der Chat. Als ich damals die erste Version unseres beliebten Chats geschrieben habe, war das Ziel möglichst schnell einen funktionierenden Prototyp zu bekommen den man dann auf die User loslassen konnte. Und in diesem glorreichen Zustand war der Code bis gestern auch noch. Jetzt, ein dreiviertel Jahr später war es höchste Zeit, den Code aufzuräumen und umzustrukturieren. Wenn ich alles richtig gemacht habe, sollte sich für die User nichts ändern. Dafür sollte die neue Version sehr viel einfacher zu warten und zu erweitern sein.

Dev-Blog Donnerstag 26/15

Dev-Blog Donnerstag 26/15

Von Entwicklern für Entwickler

[Horst (Slayer)]
Diese Woche hat uns Vagrant wieder etwas beschäftigt. Ziel war, eine Multi-Machine Konfiguration sowohl unter Windows (meine Umgebung) als auch unter Linux (Iwans Umgebung) so zum Laufen zu bringen, dass ein simples „vagrant up“ für jeden von uns reicht, um eine komplett aufgesetzte Umgebung für das Testprojekt zu haben.

Das Testprojekt besteht aus einem Test-Client und einem Identity-Provider, wie im Blog Post Dev-Blog Donnerstag 25/15 beschrieben.

Eine Herausforderung, nein eine wahre Odyssee,  war dabei das Setzen der symbolischen Links innerhalb der virtuellen Maschine, denn nur so können Iwan und ich auf der lokalen Maschine in unterschiedlichen Verzeichnissen arbeiten, ohne am Setup von Vagrant etwas ändern zu müssen. Das hier alles anzuführen, würde dieses Blog klar sprengen. Am Ende ging das Ganze bis zum BIOS-Update (!!) auf meinem PC, weil das BIOS einen Bug in der Virtualisierung hatte.

Daneben habe ich Kleinigkeiten in eXperinox umgesetzt.

[Iwan (shlainn)]
Meine Quest nach neuen Techniken und Technologien führte mich dieses mal in das Land von CSS – Cascading Style Sheets. In CSS, für alle die sich nicht mit Webdesign beschäftigen, wird beschrieben wie die Elemente einer Webseite aussehen sollen. In seinen Anfängen war CSS noch recht simpel (Farben, Schriftgrößen, Abstände), doch inzwischen ist es zu einer riesigen Ansammlung von Aussehens- und Verhaltensdefinitionen angewachsen, mit der man prozedurale HintergrundtexturenMinispiele und vieles mehr bauen kann. Aber wie das immer so ist, werden nicht alle Features von allen Browsern unterstützt, oder sehen unterschiedlich aus, oder brauchen ein Browser-Präfix um korrekt zu funktionieren… Und so schaue ich mir alle Jahre wieder einmal an, was inzwischen funktioniert, und was davon für unsere Projekte von Nutzen sein kann.

Für die kommende Woche werde ich mich wieder etwas intensiver mit eXperinox beschäftigen. Für die aktuelle Entwicklungsperiode stehen noch 16 Einträge in unserem Bugtracker – es ist Zeit für einen BUG BASH!!!

Dev-Blog Donnerstag 25/15

Dev-Blog Donnerstag 25/15

Von Entwicklern für Entwickler

[Horst (Slayer)]
Iwan hat sich schon letzte Woche etwas intensiver mit für uns neuen Technologien beschäftigt und auch eine Beispielapplikation dazu erstellt. Nun galt es, diese auch bei mir lokal zum Laufen zu bringen. Gar nicht so einfach, wie man meinen könnte, weil bei SimpleSAML und Altorouter einiges zu konfigurieren ist.

So habe ich mich wieder näher mit SimpleSAML beschäftigt, einem Framework zur Authentifizierung. SimpleSAML kann sowohl als Service Provider als auch als Identity Provider verwendet werden.

Über den Service Provider kann eine PHP Applikation die Authentifizierung an einen Identity Provider delegieren. Der Identity Provider ist jener Teil des Service, der die Authentifizierungsdaten zur Verfügung stellt.

Anders formuliert: wenn man mehrere Anwendungen hat, auf die man über eine zentrale Authentifizierung zugreifen will, dann ist SimpleSAML ein Service, der genau das auf einfache und flexible Art und Weise ermöglicht.

Zu konfigurieren war hier neben einigen Pfaden auf meinem PC auch noch ein entsprechender Alias für Apache, damit der ServiceProvider den IdentityProvider auch erreichen kann und umgekehrt der IdentityProvider den anfragenden ServiceProvider auch akzeptiert.

Das Prinzip von Altorouter: alle Anfragen vom Client an den Server werden auf ein einziges File umgeleitet (via .htaccess RewriteEngine einzustellen), welches den Router instanziiert. Über eine Map-Methode werden dann zentral die entsprechenden Routen festgelegt – also welche Url am Ende zu welchem Ziel führen soll. Wie hilfreich das sein kann, kann man wohl erst nach einer Weile des praktischen Einsatzes sagen. Aber auf den ersten Blick wirkt das alles doch sehr flexibel und praktisch.

Und dann hat zum ersten Mal ein Let’s Player unser Game ANGEZOCKT!

Wie es ihm gefallen hat, könnt ihr im Video erfahren. 🙂 .

[Iwan (shlainn)]
Nachdem ich letzte Woche im real-life unterwegs war und dann das Wochenende brauchte um mich davon zu erholen, ging es diese Woche nur langsam los :-(.

Wie wir in den letzten Dev-Blogs schon angedeutet haben, arbeiten wir daran ein wenig zu wachsen. Das beinhaltet neue Technologien, aber auch neue Herausforderungen für unser Entwicklungs-Setup. Ich nutze Linux fürs Entwickeln, Horst bevorzugt Windows, und so haben wir gelegentlich, wie Horst oben beschreibt, einige Schwierigkeiten zu bewältigen wenn es darum geht Dinge die bei mir laufen auch bei ihm zum laufen zu bringen. Das nervt.

Aber wir leben im Jahre 2015, und irgendjemand im Internet hat dieses Problem auch schon einmal gehabt. Und so gibt es Vagrant, Docker & Co um solche Schwierigkeiten in gemischten Teams zu vermeiden. Ob das für uns eine mögliche Lösung ist, wird man sehen müssen.