Aktualisieren Sie die Runtime-Version in der Buildspec-Datei - AWS CodeBuild

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Aktualisieren Sie die Runtime-Version in der Buildspec-Datei

Sie können die von Ihrem Projekt verwendete Runtime auf eine neue Version ändern, indem Sie den runtime-versions Abschnitt Ihrer Buildspec-Datei aktualisieren. Die folgenden Beispiele zeigen, wie Sie Java-Versionen 8 und 11 angeben.

  • Ein runtime-versions-Abschnitt, der Version 8 von Java angibt:

    phases: install: runtime-versions: java: corretto8
  • Ein runtime-versions-Abschnitt, der Version 11 von Java angibt:

    phases: install: runtime-versions: java: corretto11

Die folgenden Beispiele zeigen, wie verschiedene Versionen von Python mit dem Ubuntu-Standard-Image 5.0 oder dem Amazon Linux 2-Standard-Image 3.0 angegeben werden:

  • Ein runtime-versions Abschnitt, der Python-Version 3.7 spezifiziert:

    phases: install: runtime-versions: python: 3.7
  • Ein runtime-versions Abschnitt, der Python-Version 3.8 spezifiziert:

    phases: install: runtime-versions: python: 3.8

Dieses Beispiel zeigt ein Projekt, das mit der Java-Laufzeitversion 8 beginnt und anschließend auf die Java-Laufzeitversion 10 aktualisiert wird.

  1. Laden Sie Maven herunter und installieren Sie es. Weitere Informationen finden Sie unter Downloading Apache Maven und Installing Apache Maven auf der Apache Maven-Website.

  2. Wechseln Sie in ein leeres Verzeichnis auf Ihrem lokalen Computer oder der Instance und führen anschließend diesen Maven-Befehl aus.

    mvn archetype:generate "-DgroupId=com.mycompany.app" "-DartifactId=ROOT" "-DarchetypeArtifactId=maven-archetype-webapp" "-DinteractiveMode=false"

    Nach erfolgreicher Ausführung werden diese Verzeichnisstruktur und die Dateien erstellt.

    . └── ROOT ├── pom.xml └── src └── main ├── resources └── webapp ├── WEB-INF │ └── web.xml └── index.jsp
  3. Erstellen Sie eine Datei mit dem Namen buildspec.yml und dem folgenden Inhalt. Speichern Sie die Datei im Verzeichnis (root directory name)/my-web-app.

    version: 0.2 phases: install: runtime-versions: java: corretto8 build: commands: - java -version - mvn package artifacts: files: - '**/*' base-directory: 'target/my-web-app'

    In der Build-Spezifikationsdatei:

    • Der Abschnitt runtime-versions gibt an, dass das Projekt die Java-Laufzeitversion 8 verwendet.

    • Der Befehl - java -version zeigt die Version von Java an, die bei der Ausführung des Projekts verwendet wird .

    Ihre Dateistruktur sollte nun wie folgt aussehen:

    (root directory name) └── my-web-app ├── src │ ├── main │ ├── resources │ └── webapp │ └── WEB-INF │ └── web.xml │ └── index.jsp ├── buildspec.yml └── pom.xml
  4. Laden Sie den Inhalt des my-web-app Verzeichnisses in einen S3-Eingabe-Bucket oder ein CodeCommit, GitHub, oder Bitbucket-Repository hoch.

    Wichtig

    Laden Sie nicht (root directory name) oder (root directory name)/my-web-app hoch, sondern nur die Verzeichnisse und Dateien in (root directory name)/my-web-app.

    Wenn du einen S3-Eingabe-Bucket verwendest, achte darauf, eine ZIP Datei zu erstellen, die die Verzeichnisstruktur und die Dateien enthält, und lade sie dann in den Eingabe-Bucket hoch. Fügen Sie der ZIP Datei kein (root directory name) oder (root directory name)/my-web-app hinzu, sondern nur die Verzeichnisse und Dateien darin(root directory name)/my-web-app.

  5. Öffne die AWS CodeBuild Konsole unter https://console.aws.amazon.com/codesuite/codebuild/home.

  6. Erstellen Sie ein Build-Projekt. Weitere Informationen erhalten Sie unter Erstellen Sie ein Build-Projekt (Konsole) und Ausführen eines Build (Konsole). Übernehmen Sie für alle Einstellungen die Standardwerte, außer für folgende Einstellungen:

    • Für Environment (Umgebung):

      • Wählen Sie für Environment image (Umgebungs-Abbild) die Option Managed image (Verwaltetes Abbild) aus.

      • Wählen Sie für Operating system (Betriebssystem) die Option Amazon Linux 2 aus.

      • Wählen Sie unter Runtime (Laufzeit) die Option Standard aus.

      • Wählen Sie für Image aws/codebuild/amazonlinux2-x86_64-standard:4.0.

  7. Wählen Sie Start build (Build starten).

  8. Übernehmen Sie in der Build configuration (Build-Konfiguration) die Standardeinstellungen und wählen Sie dann Start build (Build starten).

  9. Überprüfen Sie die Build-Ausgabe unter der Registerkarte Build logs (Build-Protokolle), wenn der Build abgeschlossen ist. Die Ausgabe sollte folgendermaßen oder ähnlich aussehen:

    [Container] Date Time Phase is DOWNLOAD_SOURCE [Container] Date Time CODEBUILD_SRC_DIR=/codebuild/output/src460614277/src [Container] Date Time YAML location is /codebuild/output/src460614277/src/buildspec.yml [Container] Date Time Processing environment variables [Container] Date Time Selecting 'java' runtime version 'corretto8' based on manual selections... [Container] Date Time Running command echo "Installing Java version 8 ..." Installing Java version 8 ... [Container] Date Time Running command export JAVA_HOME="$JAVA_8_HOME" [Container] Date Time Running command export JRE_HOME="$JRE_8_HOME" [Container] Date Time Running command export JDK_HOME="$JDK_8_HOME" [Container] Date Time Running command for tool_path in "$JAVA_8_HOME"/bin/* "$JRE_8_HOME"/bin/*;
  10. Aktualisieren Sie den Abschnitt runtime-versions mit Java-Version 11:

    install: runtime-versions: java: corretto11
  11. Nachdem Sie die Änderung gespeichert haben, führen Sie Ihren Build erneut aus und zeigen Sie die Build-Ausgabe an. Es sollte angezeigt werden, dass Java Version 11 installiert ist. Die Ausgabe sollte folgendermaßen oder ähnlich aussehen:

    [Container] Date Time Phase is DOWNLOAD_SOURCE [Container] Date Time CODEBUILD_SRC_DIR=/codebuild/output/src460614277/src [Container] Date Time YAML location is /codebuild/output/src460614277/src/buildspec.yml [Container] Date Time Processing environment variables [Container] Date Time Selecting 'java' runtime version 'corretto11' based on manual selections... Installing Java version 11 ... [Container] Date Time Running command export JAVA_HOME="$JAVA_11_HOME" [Container] Date Time Running command export JRE_HOME="$JRE_11_HOME" [Container] Date Time Running command export JDK_HOME="$JDK_11_HOME" [Container] Date Time Running command for tool_path in "$JAVA_11_HOME"/bin/* "$JRE_11_HOME"/bin/*;