

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

# deployment
<a name="gg-cli-deployment"></a>

Gunakan perintah `deployment` untuk berinteraksi dengan komponen lokal pada perangkat inti Anda. 

Untuk memantau kemajuan penerapan lokal, gunakan `status` subperintah. Anda tidak dapat memantau kemajuan penerapan lokal menggunakan konsol.

**Subperintah**
+ [buat](#deployment-create)
+ [membatalkan](#deployment-cancel)
+ [daftar](#deployment-list)
+ [status](#deployment-status)

## buat
<a name="deployment-create"></a>

Buat atau perbarui deployment lokal menggunakan resep komponen tertentu, artefak, dan argumen waktu aktif.

**Sinopsis**  

```
greengrass-cli deployment create 
    --recipeDir path/to/component/recipe
    [--artifactDir path/to/artifact/folder ]
    [--update-config {component-configuration}]
    [--groupId <thing-group>]
    [--merge "<component-name>=<component-version>"]...
    [--runWith "<component-name>:posixUser=<user-name>[:<group-name>]"]...
    [--systemLimits "{component-system-resource-limits}]"]...
    [--remove <component-name>,...]
    [--failure-handling-policy <policy name[ROLLBACK, DO_NOTHING]>]
```

**Argumen**  
+ `--recipeDir`, `-r`. Jalur lengkap ke folder yang berisi file resep komponen.
+ `--artifactDir`, `-a`. Jalur lengkap ke folder yang berisi file artefak yang ingin Anda sertakan dalam deployment Anda. Folder artefak harus berisi struktur direktori berikut:

  ```
  /path/to/artifact/folder/<component-name>/<component-version>/<artifacts>
  ```
+ `--update-config`, `-c`. Argumen konfigurasi untuk deployment, disediakan sebagai string JSON atau file JSON. String JSON harus dalam format berikut: 

  ```
  { \
    "componentName": { \ 
      "MERGE": {"config-key": "config-value"}, \
      "RESET": ["path/to/reset/"] \
    } \
  }
  ```

  `MERGE` dan `RESET` peka huruf besar-kecil dan harus dalam huruf besar.
+ `--groupId`, `-g`. Grup sasaran objek untuk deployment.
+ `--merge`, `-m`. Nama dan versi komponen target yang ingin Anda tambahkan atau perbarui. Anda harus memberikan informasi komponen dalam format `<component>=<version>`. Gunakan argumen terpisah untuk setiap komponen tambahan yang akan ditentukan. Jika diperlukan, gunakan `--runWith` argumen untuk memberikan`posixUser`,`posixGroup`, dan `windowsUser` informasi untuk menjalankan komponen.
+ `--runWith`. The`posixUser`,`posixGroup`, dan `windowsUser` informasi untuk menjalankan komponen generik atau Lambda. Anda harus memberikan informasi ini dalam format `<component>:{posixUser|windowsUser}=<user>[:<=posixGroup>]`. Misalnya, Anda dapat menentukan **HelloWorld:posixUser=ggc\$1user:ggc\$1group** atau**HelloWorld:windowsUser=ggc\$1user**. Gunakan argumen terpisah untuk setiap opsi tambahan yang akan ditentukan.

  Untuk informasi selengkapnya, lihat [Konfigurasikan pengguna yang menjalankan komponen](configure-greengrass-core-v2.md#configure-component-user).
+ `--systemLimits`. Batas sumber daya sistem untuk diterapkan pada proses komponen Lambda generik dan non-kontainer pada perangkat inti. Anda dapat mengonfigurasi jumlah maksimum penggunaan CPU dan RAM yang dapat digunakan oleh setiap proses komponen. Tentukan objek JSON serial atau jalur file ke file JSON. Objek JSON harus memiliki format berikut.

  ```
  {  \
    "componentName": { \ 
      "cpus": cpuTimeLimit, \
      "memory": memoryLimitInKb \
    } \
  }
  ```

  Anda dapat mengonfigurasi batas sumber daya sistem berikut untuk setiap komponen:
  + `cpus`— <a name="system-resource-limits-cpu-definition-this"></a>Jumlah maksimum waktu CPU yang dapat digunakan oleh proses komponen ini pada perangkat inti. Total waktu CPU perangkat inti setara dengan jumlah inti CPU perangkat. Misalnya, pada perangkat inti dengan 4 core CPU, Anda dapat mengatur nilai ini `2` untuk membatasi proses komponen ini hingga 50 persen penggunaan setiap inti CPU. Pada perangkat dengan 1 inti CPU, Anda dapat mengatur nilai ini `0.25` untuk membatasi proses komponen ini hingga 25 persen penggunaan CPU. Jika Anda menetapkan nilai ini ke angka yang lebih besar dari jumlah inti CPU, perangkat lunak AWS IoT Greengrass Core tidak membatasi penggunaan CPU komponen. 
  + `memory`— <a name="system-resource-limits-memory-definition-this"></a>Jumlah maksimum RAM (dalam kilobyte) yang dapat digunakan oleh proses komponen ini pada perangkat inti. 

  Untuk informasi selengkapnya, lihat [Konfigurasikan batas sumber daya sistem untuk komponen](configure-greengrass-core-v2.md#configure-component-system-resource-limits).

  Fitur ini tersedia untuk v2.4.0 dan yang lebih baru dari [komponen inti Greengrass dan CLI Greengrass pada perangkat inti](greengrass-nucleus-component.md) Linux. AWS IoT Greengrass saat ini tidak mendukung fitur ini di perangkat inti Windows. 
+ `--remove`. Nama komponen target yang ingin Anda hapus dari deployment lokal. Untuk menghapus komponen yang digabung dari deployment cloud, Anda harus memberikan ID grup dari grup objek target dalam format berikut:

------
#### [ Greengrass nucleus v2.4.0 and later ]

  ```
  --remove <component-name> --groupId <group-name>
  ```

------
#### [ Earlier than v2.4.0 ]

  ```
  --remove <component-name> --groupId thinggroup/<group-name>
  ```

------
+ `--failure-handling-policy`. Mendefinisikan tindakan yang diambil saat penerapan gagal. Ada dua tindakan yang dapat Anda tentukan:
  + `ROLLBACK` – 
  + `DO_NOTHING` – 

  Fitur ini tersedia untuk v2.11.0 dan yang lebih baru. [Inti Greengrass](greengrass-nucleus-component.md)

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini.  

```
$ sudo greengrass-cli deployment create \
    --merge MyApp1=1.0.0 \
    --merge MyApp2=1.0.0 --runWith MyApp2:posixUser=ggc_user \
    --remove MyApp3 \
    --recipeDir recipes/ \ 
    --artifactDir artifacts/

Local deployment has been submitted! Deployment Id: 44d89f46-1a29-4044-ad89-5151213dfcbc
```

## membatalkan
<a name="deployment-cancel"></a>

Membatalkan penerapan yang ditentukan.

Sinopsis  

```
greengrass-cli deployment cancel
    -i <deployment-id>
```

Pendapat  
`-i`. Pengenal unik dari penerapan untuk membatalkan. ID penyebaran dikembalikan dalam output `create` perintah.

Output  
+ Tidak ada

## daftar
<a name="deployment-list"></a>

Ambil status dari 10 deployment lokal terakhir.

**Sinopsis**  

```
greengrass-cli deployment list
```

**Argumen**  
Tidak ada

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini. Tergantung pada status deployment Anda, output menunjukkan salah satu dari nilai status berikut: `IN_PROGRESS`, `SUCCEEDED`, atau `FAILED`.  

```
$ sudo greengrass-cli deployment list

44d89f46-1a29-4044-ad89-5151213dfcbc: SUCCEEDED
Created on: 6/27/23 11:05 AM
```

## status
<a name="deployment-status"></a>

Ambil status deployment tertentu.

**Sinopsis**  

```
greengrass-cli deployment status -i <deployment-id>
```

**Argumen**  
`-i`. ID deployment.

**Keluaran**  
Contoh berikut menunjukkan output yang dihasilkan ketika Anda menjalankan perintah ini. Tergantung pada status deployment Anda, output menunjukkan salah satu dari nilai status berikut: `IN_PROGRESS`, `SUCCEEDED`, atau `FAILED`.  

```
$ sudo greengrass-cli deployment status -i 44d89f46-1a29-4044-ad89-5151213dfcbc

44d89f46-1a29-4044-ad89-5151213dfcbc: FAILED
Created on: 6/27/23 11:05 AM
Detailed Status: <Detailed deployment status>
Deployment Error Stack: List of error codes
Deployment Error Types: List of error types
Failure Cause: Cause
```