Buat konfigurasi sinkronisasi templat - AWS Proton

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

Buat konfigurasi sinkronisasi templat

Pelajari cara membuat konfigurasi sinkronisasi templat dengan AWS Proton.

Buat prasyarat konfigurasi sinkronisasi templat:
Tautan repositori terdiri dari yang berikut:
  • CodeConnections Koneksi yang memberikan AWS Proton izin untuk mengakses repositori Anda dan berlangganan notifikasinya.

  • Peran terkait layanan. Saat Anda menautkan repositori Anda, peran terkait layanan dibuat untuk Anda.

Sebelum Anda membuat konfigurasi sinkronisasi template pertama Anda, dorong bundel template ke repositori Anda seperti yang ditunjukkan dalam tata letak direktori berikut.

/templates/ # subdirectory (optional) /templates/my-env-template/ # template name /templates/my-env-template/v1/ # template version /templates/my-env-template/v1/infrastructure/ # template bundle /templates/my-env-template/v1/schema/

Setelah Anda membuat konfigurasi sinkronisasi templat pertama Anda, versi templat baru akan dibuat secara otomatis saat Anda mendorong komit yang menambahkan bundel templat yang diperbarui di bawah versi baru (misalnya, di bawah/my-env-template/v2/).

/templates/ # subdirectory (optional) /templates/my-env-template/ # template name /templates/my-env-template/v1/ # template version /templates/my-env-template/v1/infrastructure/ # template bundle /templates/my-env-template/v1/schema/ /templates/my-env-template/v2/ /templates/my-env-template/v2/infrastructure/ /templates/my-env-template/v2/schema/

Anda dapat menyertakan versi bundel template baru untuk satu atau beberapa templat yang dikonfigurasi sinkronisasi dalam satu komit. AWS Proton membuat versi template baru untuk setiap versi bundel template baru yang disertakan dalam komit.

Setelah membuat konfigurasi sinkronisasi templat, Anda masih dapat membuat versi template baru secara manual di konsol atau AWS CLI dengan mengunggah bundel templat dari bucket S3. Sinkronisasi template hanya berfungsi dalam satu arah: dari repositori Anda ke. AWS Proton Versi template yang dibuat secara manual tidak disinkronkan.

Setelah Anda menyiapkan konfigurasi sinkronisasi templat, AWS Proton dengarkan perubahan pada repositori Anda. Setiap kali perubahan didorong, ia mencari direktori yang memiliki nama yang sama dengan template Anda. Kemudian terlihat di dalam direktori itu untuk direktori apa pun yang terlihat seperti versi utama. AWS Proton mendaftarkan bundel template ke versi utama template yang sesuai. Versi baru selalu di DRAFT negara bagian. Anda dapat mempublikasikan versi baru dengan konsol atau AWS CLI.

Misalnya, Anda memiliki template yang disebut my-env-template dikonfigurasi untuk my-repo/templates disinkronkan dari cabang main dengan tata letak berikut.

/code /code/service.go README.md /templates/ /templates/my-env-template/ /templates/my-env-template/v1/ /templates/my-env-template/v1/infrastructure/ /templates/my-env-template/v1/schema/ /templates/my-env-template/v2/ /templates/my-env-template/v2/infrastructure/ /templates/my-env-template/v2/schema/

AWS Proton menyinkronkan isi dari /templates/my-env-template/v1/ to my-env-template:1 dan isi dari /templates/my-env-template/v2/ tomy-env-template:2. Jika mereka belum ada, itu menciptakan versi utama ini.

AWS Proton menemukan direktori pertama yang cocok dengan nama template. Anda dapat membatasi AWS Proton pencarian direktori dengan menentukan subdirectoryPath kapan Anda membuat atau mengedit konfigurasi sinkronisasi template. Misalnya, Anda dapat menentukan /production-templates/ untuksubdirectoryPath.

Anda dapat membuat konfigurasi sinkronisasi template menggunakan konsol atau CLI.

