CodeCommit - AWS CodePipeline

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

CodeCommit

Memulai pipa ketika commit baru dibuat pada repositori dan cabang CodeCommit yang dikonfigurasi.

Jika Anda menggunakan konsol untuk membuat atau mengedit pipeline, CodePipeline membuat aturan CodeCommit CloudWatch Events yang memulai pipeline Anda saat terjadi perubahan di repositori.

Anda harus telah membuat repositori CodeCommit sebelum Anda menghubungkan pipa melalui tindakan CodeCommit.

Setelah perubahan kode terdeteksi, Anda memiliki opsi berikut untuk meneruskan kode ke tindakan selanjutnya:

  • Default— Mengkonfigurasi tindakan sumber CodeCommit untuk mengeluarkan file ZIP dengan salinan dangkal komit Anda.

  • Kloning penuh— Mengkonfigurasi tindakan sumber untuk menampilkan referensi URL Git ke repositori untuk tindakan selanjutnya.

    Saat ini, referensi URL Git hanya dapat digunakan oleh tindakan CodeBuild hilir untuk mengkloning repo dan metadata Git terkait. Mencoba untuk meneruskan referensi URL Git ke tindakan non-codeBuild menghasilkan kesalahan.

Tipe tindakan

  • Kategori:Source

  • Pemilik:AWS

  • Penyedia:CodeCommit

  • Versi:1

Parameter konfigurasi

repositoryName

Diperlukan: Ya

Nama repositori dimana perubahan sumber harus dideteksi.

BranchName

Diperlukan: Ya

Nama cabang di mana perubahan sumber harus dideteksi.

PollForSourceChanges

Diperlukan: Tidak

PollForSourceChangesmengontrol apakah CodePipeline polls repositori CodeCommit untuk perubahan sumber. Kami merekomendasikan agar Anda menggunakan CloudWatch Events untuk mendeteksi perubahan sumber. Untuk informasi selengkapnya tentang mengonfigurasi Acara CloudWatch, lihatPerbarui jaringan pipa untuk peristiwa push (sumber CodeCommit) (CLI)atauPerbarui jaringan pipa untuk peristiwa push (sumber CodeCommit) (AWS CloudFormationtemplat).

penting

Jika ingin mengonfigurasi aturan CloudWatch Events, Anda harus menetapkanPollForSourceChangeskepadafalseuntuk menghindari eksekusi pipa duplikat.

Nilai yang valid untuk parameter ini:

  • true: Jika diatur, CodePipeline jajak pendapat repositori Anda untuk perubahan sumber.

    catatan

    Jika Anda menghilangkanPollForSourceChanges, CodePipeline default untuk polling repositori Anda untuk perubahan sumber. Ini adalah perilaku sama seperti jikaPollForSourceChangesdisertakan dan diatur ketrue.

  • false: Jika diatur, CodePipeline tidak memilih repositori Anda untuk perubahan sumber. Gunakan pengaturan ini jika Anda ingin mengonfigurasi aturan CloudWatch Events untuk mendeteksi perubahan sumber.

OutputArtifactFormat

Diperlukan: Tidak

Output format artefak. Nilai dapat berupaCODEBUILD_CLONE_REFatauCODE_ZIP. Jika tidak ditentukan, default adalahCODE_ZIP.

penting

ParameterCODEBUILD_CLONE_REFpilihan hanya dapat digunakan oleh CodeBuild tindakan hilir.

Jika Anda memilih opsi ini, Anda perlu menambahkancodecommit:GitPullizin untuk peran layanan CodeBuild Anda seperti yang ditunjukkan diTambahkan izin CodeBuild GitClone untuk tindakan sumber CodeCommit. Anda juga perlu menambahkancodecommit:GetRepositoryizin untuk peran layanan CodePipeline Anda seperti yang ditunjukkan dalamTambahkan izin keCodePipelineperan layanan. Untuk tutorial yang menunjukkan cara menggunakanKloning penuhpilihan, lihatTutorial: Gunakan clone penuh dengan sumber pipa CodeCommit.

artefak

  • Jumlah artefak: 0

  • Deskripsi: Artefak masukan tidak berlaku untuk jenis tindakan ini.

