Zwei Laufzeiten angeben - 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.

Zwei Laufzeiten angeben

Sie können mehr als eine Runtime im selben Build-Projekt angeben. CodeBuild Dieses Beispielprojekt verwendet zwei Quelldateien: eine, die die Go-Laufzeit verwendet und eine, die die Node.js-Laufzeit verwendet.

  1. Erstellen Sie ein Verzeichnis mit dem Namen my-source.

  2. Erstellen Sie im Verzeichnis my-source ein Verzeichnis mit dem Namen golang-app.

  3. Erstellen Sie eine Datei mit dem Namen hello.go und dem folgenden Inhalt. Speichern Sie die Datei im Verzeichnis golang-app.

    package main import "fmt" func main() { fmt.Println("hello world from golang") fmt.Println("1+1 =", 1+1) fmt.Println("7.0/3.0 =", 7.0/3.0) fmt.Println(true && false) fmt.Println(true || false) fmt.Println(!true) fmt.Println("good bye from golang") }
  4. Erstellen Sie im Verzeichnis my-source ein Verzeichnis mit dem Namen nodejs-app. Es sollte sich auf derselben Ebene wie das Verzeichnis golang-app befinden.

  5. Erstellen Sie eine Datei mit dem Namen index.js und dem folgenden Inhalt. Speichern Sie die Datei im Verzeichnis nodejs-app.

    console.log("hello world from nodejs"); console.log("1+1 =" + (1+1)); console.log("7.0/3.0 =" + 7.0/3.0); console.log(true && false); console.log(true || false); console.log(!true); console.log("good bye from nodejs");
  6. Erstellen Sie eine Datei mit dem Namen package.json und dem folgenden Inhalt. Speichern Sie die Datei im Verzeichnis nodejs-app.

    { "name": "mycompany-app", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"run some tests here\"" }, "author": "", "license": "ISC" }
  7. Erstellen Sie eine Datei mit dem Namen buildspec.yml und dem folgenden Inhalt. Speichern Sie die Datei im Verzeichnis my-source auf der gleichen Ebene wie die Verzeichnisse nodejs-app und golang-app. runtime-versionsIn diesem Abschnitt werden die Laufzeiten Node.js Version 12 und Go Version 1.13 angegeben.

    version: 0.2 phases: install: runtime-versions: golang: 1.13 nodejs: 12 build: commands: - echo Building the Go code... - cd $CODEBUILD_SRC_DIR/golang-app - go build hello.go - echo Building the Node code... - cd $CODEBUILD_SRC_DIR/nodejs-app - npm run test artifacts: secondary-artifacts: golang_artifacts: base-directory: golang-app files: - hello nodejs_artifacts: base-directory: nodejs-app files: - index.js - package.json
  8. Ihre Dateistruktur sollte nun wie folgt aussehen:

    my-source ├── golang-app │ └── hello.go ├── nodejs.app │ ├── index.js │ └── package.json └── buildspec.yml
  9. Laden Sie den Inhalt des my-source Verzeichnisses in einen S3-Eingabe-Bucket oder ein CodeCommit, GitHub, oder Bitbucket-Repository hoch.

    Wichtig

    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 nichts my-source hinzu, sondern nur die Verzeichnisse und Dateien darinmy-source.

  10. Öffnen Sie die AWS CodeBuild Konsole unter https://console.aws.amazon.com/codesuite/codebuild/home.

  11. 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.

  12. Wählen Sie Create build project (Build-Projekt erstellen) aus.

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

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

  15. Überprüfen Sie die Build-Ausgabe unter der Registerkarte Build logs (Build-Protokolle), wenn der Build abgeschlossen ist. Die Ausgabe sollte in etwa wie folgt aussehen: Es wird die Ausgabe der Go- und Node.js-Laufzeiten angezeigt. Es wird auch die Ausgabe der Go- und Node.js-Anwendungen angezeigt.

    [Container] Date Time Processing environment variables [Container] Date Time Selecting 'golang' runtime version '1.13' based on manual selections... [Container] Date Time Selecting 'nodejs' runtime version '12' based on manual selections... [Container] Date Time Running command echo "Installing Go version 1.13 ..." Installing Go version 1.13 ... [Container] Date Time Running command echo "Installing Node.js version 12 ..." Installing Node.js version 12 ... [Container] Date Time Running command n $NODE_12_VERSION installed : v12.20.1 (with npm 6.14.10) [Container] Date Time Moving to directory /codebuild/output/src819694850/src [Container] Date Time Registering with agent [Container] Date Time Phases found in YAML: 2 [Container] Date Time INSTALL: 0 commands [Container] Date Time BUILD: 1 commands [Container] Date Time Phase complete: DOWNLOAD_SOURCE State: SUCCEEDED [Container] Date Time Phase context status code: Message: [Container] Date Time Entering phase INSTALL [Container] Date Time Phase complete: INSTALL State: SUCCEEDED [Container] Date Time Phase context status code: Message: [Container] Date Time Entering phase PRE_BUILD [Container] Date Time Phase complete: PRE_BUILD State: SUCCEEDED [Container] Date Time Phase context status code: Message: [Container] Date Time Entering phase BUILD [Container] Date Time Running command echo Building the Go code... Building the Go code... [Container] Date Time Running command cd $CODEBUILD_SRC_DIR/golang-app [Container] Date Time Running command go build hello.go [Container] Date Time Running command echo Building the Node code... Building the Node code... [Container] Date Time Running command cd $CODEBUILD_SRC_DIR/nodejs-app [Container] Date Time Running command npm run test > mycompany-app@1.0.0 test /codebuild/output/src924084119/src/nodejs-app > echo "run some tests here" run some tests here