

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

# Commands
<a name="rule-reference-Commands"></a>

Saat Anda membuat kondisi, Anda dapat menambahkan `Commands` aturan. Bagian ini memberikan referensi untuk parameter aturan. Untuk informasi selengkapnya tentang aturan dan ketentuan, lihat[Bagaimana kondisi panggung bekerja?](concepts-how-it-works-conditions.md).

Anda dapat menggunakan `Commands` aturan untuk membuat kondisi di mana perintah berhasil memenuhi kriteria aturan, seperti output dan jalur file untuk perintah yang berhasil untuk kondisi beforeEntry.

**catatan**  
Untuk kondisi beforeEntry yang dikonfigurasi dengan hasil **Lewati**, hanya aturan berikut yang tersedia: `LambdaInvoke` dan. `VariableCheck`

**Topics**
+ [Pertimbangan untuk aturan Perintah](#rule-reference-Commands-considerations)
+ [Izin kebijakan peran layanan](#rule-reference-Commands-policy)
+ [Jenis aturan](#rule-reference-Commands-type)
+ [Parameter konfigurasi](#rule-reference-Commands-config)
+ [Contoh konfigurasi aturan](#rule-reference-Commands-example)
+ [Lihat juga](#rule-reference-Commands-links)

## Pertimbangan untuk aturan Perintah
<a name="rule-reference-Commands-considerations"></a>

Pertimbangan berikut berlaku untuk aturan Perintah.
+ Aturan perintah menggunakan CodeBuild sumber daya yang mirip dengan CodeBuild tindakan, sementara mengizinkan perintah lingkungan shell dalam instance komputasi virtual tanpa perlu mengaitkan atau membuat proyek build.
**catatan**  
Menjalankan aturan perintah akan dikenakan biaya terpisah di AWS CodeBuild.
+ Karena aturan Command CodePipeline menggunakan CodeBuild resource, build yang dijalankan oleh action akan dikaitkan dengan batas build untuk akun Anda. CodeBuild Build yang dijalankan oleh aturan Command akan dihitung terhadap batas build bersamaan seperti yang dikonfigurasi untuk akun tersebut.
+ Batas waktu untuk build dengan aturan Command adalah 55 menit, berdasarkan CodeBuild build.
+ Instance komputasi menggunakan lingkungan build yang terisolasi di CodeBuild. 
**catatan**  
Karena lingkungan build terisolasi digunakan di tingkat akun, instance dapat digunakan kembali untuk eksekusi pipeline lainnya.
+ Semua format didukung kecuali format multi-baris. Anda harus menggunakan format satu baris saat memasukkan perintah.
+ Untuk aturan ini, CodePipeline akan mengambil peran layanan pipeline dan menggunakan peran itu untuk memungkinkan akses ke sumber daya saat runtime. Disarankan untuk mengonfigurasi peran layanan sehingga izin dicakup ke tingkat tindakan.
+ Izin yang ditambahkan ke peran CodePipeline layanan dirinci dalam[Menambahkan izin ke peran CodePipeline layanan](how-to-custom-role.md#how-to-update-role-new-services).
+ Izin yang diperlukan untuk melihat log di konsol dirinci di[Izin diperlukan untuk melihat log komputasi di konsol](security-iam-permissions-console-logs.md). Di layar contoh berikut, gunakan tautan **Log** untuk melihat log agar aturan Command berhasil di CloudWatch log.  
![\[Halaman Status untuk pipeline dengan aturan Commands\]](http://docs.aws.amazon.com/id_id/codepipeline/latest/userguide/images/commands-rule-status.png)  
![\[Halaman Log CloudWatch untuk pipeline dengan aturan Commands\]](http://docs.aws.amazon.com/id_id/codepipeline/latest/userguide/images/commands-rule-logs.png)
+ Tidak seperti tindakan lain di CodePipeline, Anda tidak menyetel bidang dalam konfigurasi tindakan; Anda mengatur bidang konfigurasi tindakan di luar konfigurasi tindakan.

## Izin kebijakan peran layanan
<a name="rule-reference-Commands-policy"></a>

Saat CodePipeline menjalankan aturan, CodePipeline buat grup log menggunakan nama pipeline sebagai berikut. Ini memungkinkan Anda untuk mengurangi izin untuk mencatat sumber daya menggunakan nama pipeline.

```
/aws/codepipeline/MyPipelineName
```

Jika Anda menggunakan peran layanan yang ada, untuk menggunakan tindakan Perintah, Anda perlu menambahkan izin berikut untuk peran layanan.
+ log: CreateLogGroup
+ log: CreateLogStream
+ log: PutLogEvents

Dalam pernyataan kebijakan peran layanan, cakupkan izin ke tingkat pipeline seperti yang ditunjukkan pada contoh berikut.

```
{
    "Effect": "Allow",
    "Action": [
        "logs:CreateLogGroup",
        "logs:CreateLogStream",
        "logs:PutLogEvents"
    ],
    "Resource": "arn:aws:logs:*:YOUR_AWS_ACCOUNT_ID:log-group:/aws/codepipeline/YOUR_PIPELINE_NAME:*"
}
```

Untuk melihat log di konsol menggunakan halaman dialog detail tindakan, izin untuk melihat log harus ditambahkan ke peran konsol. Untuk informasi selengkapnya, lihat contoh kebijakan izin konsol di[Izin diperlukan untuk melihat log komputasi di konsol](security-iam-permissions-console-logs.md).

## Jenis aturan
<a name="rule-reference-Commands-type"></a>
+ Kategori: `Rule`
+ Pemilik: `AWS`
+ Penyedia: `Commands`
+ Versi: `1`

## Parameter konfigurasi
<a name="rule-reference-Commands-config"></a>

**Commands**  
Wajib: Ya  
Anda dapat memberikan perintah shell untuk menjalankan `Commands` aturan. Di konsol, perintah dimasukkan pada baris terpisah. Di CLI, perintah dimasukkan sebagai string terpisah.  
Format multi-baris tidak didukung dan akan menghasilkan pesan kesalahan. Format baris tunggal harus digunakan untuk memasukkan perintah di bidang **Perintah**.
Rincian berikut memberikan komputasi default yang digunakan untuk aturan Command. Untuk informasi selengkapnya, lihat [Mode komputasi lingkungan build dan referensi tipe](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html) di Panduan CodeBuild Pengguna.  
+ **CodeBuild gambar: aws/codebuild/amazonlinux 2-x86\$164-standar:** 5.0
+ **Jenis komputasi:** Linux Kecil
+ **Nilai ComputeType Lingkungan: BUILD\$1 \$1SMALL** GENERAL1
+ **Nilai tipe lingkungan:** LINUX\$1CONTAINER

## Contoh konfigurasi aturan
<a name="rule-reference-Commands-example"></a>

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

```
result: FAIL
rules:
- name: CommandsRule
  ruleTypeId:
    category: Rule
    owner: AWS
    provider: Commands
    version: '1'
  configuration: {}
  commands:
  - ls
  - printenv
  inputArtifacts:
  - name: SourceArtifact
  region: us-east-1
```

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

```
{
    "result": "FAIL",
    "rules": [
        {
            "name": "CommandsRule",
            "ruleTypeId": {
                "category": "Rule",
                "owner": "AWS",
                "provider": "Commands",
                "version": "1"
            },
            "configuration": {},
            "commands": [
                "ls",
                "printenv"
            ],
            "inputArtifacts": [
                {
                    "name": "SourceArtifact"
                }
            ],
            "region": "us-east-1"
        }
    ]
}
```

------

## Lihat juga
<a name="rule-reference-Commands-links"></a>

Sumber daya terkait berikut dapat membantu Anda saat Anda bekerja dengan aturan ini.
+ Untuk informasi selengkapnya tentang aturan dan ketentuan, lihat [Kondisi [RuleTypeId](https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_RuleTypeId.html)](https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_Condition.html), dan [RuleExecution](https://docs.aws.amazon.com/codepipeline/latest/APIReference/API_RuleExecution.html)di *Panduan CodePipeline API*.