artefak

  • Jumlah artefak: 1

  • Deskripsi: Artefak keluaran dari tindakan ini adalah file ZIP yang berisi isi repositori dan cabang yang dikonfigurasi pada komit yang ditentukan sebagai revisi sumber untuk eksekusi pipa. Artefak yang dihasilkan dari repositori adalah artefak keluaran untuk aksi CodeCommit. ID komit kode sumber ditampilkan dalam CodePipeline sebagai revisi sumber untuk eksekusi pipa dipicu.

Variabel output

Ketika dikonfigurasi, tindakan ini menghasilkan variabel yang dapat direferensikan oleh konfigurasi aksi aksi hilir dalam pipa. Tindakan ini menghasilkan variabel yang dapat dilihat sebagai variabel output, bahkan jika tindakan tidak memiliki namespace. Anda mengkonfigurasi tindakan dengan namespace untuk membuat variabel tersebut tersedia untuk konfigurasi tindakan hilir.

Untuk informasi selengkapnya, lihat Variabel.

CommitId

CodeCommit komit ID yang memicu eksekusi pipa. Commit ID adalah SHA penuh dari komit.

CommitMessage

Pesan deskripsi, jika ada, terkait dengan komit yang memicu eksekusi pipa.

repositoryName

Nama repositori CodeCommit dimana komit yang memicu pipa dibuat.

BranchName

Nama cabang untuk repositori CodeCommit tempat perubahan sumber dibuat.

AuthorDate

Tanggal ketika komit ditulis, dalam format timestamp.

Untuk informasi selengkapnya tentang perbedaan antara penulis dan komite di Git, lihatMelihat Riwayat Komitdi Pro Git oleh Scott Chacon dan Ben Straub.

CommitterDate

Tanggal ketika komit dilakukan, dalam format timestamp.

Untuk informasi selengkapnya tentang perbedaan antara penulis dan komite di Git, lihatMelihat Riwayat Komitdi Pro Git oleh Scott Chacon dan Ben Straub.

Contoh konfigurasi tindakan

Contoh untuk format artefak keluaran default

YAML
Actions: - OutputArtifacts: - Name: Artifact_MyWebsiteStack InputArtifacts: [] Name: source Configuration: RepositoryName: MyWebsite BranchName: main PollForSourceChanges: 'false' RunOrder: 1 ActionTypeId: Version: '1' Provider: CodeCommit Category: Source Owner: AWS Name: Source
JSON
{ "Actions": [ { "OutputArtifacts": [ { "Name": "Artifact_MyWebsiteStack" } ], "InputArtifacts": [], "Name": "source", "Configuration": { "RepositoryName": "MyWebsite", "BranchName": "main", "PollForSourceChanges": "false" }, "RunOrder": 1, "ActionTypeId": { "Version": "1", "Provider": "CodeCommit", "Category": "Source", "Owner": "AWS" } } ], "Name": "Source" },

Contoh untuk format artefak keluaran tiruan penuh

YAML
name: Source actionTypeId: category: Source owner: AWS provider: CodeCommit version: '1' runOrder: 1 configuration: BranchName: main OutputArtifactFormat: CODEBUILD_CLONE_REF PollForSourceChanges: 'false' RepositoryName: MyWebsite outputArtifacts: - name: SourceArtifact inputArtifacts: [] region: us-west-2 namespace: SourceVariables
JSON
{ "name": "Source", "actionTypeId": { "category": "Source", "owner": "AWS", "provider": "CodeCommit", "version": "1" }, "runOrder": 1, "configuration": { "BranchName": "main", "OutputArtifactFormat": "CODEBUILD_CLONE_REF", "PollForSourceChanges": "false", "RepositoryName": "MyWebsite" }, "outputArtifacts": [ { "name": "SourceArtifact" } ], "inputArtifacts": [], "region": "us-west-2", "namespace": "SourceVariables" }

Sumber daya terkait berikut dapat membantu Anda saat bekerja dengan tindakan ini.

  • Tutorial: Buat pipa sederhana (repositori CodeCommit)- Tutorial ini menyediakan file spesifikasi aplikasi sampel dan aplikasi CodeDeploy sampel dan grup penyebaran. Gunakan tutorial ini untuk membuat pipeline dengan sumber CodeCommit yang menyebarkan ke instans Amazon EC2.