AWS Management Console
Buat konfigurasi sinkronisasi templat dan templat menggunakan konsol.
  1. Di AWS Proton konsol, pilih Template lingkungan.

  2. Pilih Buat template lingkungan.

  3. Di halaman Buat templat lingkungan, di bagian Opsi templat, pilih Buat templat untuk menyediakan lingkungan baru.

  4. Di bagian Sumber bundel Template, pilih Sinkronkan templat dari Git.

  5. Di bagian repositori kode sumber:

    1. Untuk Repositori, pilih repositori tertaut yang berisi bundel template Anda.

    2. Untuk Branch, pilih cabang repositori untuk disinkronkan.

    3. (Opsional) Untuk direktori bundel Template, masukkan nama direktori untuk mencakup pencarian bundel template Anda.

  6. Di bagian Detail Template.

    1. Masukkan nama Template.

    2. (Opsional) Masukkan nama tampilan Template.

    3. (Opsional) Masukkan deskripsi Template untuk template lingkungan.

  7. (Opsional) Centang kotak centang untuk Sesuaikan pengaturan enkripsi (lanjutan) di bagian Pengaturan enkripsi untuk menyediakan kunci enkripsi Anda sendiri.

  8. (Opsional) Di bagian Tag, pilih Tambahkan tag baru dan masukkan kunci dan nilai untuk membuat tag terkelola pelanggan.

  9. Pilih template Create Environment.

    Anda sekarang berada di halaman baru yang menampilkan status dan detail untuk template lingkungan baru Anda. Rincian ini mencakup daftar tag yang AWS dikelola dan dikelola pelanggan. AWS Proton secara otomatis menghasilkan tag AWS terkelola untuk Anda saat Anda membuat AWS Proton sumber daya. Untuk informasi selengkapnya, lihat AWS Protonsumber daya daya daya daya daya daya.

  10. Di halaman detail templat, pilih tab Sinkronisasi untuk melihat data detail konfigurasi sinkronisasi templat.

  11. Pilih tab Versi templat untuk melihat versi templat dengan detail status.

  12. Status status template lingkungan baru dimulai di status Draft. Anda dan orang lain dengan proton:CreateEnvironment izin dapat melihat dan mengaksesnya. Ikuti langkah selanjutnya untuk membuat template tersedia untuk orang lain.

  13. Di bagian Versi Template, pilih tombol radio di sebelah kiri versi minor template yang baru saja Anda buat (1.0). Sebagai alternatif, Anda dapat memilih Publikasikan di peringatan info dan lewati langkah berikutnya.

  14. Di bagian Versi templat, pilih Publikasikan.

  15. Status template berubah menjadi Diterbitkan. Ini adalah versi terbaru dan Direkomendasikan dari template.

  16. Di panel navigasi, pilih Template lingkungan untuk melihat daftar templat dan detail lingkungan Anda.

Prosedur untuk membuat templat layanan dan konfigurasi sinkronisasi templat serupa.

