ASP.NET-Apps auf AWS Elastic Beanstalk migrieren, Teil 2 AWS Toolkit für Visual Studio einrichten

Autor / Redakteur: Dipl. -Ing. Thomas Drilling / Stephan Augsten |

Elastic Beanstalk bietet eine komplett von AWS verwaltete .NET-Plattform für das Deployment sowie die Skalierung und Aktualisierung von Anwendungen. Wie man das AWS Toolkit für Visual Studio einrichtet, zeigen wir im zweiten Teil dieser Serie.

Anbieter zum Thema

Um ein AWS-Projekt direkt über Visual Studio anlegen zu können, muss man das entsprechende Toolkit erst einmal installieren und mit den passenden Zugangsdaten konfigurieren.
Um ein AWS-Projekt direkt über Visual Studio anlegen zu können, muss man das entsprechende Toolkit erst einmal installieren und mit den passenden Zugangsdaten konfigurieren.
(Bild: Drilling / Microsoft)

Der VSIX-Installer installiert das integrierte AWS Toolkit nach Beenden von Visual Studio.
Der VSIX-Installer installiert das integrierte AWS Toolkit nach Beenden von Visual Studio.
(Bild: Drilling / Microsoft)

Das AWS Toolkit für Visual Studio lässt sich entweder als VSIX-Paket von AWS oder auch direkt aus dem Visual Studio Marketplace herunterladen. Die Installation wird dann eingeplant und nach Beenden von Visual Studio vom VSIX-Installer durchgeführt

Nach der Installation des Toolkits lassen sich AWS-Projekte direkt über Visual Studio anlegen.
Nach der Installation des Toolkits lassen sich AWS-Projekte direkt über Visual Studio anlegen.
(Bild: Drilling / Microsoft)

Anschließend kann man in Visual Studio direkt AWS-Projekte anlegen. Das soll aber für heute nicht unser Thema sein. In jeden Fall muss man das AWS-Toolkit mit den passenden (vorhandenen) AWS-Credentials konfigurieren.

Das AWS-Toolkit muss mit den passenden Zugangsdaten gefüttert werden.
Das AWS-Toolkit muss mit den passenden Zugangsdaten gefüttert werden.
(Bild: Drilling / Microsoft)

Klickt man im Menü „Ansicht“ auf „AWS-Explorer“, kann man dazu das Profile „default“ mit „Edit“ bearbeiten. Wahlweise ist es auch möglich, ein neues Profil anzulegen und dabei die Account-Credentials („Access Key ID“ und „Secret Access Key“) für den gewünschten IAM-User zu hinterlegen.

Wir bleiben aber wie erwähnt bei einem ASP.NET-Webanwendungsprojekt und nutzen die Toolkit-Integration nur, um eine Verbindung zu AWS Code Commit herzustellen. Hier zu verwendet man das Toolfenster „Team Explorer“.

Team Explorer

Über den Team Explorer wird Visual Studio mit dem Code-Repository verbunden.
Über den Team Explorer wird Visual Studio mit dem Code-Repository verbunden.
(Bild: Drilling / Microsoft)

Der Team Explorer dient dazu, den Aufwand für die Entwicklung eines Projekts mit anderen Teammitgliedern zu koordinieren. Team Explorer verbindet Visual Studio mit Git- und GitHub-Repositorys, Repositorys der Team Foundation-Versionskontrolle (TFVC) und Projekten, die auf Azure DevOps Services oder einer lokalen Azure DevOps Server-Instanz (früher „TFS“ genannt) gehostet werden, bzw. in unserem Fall und bei installiertem AWS Toolkit mit AWS Code Commit.

Erfolgreiche Verbindung zwischen dem Team Explorer und AWS CodeCommit.
Erfolgreiche Verbindung zwischen dem Team Explorer und AWS CodeCommit.
(Bild: Drilling / Microsoft)

Sofern man vorher ein entsprechendes Projekt in AWS Code Commit angelegt und die AWS Credentials im Toolkit konfiguriert hat, sollte die Verbindung jetzt problemlos zustande kommen.

