

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# AWS CodeBuild membangun dan menguji referensi tindakan
<a name="action-reference-CodeBuild"></a>

Memungkinkan Anda menjalankan build dan pengujian sebagai bagian dari pipeline Anda. Saat Anda menjalankan tindakan CodeBuild build atau test, perintah yang ditentukan dalam buildspec dijalankan di dalam container. CodeBuild Semua artefak yang ditetapkan sebagai artefak masukan untuk suatu CodeBuild tindakan tersedia di dalam wadah yang menjalankan perintah. CodeBuild dapat memberikan tindakan build atau test. Untuk informasi selengkapnya, silakan lihat [Panduan Pengguna AWS CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/).

Saat Anda menggunakan CodePipeline wizard di konsol untuk membuat proyek build, proyek CodeBuild build akan menunjukkan penyedia sumbernya CodePipeline. Saat membuat proyek build di CodeBuild konsol, Anda tidak dapat menentukan CodePipeline sebagai penyedia sumber, tetapi menambahkan tindakan build ke pipeline akan menyesuaikan sumber di CodeBuild konsol. Untuk informasi selengkapnya, lihat [ProjectSource](https://docs.aws.amazon.com/codebuild/latest/APIReference/API_ProjectSource.html) di dalam *Referensi API AWS CodeBuild *. 

**Topics**
+ [Tipe tindakan](#action-reference-CodeBuild-type)
+ [Parameter konfigurasi](#action-reference-CodeBuild-config)
+ [Artefak masukan](#action-reference-CodeBuild-input)
+ [Artefak keluaran](#action-reference-CodeBuild-output)
+ [Variabel keluaran](#action-reference-CodeBuild-variables)
+ [Izin peran layanan: tindakan CodeBuild](#edit-role-codebuild)
+ [Deklarasi tindakan (CodeBuild contoh)](#action-reference-CodeBuild-example)
+ [Lihat juga](#action-reference-CodeBuild-links)

## Tipe tindakan
<a name="action-reference-CodeBuild-type"></a>
+ Kategori: `Build` atau `Test`
+ Pemilik: `AWS`
+ Penyedia: `CodeBuild`
+ Versi: `1`

## Parameter konfigurasi
<a name="action-reference-CodeBuild-config"></a>

**ProjectName**  
Wajib: Ya  
`ProjectName`adalah nama proyek pembangunan di CodeBuild.

**PrimarySource**  
Diperlukan: Kondisional  
Nilai `PrimarySource` parameter harus menjadi nama salah satu artefak input untuk tindakan. CodeBuild mencari file buildspec dan menjalankan perintah buildspec di direktori yang berisi versi unzip artefak ini.  
Parameter ini diperlukan jika beberapa artefak masukan ditentukan untuk suatu CodeBuild tindakan. Ketika hanya ada satu artefak sumber untuk aksi, artefak default ke `PrimarySource` artefak itu.

**BatchEnabled**  
Wajib: Tidak  
Nilai Boolean dari `BatchEnabled` parameter memungkinkan tindakan untuk menjalankan beberapa build dalam eksekusi build yang sama.  
Ketika opsi ini diaktifkan, `CombineArtifacts` opsi tersedia.  
Untuk contoh pipeline dengan build batch diaktifkan, lihat [CodePipeline integrasi dengan CodeBuild dan build batch](https://docs.aws.amazon.com/codebuild/latest/userguide/sample-pipeline-batch.html).

**BuildspecOverride**  
Wajib: Tidak  
Definisi buildspec sebaris atau deklarasi file buildspec yang mengganti definisi terbaru yang ditentukan dalam proyek build, hanya untuk build ini. Buildspec yang didefinisikan pada proyek tidak diubah.  
Jika nilai ini diatur, itu bisa menjadi salah satu dari yang berikut:  
+ Definisi buildspec sebaris. Untuk informasi selengkapnya, lihat referensi sintaks di sintaks [Buildspec](https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-syntax).
+ Jalur ke file buildspec alternatif relatif terhadap nilai variabel `CODEBUILD_SRC_DIR` lingkungan bawaan atau jalur ke bucket S3. Ember harus Wilayah AWS sama dengan proyek pembangunan. Tentukan file buildspec menggunakan ARN (misalnya,). `arn:aws:s3:::my-codebuild-sample2/buildspec.yml` Jika nilai ini tidak disediakan atau diatur ke string kosong, kode sumber harus berisi file buildspec di direktori root nya. Untuk informasi selengkapnya tentang menambahkan jalur, lihat [Nama File Buildspec dan](https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec-ref-name-storage) Lokasi Penyimpanan.
Karena properti ini memungkinkan Anda untuk mengubah perintah build yang akan berjalan di container, Anda harus mencatat bahwa prinsipal IAM dengan kemampuan untuk memanggil API ini dan menyetel parameter ini dapat mengganti pengaturan default. Selain itu, kami menganjurkan agar Anda menggunakan lokasi buildspec yang dapat dipercaya seperti file di repositori sumber Anda atau bucket Amazon S3.

**CombineArtifacts**  
Wajib: Tidak  
Nilai Boolean `CombineArtifacts` parameter menggabungkan semua artefak build dari build batch menjadi file artefak tunggal untuk aksi build.  
Untuk menggunakan opsi ini, `BatchEnabled` parameter harus diaktifkan.

**EnvironmentVariables**  
Wajib: Tidak  
Nilai parameter ini digunakan untuk mengatur variabel lingkungan untuk CodeBuild tindakan di pipeline Anda. Nilai untuk `EnvironmentVariables` parameter mengambil bentuk array JSON dari objek variabel lingkungan. Lihat parameter contoh di[Deklarasi tindakan (CodeBuild contoh)](#action-reference-CodeBuild-example).  
Setiap objek memiliki tiga bagian, yang semuanya adalah string:  
+ `name`: Nama atau kunci variabel lingkungan. 
+ `value`: Nilai variabel lingkungan. Saat menggunakan `SECRETS_MANAGER` tipe `PARAMETER_STORE` atau, nilai ini harus berupa nama parameter yang telah Anda simpan di AWS Systems Manager Parameter Store atau rahasia yang telah Anda simpan di AWS Secrets Manager, masing-masing.
**catatan**  
Kami sangat tidak menyarankan penggunaan variabel lingkungan untuk menyimpan nilai sensitif, terutama AWS kredensyal. Saat Anda menggunakan CodeBuild konsol atau AWS CLI, variabel lingkungan ditampilkan dalam teks biasa. Untuk nilai sensitif, kami sarankan Anda menggunakan `SECRETS_MANAGER` tipe sebagai gantinya. 
+ `type`: (Opsional) Jenis variabel lingkungan. Nilai yang valid adalah `PARAMETER_STORE`, `SECRETS_MANAGER`, atau `PLAINTEXT`. Ketika tidak ditentukan, ini default ke. `PLAINTEXT`
Saat Anda memasukkan`name`,`value`, dan `type` untuk konfigurasi variabel lingkungan Anda, terutama jika variabel lingkungan berisi sintaks variabel CodePipeline keluaran, jangan melebihi batas 1000 karakter untuk bidang nilai konfigurasi. Kesalahan validasi dikembalikan ketika batas ini terlampaui.
Untuk informasi selengkapnya, lihat [ EnvironmentVariable](https://docs.aws.amazon.com/codebuild/latest/APIReference/API_EnvironmentVariable.html)di Referensi AWS CodeBuild API. Untuk contoh CodeBuild tindakan dengan variabel lingkungan yang menyelesaikan ke nama GitHub cabang, lihat. [Contoh: Gunakan BranchName variabel dengan variabel CodeBuild lingkungan](actions-variables.md#actions-variables-examples-env-branchname)

## Artefak masukan
<a name="action-reference-CodeBuild-input"></a>
+ **Jumlah artefak:** `1 to 5`
+ **Deskripsi:** CodeBuild mencari file buildspec dan menjalankan perintah buildspec dari direktori artefak sumber utama. Ketika salah satu sumber input ditentukan atau ketika lebih dari satu sumber input ditentukan untuk CodeBuild tindakan, artefak tunggal, atau artefak utama dalam kasus beberapa sumber input, harus diatur menggunakan parameter konfigurasi `PrimarySource` tindakan di. CodePipeline 

  Setiap artefak input diekstraksi ke direktorinya sendiri, lokasi yang disimpan dalam variabel lingkungan. Direktori untuk artefak sumber utama tersedia dengan`$CODEBUILD_SRC_DIR`. Direktori untuk semua artefak input lainnya tersedia dengan. `$CODEBUILD_SRC_DIR_yourInputArtifactName`
**catatan**  
Artefak yang dikonfigurasi dalam CodeBuild proyek Anda menjadi artefak input yang digunakan oleh CodeBuild aksi di pipeline Anda.

## Artefak keluaran
<a name="action-reference-CodeBuild-output"></a>
+ **Jumlah artefak:** `0 to 5` 
+ **Deskripsi:** Ini dapat digunakan untuk membuat artefak yang didefinisikan dalam file CodeBuild buildspec tersedia untuk tindakan selanjutnya dalam pipeline. Ketika hanya satu artefak keluaran yang didefinisikan, artefak ini dapat didefinisikan langsung di bawah `artifacts` bagian file buildspec. Ketika lebih dari satu artefak keluaran ditentukan, semua artefak yang direferensikan harus didefinisikan sebagai artefak sekunder dalam file buildspec. Nama-nama artefak keluaran CodePipeline harus cocok dengan pengidentifikasi artefak dalam file buildspec.
**catatan**  
Artefak yang dikonfigurasi dalam CodeBuild proyek Anda menjadi artefak CodePipeline masukan dalam aksi pipeline Anda.

  Jika `CombineArtifacts` parameter dipilih untuk build batch, lokasi artefak keluaran berisi artefak gabungan dari beberapa build yang dijalankan dalam eksekusi yang sama.

## Variabel keluaran
<a name="action-reference-CodeBuild-variables"></a>

Tindakan ini akan menghasilkan sebagai variabel semua variabel lingkungan yang diekspor sebagai bagian dari build. Untuk detail selengkapnya tentang cara mengekspor variabel lingkungan, lihat [ EnvironmentVariable](https://docs.aws.amazon.com/codebuild/latest/APIReference/API_EnvironmentVariable.html)di *Panduan AWS CodeBuild API*.

Untuk informasi selengkapnya tentang penggunaan variabel CodeBuild lingkungan di CodePipeline, lihat contoh di[CodeBuild variabel keluaran aksi](reference-variables.md#reference-variables-list-configured-codebuild). Untuk daftar variabel lingkungan yang dapat Anda gunakan CodeBuild, lihat [Variabel lingkungan di lingkungan build](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-env-vars.html) di *Panduan AWS CodeBuild Pengguna*.

## Izin peran layanan: tindakan CodeBuild
<a name="edit-role-codebuild"></a>

Untuk CodeBuild dukungan, tambahkan yang berikut ini ke pernyataan kebijakan Anda:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "codebuild:BatchGetBuilds",
                "codebuild:StartBuild",
                "codebuild:BatchGetBuildBatches",
                "codebuild:StartBuildBatch"
            ],
            "Resource": [
                "arn:aws:codebuild:*:111122223333:project/[[ProjectName]]"
            ],
            "Effect": "Allow"
        }
    ]
}
```

------

## Deklarasi tindakan (CodeBuild contoh)
<a name="action-reference-CodeBuild-example"></a>

------
#### [ YAML ]

```
Name: Build
Actions:
  - Name: PackageExport
    ActionTypeId:
      Category: Build
      Owner: AWS
      Provider: CodeBuild
      Version: '1'
    RunOrder: 1
    Configuration:
      BatchEnabled: 'true'
      CombineArtifacts: 'true'
      ProjectName: my-build-project
      PrimarySource: MyApplicationSource1
      EnvironmentVariables: '[{"name":"TEST_VARIABLE","value":"TEST_VALUE","type":"PLAINTEXT"},{"name":"ParamStoreTest","value":"PARAMETER_NAME","type":"PARAMETER_STORE"}]'
    OutputArtifacts:
      - Name: MyPipeline-BuildArtifact
    InputArtifacts:
      - Name: MyApplicationSource1
      - Name: MyApplicationSource2
```

------
#### [ JSON ]

```
{
    "Name": "Build",
    "Actions": [
        {
            "Name": "PackageExport",
            "ActionTypeId": {
                "Category": "Build",
                "Owner": "AWS",
                "Provider": "CodeBuild",
                "Version": "1"
            },
            "RunOrder": 1,
            "Configuration": {
                "BatchEnabled": "true",
                "CombineArtifacts": "true",
                "ProjectName": "my-build-project",
                "PrimarySource": "MyApplicationSource1",
                "EnvironmentVariables": "[{\"name\":\"TEST_VARIABLE\",\"value\":\"TEST_VALUE\",\"type\":\"PLAINTEXT\"},{\"name\":\"ParamStoreTest\",\"value\":\"PARAMETER_NAME\",\"type\":\"PARAMETER_STORE\"}]"
            },
            "OutputArtifacts": [
                {
                    "Name": "MyPipeline-BuildArtifact"
                }
            ],
            "InputArtifacts": [
                {
                    "Name": "MyApplicationSource1"
                },
                {
                    "Name": "MyApplicationSource2"
                }
            ]
        }
    ]
}
```

------

## Lihat juga
<a name="action-reference-CodeBuild-links"></a>

Sumber daya terkait berikut dapat membantu Anda saat Anda bekerja dengan tindakan ini.
+ [AWS CodeBuild Panduan Pengguna](https://docs.aws.amazon.com/codebuild/latest/userguide/) — Untuk contoh pipeline dengan CodeBuild tindakan, lihat [Menggunakan CodePipeline dengan CodeBuild untuk Menguji Kode dan Menjalankan Build.](https://docs.aws.amazon.com/codebuild/latest/userguide/how-to-create-pipeline.html) Untuk contoh proyek dengan beberapa CodeBuild artefak input dan output, lihat [CodePipelineIntegrasi dengan CodeBuild dan Beberapa Sumber Input dan Contoh Artefak Output dan Beberapa Sumber Input dan Contoh](https://docs.aws.amazon.com/codebuild/latest/userguide/sample-pipeline-multi-input-output.html) [Artefak Output](https://docs.aws.amazon.com/codebuild/latest/userguide/sample-multi-in-out.html).
+ [Tutorial: Membuat pipeline yang membangun dan menguji aplikasi Android Anda AWS Device Farm](tutorials-codebuild-devicefarm.md)— Tutorial ini menyediakan contoh file buildspec dan contoh aplikasi untuk membuat pipeline dengan GitHub sumber yang membangun dan menguji aplikasi Android dengan dan. CodeBuild AWS Device Farm
+ [Referensi Spesifikasi Bangun untuk CodeBuild ](https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html) — Topik referensi ini memberikan definisi dan contoh untuk memahami file CodeBuild buildspec. Untuk daftar variabel lingkungan yang dapat Anda gunakan CodeBuild, lihat [Variabel lingkungan di lingkungan build](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-env-vars.html) di *Panduan AWS CodeBuild Pengguna*.