Cloud & Microservice Blog

Unser Blog hilft Cloud Computing, Machine Learning, Microservices und viele weitere Hypes zu verstehen...

DevOps with AWS

Continuous Delivery mit AWS CodePipeline - Erstellung der Pipeline mit AWS CodePipeline

Bewertung: 5 / 5

Stern aktivStern aktivStern aktivStern aktivStern aktiv
 

Erstellung der Pipeline mit AWS CodePipeline

Beginnen wir mit der eigentlichen Pipeline. Zuerst müssen wir einen Namen vergeben. Dieser kann später nicht mehr verändert werden und sollte er sinnvoll gewählt werden. 

AWS CodePipeline anlegen

Als nächstes müssen wir die Quelle unserer Pipeline auswählen. Sollte unser Projekt in AWS CodeCommit gehostet sein, kann dies ebenso verwendet werden wie GitHub. Wir verwenden in diesem Beispiel unsere GitHub Organisation innFactory und ein beliebiges akka sbt Projekt. Unter Advanced müssen wir keine Einstellungen vornehmen und wir können die Pipeline automatisch bei einem neuen git push auf den master starten lassen.

Code Pipeline Quelle (CodeCommit oder GitHub)

Für die Buildphase nutzen wir CodeBuild von AWS. Hierzu wählen wir „Create a new build project“ und konfigurieren die Einstellungen wie auf den nachfolgenden Screenshots zu sehen. Wir können beliebige Umgebungsvariablen hinzufügen, die in der buildspec.yml Datei aufgelöst werden. Wir haben dies bereits für unsere Datenbankparameter verwendet und die Konfiguration unseres akka Projektes wird, wenn es als Docker Instanz läuft, mit diesen Variablen überschrieben. Für produktive Systeme sollten die Passwörter nicht als Plaintext übergeben werden, sondern ein EC2 Parameter Store verwendet werden.

AWS CodeBuild konfiguration

AWS CodeBuild Umgebungsvariablen für RDS Datenbank

Auf der Seite für das Deployment können wir unsere Elastic Beanstalk Application und unsere Umgebung mit der Sample Application verwenden.

CodePipeline Deployment zu Elastic Beanstalk

Zum Schluss müssen wir noch noch eine Rolle für die Pipeline anlegen und alle bisher definierten Rollen über AWS IAM anpassen. Wichtig ist, dass unsere verwendeten Rollen Zugriff auf das Docker Repository und auf Beanstalk haben. Sollte dies nicht konfiguriert worden sein, wird die Pipeline mit entsprechender Meldung fehlschlagen.

CodePipeline Service Rolle

Kategorien

  • Neuigkeiten
  • Gastbeiträge
  • Data Science & Engineering
  • Softwareentwicklung
  • Innovationen aus aller Welt
  • Microservices & Cloud Computing

Blogbeiträge

Microservice Blog

Die Buzzwords Digitalisierung und Industrie 4.0 sind in aller Munde, aber was bedeutet das für die Unternehmer? Unser Blog hilft dabei, die Cloud, Machine Learning, die Blockchain und viele weitere Hypes und Trends zu verstehen. Unser Schwerpunkt liegt dabei klar auf dem Cloud Computing und der Programmierung von verteilten Softwarelösungen, da unsere Expertise dort am Größten ist.