Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Specifica di due runtime
Puoi specificare più di un runtime nello stesso progetto di build. CodeBuild Questo progetto di esempio utilizza due file di origine: uno che utilizza il comando Vai a runtime e uno che utilizza il runtime Node.js.
-
Crea una directory denominata
my-source
. -
Nella directory
my-source
, crea una directory denominatagolang-app
, -
Crea un file denominato
hello.go
con i seguenti contenuti. Archivia il file nella directorygolang-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") }
-
Nella directory
my-source
, crea una directory denominatanodejs-app
, che deve trovarsi allo stesso livello della directorygolang-app
. -
Crea un file denominato
index.js
con i seguenti contenuti. Archivia il file nella directorynodejs-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");
-
Crea un file denominato
package.json
con i seguenti contenuti. Archivia il file nella directorynodejs-app
.{ "name": "mycompany-app", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"run some tests here\"" }, "author": "", "license": "ISC" }
-
Crea un file denominato
buildspec.yml
con i seguenti contenuti. Archivia il file nellamy-source
directory, allo stesso livello delle directorynodejs-app
egolang-app
. Laruntime-versions
sezione specifica i runtime di Node.js versione 12 e Go versione 1.13.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
-
La struttura del file dovrebbe avere il seguente aspetto.
my-source ├── golang-app │ └── hello.go ├── nodejs.app │ ├── index.js │ └── package.json └── buildspec.yml
-
Carica il contenuto della
my-source
directory in un bucket di input S3 o in un repository CodeCommit, GitHub o Bitbucket.Importante
Se utilizzi un bucket di input S3, assicurati di creare un ZIP file che contenga la struttura della directory e i file, quindi caricalo nel bucket di input. Non aggiungete
my-source
al ZIP file, ma solo le cartelle e i file in esso contenuti.my-source
-
Apri la AWS CodeBuild console su https://console.aws.amazon.com/codesuite/codebuild/home
. -
Creare un progetto di compilazione. Per ulteriori informazioni, consulta Creare un progetto di compilazione (console) e Esecuzione di una compilazione (console). Lasciare tutte le impostazioni sui valori predefiniti, ad eccezione delle seguenti.
-
In Environment (Ambiente):
-
Per Environment image (Immagine ambiente), scegliere Managed image (Immagine gestita).
-
Per Operating system (Sistema operativo), scegliere Amazon Linux 2.
-
In Runtime(s) (Runtime), seleziona Standard.
-
Per Image, scegli aws/codebuild/amazonlinux2-x86_64-standard:4.0.
-
-
-
Scegliere Create build project (Crea progetto di compilazione).
-
Selezionare Start build (Avvia compilazione).
-
In Build configuration (Configurazione della compilazione) accettare le impostazioni predefinite, quindi scegliere Build configuration (Avvia compilazione).
-
Al termine della compilazione, visualizzare l’output della compilazione nella scheda Build logs (Log di compilazione). Verrà visualizzato un output simile al seguente. che mostra l’output dei runtime Go e Node.js. Inoltre, mostra l'output alle applicazioni Go e Node.js.
[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