AWS CLI
Buat konfigurasi sinkronisasi templat dan templat menggunakan AWS CLI.
  1. Buat template. Dalam contoh ini, template lingkungan dibuat.

    Jalankan perintah berikut.

    $ aws proton create-environment-template \ --name "env-template"

    Responsnya adalah sebagai berikut.

    { "environmentTemplate": { "arn": "arn:aws:proton:us-east-1:123456789012:environment-template/env-template", "createdAt": "2021-11-07T23:32:43.045000+00:00", "displayName": "env-template", "lastModifiedAt": "2021-11-07T23:32:43.045000+00:00", "name": "env-template", "status": "DRAFT", "templateName": "env-template" } }
  2. Buat konfigurasi sinkronisasi template Anda AWS CLI dengan memberikan yang berikut:
    • Template yang ingin Anda sinkronkan. Setelah Anda membuat konfigurasi sinkronisasi templat, Anda masih dapat membuat versi baru darinya secara manual di konsol atau dengan AWS CLI.

    • Nama template.

    • Jenis template.

    • Repositori tertaut yang ingin Anda sinkronkan.

    • Penyedia repositori tertaut.

    • Cabang tempat bundel templat berada.

    • (Opsional) Jalur ke direktori yang berisi bundel template Anda. Secara default, AWS Proton cari direktori pertama yang cocok dengan nama template Anda.

    Jalankan perintah berikut.

    $ aws proton create-template-sync-config \ --template-name "env-template" \ --template-type "ENVIRONMENT" \ --repository-name "myrepos/templates" \ --repository-provider "GITHUB" \ --branch "main" \ --subdirectory "env-template/"

    Responsnya adalah sebagai berikut.

    { "templateSyncConfigDetails": { "branch": "main", "repositoryName": "myrepos/templates", "repositoryProvider": "GITHUB", "subdirectory": "templates", "templateName": "env-template", "templateType": "ENVIRONMENT" } }
  3. Untuk mempublikasikan versi template Anda, lihatMendaftar dan mempublikasikan template.

Menyinkronkan templat layanan

Contoh sebelumnya menunjukkan bagaimana Anda dapat menyinkronkan templat lingkungan. Template layanan serupa. Untuk menyinkronkan templat layanan, Anda menambahkan file tambahan bernama .template-registration.yaml ke setiap direktori versi utama dalam bundel templat Anda. File ini berisi detail tambahan yang AWS Proton diperlukan saat membuat versi template layanan untuk Anda mengikuti komit. Saat Anda secara eksplisit membuat versi template layanan menggunakan AWS Proton konsol atau API, Anda memberikan detail ini sebagai input, dan file ini menggantikan input ini untuk sinkronisasi templat.

./templates/ # subdirectory (optional) /templates/my-svc-template/ # service template name /templates/my-svc-template/v1/ # service template version /templates/my-svc-template/v1/.template-registration.yaml # service template version properties /templates/my-svc-template/v1/instance_infrastructure/ # template bundle /templates/my-svc-template/v1/schema/

.template-registration.yamlFile berisi rincian berikut:

  • Lingkungan yang kompatibel [wajib] - Lingkungan berdasarkan templat lingkungan ini dan versi utama kompatibel dengan layanan berdasarkan versi templat layanan ini.

  • Sumber komponen yang didukung [opsional] - Komponen yang menggunakan sumber ini kompatibel dengan layanan berdasarkan versi templat layanan ini. Jika tidak ditentukan, komponen tidak dapat dilampirkan ke layanan ini. Untuk informasi selengkapnya tentang komponen, lihatAWS Proton komponen.

Sintaks YAMB file adalah sebagai berikut:

compatible_environments: - env-templ-name:major-version - ... supported_component_sources: - DIRECTLY_DEFINED

Tentukan satu atau lebih template lingkungan/kombinasi versi utama. Menentukan supported_component_sources adalah opsional, dan satu-satunya nilai yang didukung adalahDIRECTLY_DEFINED.

contoh .template-registration.yaml

Dalam contoh ini, versi template layanan kompatibel dengan versi utama 1 dan 2 dari template my-env-template lingkungan. Ini juga kompatibel dengan versi utama 1 dan 3 dari template another-env-template lingkungan. File tidak ditentukansupported_component_sources, sehingga komponen tidak dapat dilampirkan ke layanan berdasarkan versi templat layanan ini.

compatible_environments: - my-env-template:1 - my-env-template:2 - another-env-template:1 - another-env-template:3
catatan

Sebelumnya, AWS Proton didefinisikan file yang berbeda,.compatible-envs, untuk menentukan lingkungan yang kompatibel. AWS Proton masih mendukung file itu dan formatnya untuk kompatibilitas mundur. Kami tidak menyarankan menggunakannya lagi, karena tidak dapat diperluas dan tidak dapat mendukung fitur yang lebih baru seperti komponen.