/ Software-Entwicklung / Python-Microframework: AWS Chalice erlaubt lokale Tests

Python-Microframework: AWS Chalice erlaubt lokale Tests

Gerfried Steube on November 29, 2016 - 2:35 pm in Software-Entwicklung

Noch vor den großen Ankündigungen, die auf der re:invent zu erwarten sind, hat Amazon sein Python-Microframework um lokale Tests und Projekte mit mehreren Dateien erweitert.

Im Juli hatte Amazon ein Python-Microframework namens Chalice vorgestellt, mit dem Entwickler Anwendungen für AWS Lambda und das Amazon API Gateway erstellen können. Das Programmiermodell orientiert sich am Open-Source-Framework Flask und soll Python-Entwicklern eine einfache Möglichkeit geben, REST-basierte Anwendungen zu erstellen. Mit AWS Lambda lassen sich Funktionen erstellen und hochladen, ohne im Vorfeld passende Ressourcen zu reservieren. Die entsprechende Zuweisung der Ressourcen erfolgt nach Bedarf. Nun hat das Team die Version 0.5 veröffentlicht, das vor allem Bugfixes enthält.

Version 0.4 und 0.5 im Doppelpack

Die beiden größten Neuerungen sind Bestandteil des Anfang November ohne größere Ankündigung erschienenen Chalice 0.4. Entwickler können mit chalice local ihre Anwendungen auf einem lokalen HTTP-Server testen und debuggen, statt jede Änderung auf die AWS-Plattform hochzuladen, um API-Änderungen zu überprüfen. Neu in Version 0.5 ist, dass die DELETE- und PATCH-Methoden auch lokal und nicht nur auf dem API Gateway funktionieren.

Außerdem ermöglicht das Microframework seit Version 0.4 die Verwendung mehrerer Dateien und ermöglicht so eine saubere Codetrennung. Zuvor musste das gesamte Deployment-Paket in einer app.py-Datei enthalten sein. Eine nützliche Hilfsfunktion ist chalice url, die erwartungsgemäß die URL der API ausgibt, was zuvor nicht über Code, sondern nur über manuellen Zugriff möglich war. Außerdem können Entwickler die ausgegebenen Logs besser konfigurieren.

Chalice, Flask und Lambda

Chalice hat das Microframework Flask als Vorbild, das der Österreicher Armin Ronacher 2010 ursprünglich als Aprlischerz ins Leben gerufen hatte. Der Name “Chalice” lässt sich mit Kelch übersetzen und dürfte eine Anspielung auf das Trinkhorn im Logo (und dem Namen) von Flask sein. Mit AWS Lambda startete Amazon vor zwei Jahren einen seinerzeit einzigartigen Cloud-Dienst, der das Veröffentlichen von Programmierlogik ermöglicht, ohne zuvor eine passende Infrastruktur zu reservieren. Inzwischen haben IBM mit Bluemix, Google mit Cloud Functions und Microsoft mit Azure Functions ähnliche Angebote auf Lager.

Weitere Details stehen im Blogbeitrag sowie im Changelog auf GitHub. Die Projektseite zu Chalice weist darauf hin, dass es bis zum 1.0-Release durchaus noch Änderungen geben kann, die nicht rückwärtskompatibel sind. (rme)

Read more on: Source

Comments are disabled