

Pemberitahuan akhir dukungan: Pada 7 Oktober 2026, AWS akan mengakhiri dukungan untuk AWS Proton. Setelah 7 Oktober 2026, Anda tidak akan lagi dapat mengakses AWS Proton konsol atau AWS Proton sumber daya. Infrastruktur yang Anda gunakan akan tetap utuh. Untuk informasi selengkapnya, lihat Panduan [AWS Proton Pengakhiran Layanan dan Migrasi](https://docs.aws.amazon.com/proton/latest/userguide/proton-end-of-support.html).

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

# Bungkus file template untuk AWS Proton
<a name="ag-wrap-up"></a>

Setelah menyiapkan infrastruktur lingkungan dan layanan Anda sebagai file kode (IAc) dan file skema masing-masing, Anda harus mengaturnya dalam direktori. Anda juga harus membuat file YAML manifes. File manifes mencantumkan file IAc dalam direktori, mesin rendering, dan bahasa template yang digunakan untuk mengembangkan IAc dalam template ini.

**catatan**  
File manifes juga dapat digunakan secara independen dari bundel template, sebagai input langsung ke *komponen yang didefinisikan secara langsung*. Dalam hal ini, selalu menentukan satu file template IAC, untuk keduanya CloudFormation dan Terraform. Untuk informasi selengkapnya tentang komponen, lihat[AWS Proton komponen](ag-components.md).

File manifes harus mematuhi format dan konten yang ditunjukkan dalam contoh berikut.

**CloudFormation format file manifes:**

Dengan CloudFormation, Anda mencantumkan satu file.

```
infrastructure:
  templates:
    - file: "cloudformation.yaml"
      rendering_engine: jinja
      template_language: cloudformation
```

**Format file manifes Terraform:**

Dengan terraform, Anda dapat secara eksplisit mencantumkan satu file atau menggunakan wildcard `*` untuk mencantumkan setiap file dalam direktori.

**catatan**  
Wildcard hanya menyertakan file yang namanya diakhiri dengan`.tf`. File lain diabaikan.

```
infrastructure:
  templates:
    - file: "*"
      rendering_engine: hcl
      template_language: terraform
```

**CodeBuildformat file manifes penyediaan berbasis:**

Dengan penyediaan CodeBuild berbasis, Anda menentukan perintah shell penyediaan dan deprovisioning.

**catatan**  
Selain manifes, bundel Anda harus menyertakan file apa pun yang bergantung pada perintah Anda.

Contoh manifes berikut menggunakan penyediaan CodeBuild berbasis untuk sumber daya penyediaan (*deploy*) dan deprovision (*destroy*) menggunakan (). AWS Cloud Development Kit (AWS CDK) AWS CDK Bundel template juga harus menyertakan kode CDK.

Selama penyediaan, AWS Proton membuat file input dengan nilai untuk parameter input yang Anda tentukan dalam skema template dengan nama tersebut. `proton-input.json`

```
infrastructure:
  templates:
    - rendering_engine: codebuild
      settings:
        image: aws/codebuild/amazonlinux2-x86_64-standard:4.0
        runtimes:
          nodejs: 16
        provision:
          - npm install
          - npm run build
          - npm run cdk bootstrap
          - npm run cdk deploy -- --require-approval never --outputs-file proton-outputs.json
          - jq 'to_entries | map_values(.value) | add | to_entries | map({key:.key, valueString:.value})' < proton-outputs.json > outputs.json
          - aws proton notify-resource-deployment-status-change --resource-arn $RESOURCE_ARN --status IN_PROGRESS --outputs file://./outputs.json
        deprovision:
          - npm install
          - npm run build
          - npm run cdk destroy
        project_properties:
          VpcConfig:
            VpcId: "{{ environment.inputs.codebuild_vpc_id }}"
            Subnets: "{{ environment.inputs.codebuild_subnets }}"
            SecurityGroupIds: "{{ environment.inputs.codebuild_security_groups }}"
```

[Setelah menyiapkan direktori dan file manifes untuk paket template lingkungan atau layanan, Anda gzip direktori menjadi bola tar dan mengunggahnya ke bucket Amazon Simple Storage Service (Amazon S3) AWS Proton tempat dapat mengambilnya, atau ke repositori Git sinkronisasi template.](ag-template-sync-configs.md)

Saat Anda membuat versi minor lingkungan atau templat layanan yang Anda daftarkan AWS Proton, Anda menyediakan jalur ke lingkungan atau bola tar bundel templat layanan yang terletak di bucket S3 Anda. AWS Proton menyimpannya dengan versi minor template baru. Anda dapat memilih versi minor template baru untuk membuat atau memperbarui lingkungan atau layanan dengan AWS Proton.

## Paket template lingkungan membungkus
<a name="environment-wrap-up"></a>

Ada dua jenis bundel template lingkungan yang Anda buat AWS Proton.
+ Untuk membuat bundel template lingkungan untuk template lingkungan *standar*, atur skema, infrastruktur sebagai file kode (IAc) dan file manifes dalam direktori seperti yang ditunjukkan dalam struktur direktori bundel template lingkungan berikut.
+ Untuk membuat bundel template lingkungan untuk template lingkungan yang *dikelola pelanggan*, berikan hanya file skema dan direktori. *Jangan* sertakan direktori infrastruktur dan file. AWS Proton melempar kesalahan jika direktori infrastruktur dan file disertakan.

Untuk informasi selengkapnya, lihat [Daftarkan dan terbitkan templat](template-create.md).

CloudFormation struktur direktori bundel template lingkungan:

```
 /schema
   schema.yaml
 /infrastructure
   manifest.yaml
   cloudformation.yaml
```

Struktur direktori bundel templat lingkungan Terraform:

```
 /schema
   schema.yaml
 /infrastructure
   manifest.yaml
   environment.tf
```

## Paket template layanan membungkus
<a name="service-wrap-up"></a>

Untuk membuat paket template layanan, Anda harus mengatur file skema, infrastruktur sebagai kode (IAc), dan file manifes ke dalam direktori seperti yang ditunjukkan dalam contoh struktur direktori paket template layanan.

Jika Anda *tidak* menyertakan pipeline layanan dalam bundel template Anda, *jangan* sertakan direktori pipeline dan file dan atur `"pipelineProvisioning": "CUSTOMER_MANAGED"` saat Anda membuat template layanan yang akan dikaitkan dengan bundel template ini.

**catatan**  
Anda tidak dapat memodifikasi `pipelineProvisioning` setelah template layanan dibuat.

Untuk informasi selengkapnya, lihat [Daftarkan dan terbitkan templat](template-create.md).

CloudFormation struktur direktori bundel template layanan:

```
 /schema
   schema.yaml
 /instance_infrastructure
   manifest.yaml
   cloudformation.yaml
 /pipeline_infrastructure
   manifest.yaml
   cloudformation.yaml
```

Struktur direktori bundel template layanan Terraform:

```
 /schema
   schema.yaml
 /instance_infrastructure
   manifest.yaml
   instance.tf
 /pipeline_infrastructure
   manifest.yaml
   pipeline.tf
```