Amazon Web Services für Entwickler, Teil 3 Arbeiten mit AWS CodeCommit
AWS CodeStar beinhaltet mit CodeCommit ein Modul zur Quellcode-Kontrolle, das man auch als eigenständigen Service direkt aufrufen und unabhängig nutzen kann. Dies umfasst auch das Einbinden eigener Git-Repositories.
Anbieter zum Thema

AWS CodeCommit ist ein vollständig verwalteter Service zur Quellcode-Kontrolle, mit dessen Hilfe Unternehmen sichere und hoch skalierbare private Git-Repositories auf AWS hosten können. Wie bereits im letzten Teil der Serie erörtert, kann AWS CodeStar alternativ aber auch auf GitHub gehostete Repos via AWS verwalten.
AWS CodeCommit hingegen erlaubt es dagegen jedem Unternehmen, sein eigenes Quellcode-Verwaltungssystem auf AWS zu betreiben. Dabei muss sich das Unternehmen keinerlei Gedanken um die dazu notwendige Skalierung der Infrastruktur machen.
CodeCommit ermöglicht es, alle mit Entwicklungsprojekten in Zusammenhang stehenden Daten vom Quellcode bis hin zu Binärdateien sicher zu speichern. Wie bereits gezeigt ist der Cloud Service nahtlos mit Git integriert, lässt sich also einfach über existierende Git-Tools steuern.
Vorteile von AWS CodeCommit
Allgemein bietet AWS CodeCommit selbst eine Reihe interessanter Möglichkeiten. Der vollständig von Amazon Web Services verwaltete und gehostete Dienst verspricht hohe Serviceverfügbarkeit und Stabilität. Teams erhalten eine sichere Möglichkeit, gemeinsam an Code zu arbeiten, denn CodeCommit-Repositories sind sowohl im Ruhezustand als auch bei der Übertragung verschlüsselt.
Mit Blick auf die Kollaboration ist auch für eine lückenlose Kommunikation gesorgt: Auf der Basis von Pull-Anfragen können Nutzer gegenseitig ihre Code-Änderungen überprüfen und kommentieren, bevor diese in Branches übernommen werden. Ferner benachrichtigt der Dienst die Benutzer automatisch über Pull-Anfragen und Kommentare.
AWS CodeCommit-Repositories sind zudem skalierbar und lassen sich an die eigenen Entwicklungsanforderungen anpassen. Der Service arbeitet problemlos auch mit Repositories, die eine große Anzahl an Dateien oder Branches mit großen Dateien und umfangreichen Revisionsverläufen enthalten. AWS CodeCommit macht keine Einschränkung hinsichtlich der Größe der Repositories oder der Dateitypen, die gespeichert werden können, und integriert sich nahtlos mit andere AWS-Services oder Diensten von Drittanbietern
Einer der wichtigsten Vorteile von AWS CodeCommit ist aber, dass sich die Repositories immer so nahe wie möglich an den übrigen Produktionsressourcen in der AWS-Cloud befinden. Dies kann die Entwicklungsprozesse im Unternehmen extrem beschleunigen. Zudem ist AWS CodeCommit wie gesehen auch in IAM integriert und lässt sich nicht nur mit anderen AWS-Services sondern parallel mit anderen Repositories verwenden. Nutzer können problemlos Dateien aus anderen Git-basierten Repositories migrieren. AWS CodeCommit unterstützt gleichermaßen klassische Git-Befehle wie auch eigene AWS-CLI-Befehle- und -APIs.
Die Arbeitsweise von AWS CodeCommit
Wer sich bereits mit Git-basierten Repositories auskennt, wird sich in AWS CodeCommit schnell zurechtfinden. Das Tool bietet eine Konsole, die dem Benutzer das einfache Erstellen neuer Repositories oder das Anzeigen bestehender Repositories und Branches erlaubt. Hat man bereits ein AWS CodeStar-Projekt angelegt und mit einem CodeCommit Repositiory verbunden, kann man im AWS CodeStar-Dashboard einfach auf das Modul „Code“ klicken. So landet man direkt im zugehörigen CodeStar-Projekt, wie die vorangestellte Abbildung zeigt.
Der Dienst ist aber auch über die AWS Management Console unter „Services / Developer Tools / CodeCommit“ aufrufbar. Ruft der Nutzer den Dienst direkt auf, landet er im CodeCommit-Dashboard und kann von hier aus bei Bedarf auch (ohne AWS CodeStar) mit einem Klick auf „Create repository“ jederzeit neue ein neues Repository anlegen.
Beim Erstellen eines neuen Repositorys lässt sich direkt eine E-Mail-Notification für eine der drei angebotenen Event-Typen „Pull request update events“, „Pull request comment events“ oder „Commit comment events“ und dazu ein neues SNS-Topic (Simple Notification Services) einrichten. Anschließend zeigt AWS CodeCommit einen Hinweis, wie man das neue Repository mit dem Kommando „git clone“ via HTTPS oder SSH auf seinen lokalen Entwicklungsrechner klont.
In der vierten Abbildung verwenden wir den Git-Bash-Client für Windows, um das neue Repository auf den Entwicklungsrechner zu übertragen.
Anschließend taucht auch das neue Repository im CodeCommit Dashboard auf, wie im fünften Bild zu sehen. Das weiter unten eingehängte Workflow-Diagramm von Amazon Web Services soll verdeutlichen, wie Nutzer mit ihrem lokalen Entwicklungs-Rechner, der AWS CLI und/oder per CodeCommit-Konsole Repositories erstellen und verwalten.
Fehlt zur Vervollständigung des Beispiels nur noch, dass der lokale AWS CodeCommit-Nutzer das oben angelegte AWS-SNS-Topic abonniert. Hierzu wechselt er in das SNS-Dashboard (unter „Services / Application intergration / Simple Notification Service“), navigiert dann ins Menü „Topics", markiert das oben angelegte Topic und klickt im Menü Actions auf „Subscribe to a topic“.
Als Protocol wählt er dann wie im letzten Screenshot zu sehen „Email“ aus und gibt als Endpoint eine passende E-Mail-Adresse an. Fortan wird er über Änderungen im Repository benachrichtigt.
Nachdem wir gesehen haben, wie man in AWS CodeCommit neue Repositories anlegt und verwaltet oder vorhandene Repos importiert, schauen wir uns im nächsten Teil an, wie das Arbeiten mit Pull-Anforderungen, Commits und Branches funktioniert.
(ID:45247610)