Achtung: Da der git-Client im Hintergrund „git clone“ via HTTPS ausführt muss man unter Windows unter Umständen seine git-Credentials vorher passend konfigurieren. Stellt man die Verbindung nämlich zum ersten Mal her, fordert der installierte git-Client dazu auf, den Benutzernamen und das Passwort für das Repository einzugeben.

Je nach Konfiguration auf dem lokalen Computer stammt diese Aufforderung entweder von einem Verwaltungssystem für Anmeldeinformationen für das Betriebssystem (z. B. der Schlüsselbundverwaltung für MacOS), einem Verwaltungsdienstprogramm für Anmeldeinformationen für die installierte Version von Git (etwa dem in Git für Windows enthaltenen Git Credential Manager), der eigenen IDE oder von Git selbst. Dies ist im AWS CodeCommit-Handbuch ausführlich beschrieben.

Konkret enthält die AWS CLI ein Git-Hilfsprogramm für Anmeldeinformationen, das mit CodeCommit verwendet werden kann. Dieses erfordert ein AWS-Anmeldeinformationsprofil, in dem eine Kopie der AWS-Zugriffsschlüssel-ID und des geheimen AWS-Zugriffsschlüssels (zusammen mit dem Namen der AWS-Standardregion und dem Standardausgabeformat) des IAM-Benutzers gespeichert wird.

Mit dem Git-Hilfsprogramm für Anmeldeinformationen lassen sich die git Credentials über die Kommandozeile anpassen.
Mit dem Git-Hilfsprogramm für Anmeldeinformationen lassen sich die git Credentials über die Kommandozeile anpassen.
(Bild: Drilling / Microsoft)

Dazu öffnet man eine Kommandozeile (z. B. „git bash“ unter Windows) und führt den Git-Befehl „git config“ aus. Dabei gibt man als Parameter an, dass das Git-Hilfsprogramm für Anmeldeinformationen mit dem AWS-Anmeldeinformationsprofil verwendet werden soll, damit es für Anmeldeinformationen den Pfad an die Repositorys senden kann.

Dank des Git-Hilfsprogramm für Anmeldeinformationen konnten wir das CodeCommit-Repository unter Visual Studio verbinden.
Dank des Git-Hilfsprogramm für Anmeldeinformationen konnten wir das CodeCommit-Repository unter Visual Studio verbinden.
(Bild: Drilling / Microsoft)

Anschließend klappt auch das Verbinden von CodeCommit-Repositories unter Visual Studio. Nun können wir können den vorhandenen Code auf AWS Code Commit „pushen“. Vorab kann es aber hilfreich sein, die Anzahl der in Git gespeicherten Dateien deutlich verringern, indem man mit dem Team Explorer eine für .NET-Projekte spezifische „.gitignore“-Datei hinzufügt.

Mit einer „.gitignore“-Datei für .NET-Projekte lässt sich die Anzahl der in git zu speichernden Dateien reduzieren.
Mit einer „.gitignore“-Datei für .NET-Projekte lässt sich die Anzahl der in git zu speichernden Dateien reduzieren.
(Bild: Drilling / Microsoft)

Auf diesem Weg lassen sich nicht benötigte Dateien ausschließen. Hierzu klickt man auf das Home-Symbol in der Team Explorer-Symbolleiste, klickt dann auf „Einstellungen“ und dort auf „Repository-Einstellungen“. Dann wählt man unter „Ignore & Attributes Files“ die Option „Add“ für „Ignore file“.

Die Code-Synchronisation mit AWS CodeCommit funktioniert.
Die Code-Synchronisation mit AWS CodeCommit funktioniert.
(Bild: Drilling / Microsoft)

Nachdem man eine .gitignore-Datei hinzugefügt und optional Visual Studio mit CodeCommit verbunden hat, übertragt man seinen Code z. B. mit „git push“ manuell oder Team Explorer an AWS CodeCommit. Im Team Explorer klickt man dazu auf „Home/Sync“.

Dies bestätigt auch ein Blick in die Verwaltungskonsole.
Dies bestätigt auch ein Blick in die Verwaltungskonsole.
(Bild: Drilling / Microsoft)

Nach dem Übertragen der Änderungen kann man mithilfe der CodeCommit-Verwaltungskonsole überprüfen, ob alle Dateien vorhanden sind.

(ID:46336884)