Pemecahan masalah CodePipeline - AWS CodePipeline
Kesalahan saluran pipa: Pipeline yang dikonfigurasi dengan AWS Elastic Beanstalk menampilkan pesan kesalahan: “Penerapan gagal. Peran yang diberikan tidak memiliki izin yang memadai: Layanan: AmazonElasticLoadBalancingKesalahan penerapan: Saluran pipa yang dikonfigurasi dengan tindakan AWS Elastic Beanstalk penerapan hang alih-alih gagal jika izin "" DescribeEvents tidak adaKesalahan saluran pipa: Tindakan sumber mengembalikan pesan izin yang tidak memadai: “Tidak dapat mengakses CodeCommit repository-name repositori. Pastikan bahwa peran IAM pipeline memiliki izin yang cukup untuk mengakses repositori.”Kesalahan saluran pipa: Tindakan build atau pengujian Jenkins berjalan untuk waktu yang lama dan kemudian gagal karena kurangnya kredensi atau izinKesalahan pipa: Pipeline yang dibuat di satu AWS Wilayah menggunakan bucket yang dibuat di AWS Wilayah lain mengembalikan InternalError "" dengan kode "JobFailed”Kesalahan penerapan: File ZIP yang berisi file WAR berhasil digunakanAWS Elastic Beanstalk, tetapi URL aplikasi melaporkan kesalahan 404 tidak ditemukanNama folder artefak pipa tampaknya terpotongTambahkan CodeBuild GitClone izin untuk koneksi ke Bitbucket,, GitHub Enterprise Server GitHub, atau .com GitLabMenambahkan CodeBuild GitClone izin untuk tindakan CodeCommit sumber<source artifact name>Kesalahan saluran pipa: Penerapan dengan tindakan CodeDeployTo ECS mengembalikan pesan kesalahan: “Pengecualian saat mencoba membaca file artefak definisi tugas dari:”GitHub tindakan sumber versi 1: Daftar repositori menunjukkan repositori yang berbedaGitHub aksi sumber versi 2: Tidak dapat menyelesaikan koneksi untuk repositoriKesalahan Amazon S3: peran CodePipeline layanan <ARN>mendapatkan akses S3 ditolak untuk bucket S3 < > BucketNameSaluran pipa dengan Amazon S3, Amazon ECR, CodeCommit atau sumber tidak lagi dimulai secara otomatisKesalahan koneksi saat menghubungkan ke GitHub: “Masalah terjadi, pastikan cookie diaktifkan di browser Anda” atau “Pemilik organisasi harus menginstal GitHub aplikasi”Kesalahan saat CloudFormationStackInstances tindakan CloudFormationStackSet atau tidak tersedia di WilayahSaluran pipa dengan mode eksekusi diubah menjadi mode ANTRIAN atau PARALEL gagal saat batas proses tercapaiPipelines dalam mode PARALLEL memiliki definisi pipeline yang sudah ketinggalan zaman jika diedit saat mengubah ke mode QUEUED atau SUPERSEDEDPipelines diubah dari mode PARALLEL akan menampilkan mode eksekusi sebelumnyaSaluran pipa dengan koneksi yang menggunakan pemfilteran pemicu berdasarkan jalur file mungkin tidak dimulai pada pembuatan cabangSaluran pipa dengan koneksi yang menggunakan pemfilteran pemicu berdasarkan jalur file mungkin tidak dimulai saat batas file tercapaiButuh bantuan dengan masalah yang berbeda?

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

Pemecahan masalah CodePipeline

Informasi berikut dapat membantu Anda memecahkan masalah umum di AWS CodePipeline.

Topik

Kesalahan saluran pipa: Pipeline yang dikonfigurasi dengan AWS Elastic Beanstalk menampilkan pesan kesalahan: “Penerapan gagal. Peran yang diberikan tidak memiliki izin yang memadai: Layanan: AmazonElasticLoadBalancing

Masalah: Peran layanan untuk CodePipeline tidak memiliki izin yang cukup untukAWS Elastic Beanstalk, termasuk, namun tidak terbatas pada, beberapa operasi di Elastic Load Balancing. Peran layanan untuk CodePipeline diperbarui pada 6 Agustus 2015 untuk mengatasi masalah ini. Pelanggan yang membuat peran layanan mereka sebelum tanggal ini harus mengubah pernyataan kebijakan untuk peran layanan mereka untuk menambahkan izin yang diperlukan.

Kemungkinan perbaikan: Solusi termudah adalah mengedit pernyataan kebijakan untuk peran layanan Anda seperti yang dijelaskan dalamMenambahkan izin ke peran CodePipeline layanan.

Setelah Anda menerapkan kebijakan yang telah diedit, ikuti langkah-langkah Mulai pipa secara manual untuk menjalankan ulang saluran pipa yang menggunakan Elastic Beanstalk secara manual.

Bergantung pada kebutuhan keamanan Anda, Anda juga dapat mengubah izin dengan cara lain.

Kesalahan penerapan: Saluran pipa yang dikonfigurasi dengan tindakan AWS Elastic Beanstalk penerapan hang alih-alih gagal jika izin "" DescribeEvents tidak ada

Masalah: Peran layanan untuk CodePipeline harus mencakup "elasticbeanstalk:DescribeEvents" tindakan untuk setiap jaringan pipa yang digunakanAWS Elastic Beanstalk. Tanpa izin ini, tindakan AWS Elastic Beanstalk penerapan hang tanpa gagal atau menunjukkan kesalahan. Jika tindakan ini hilang dari peran layanan Anda, maka CodePipeline tidak memiliki izin untuk menjalankan tahap penerapan pipeline AWS Elastic Beanstalk atas nama Anda.

Kemungkinan perbaikan: Tinjau peran CodePipeline layanan Anda. Jika "elasticbeanstalk:DescribeEvents" tindakan tidak ada, gunakan langkah-langkah Menambahkan izin ke peran CodePipeline layanan untuk menambahkannya menggunakan fitur Edit Policy di konsol IAM.

Setelah Anda menerapkan kebijakan yang telah diedit, ikuti langkah-langkah Mulai pipa secara manual untuk menjalankan ulang saluran pipa yang menggunakan Elastic Beanstalk secara manual.

Kesalahan saluran pipa: Tindakan sumber mengembalikan pesan izin yang tidak memadai: “Tidak dapat mengakses CodeCommit repository-name repositori. Pastikan bahwa peran IAM pipeline memiliki izin yang cukup untuk mengakses repositori.”

Masalah: Peran layanan untuk CodePipeline tidak memiliki izin yang cukup untuk CodeCommit dan kemungkinan dibuat sebelum dukungan untuk menggunakan CodeCommit repositori ditambahkan pada 18 April 2016. Pelanggan yang membuat peran layanan mereka sebelum tanggal ini harus mengubah pernyataan kebijakan untuk peran layanan mereka untuk menambahkan izin yang diperlukan.

Kemungkinan perbaikan: Tambahkan izin yang diperlukan CodeCommit untuk kebijakan peran CodePipeline layanan Anda. Untuk informasi selengkapnya, lihat Menambahkan izin ke peran CodePipeline layanan.

Kesalahan saluran pipa: Tindakan build atau pengujian Jenkins berjalan untuk waktu yang lama dan kemudian gagal karena kurangnya kredensi atau izin

Masalah: Jika server Jenkins diinstal pada instans Amazon EC2, instance mungkin tidak dibuat dengan peran instans yang memiliki izin yang diperlukan. CodePipeline Jika Anda menggunakan pengguna IAM di server Jenkins, instans lokal, atau instans Amazon EC2 yang dibuat tanpa peran IAM yang diperlukan, pengguna IAM tidak memiliki izin yang diperlukan, atau server Jenkins tidak dapat mengakses kredensyal tersebut melalui profil yang dikonfigurasi di server.

Kemungkinan perbaikan: Pastikan peran instans Amazon EC2 atau pengguna IAM dikonfigurasi dengan kebijakan terkelola atau dengan izin AWSCodePipelineCustomActionAccess yang setara. Untuk informasi selengkapnya, lihat AWS kebijakan terkelola untuk AWS CodePipeline.

Jika Anda menggunakan pengguna IAM, pastikan AWS profil yang dikonfigurasi pada instance menggunakan pengguna IAM yang dikonfigurasi dengan izin yang benar. Anda mungkin harus memberikan kredensyal pengguna IAM yang Anda konfigurasikan untuk integrasi antara Jenkins dan CodePipeline langsung ke UI Jenkins. Ini bukan praktik terbaik yang direkomendasikan. Jika Anda harus melakukannya, pastikan server Jenkins diamankan dan menggunakan HTTPS, bukan HTTP.

Kesalahan pipa: Pipeline yang dibuat di satu AWS Wilayah menggunakan bucket yang dibuat di AWS Wilayah lain mengembalikan InternalError "" dengan kode "JobFailed”

Masalah: Pengunduhan artefak yang disimpan di bucket Amazon S3 akan gagal jika pipeline dan bucket dibuat di AWS Wilayah yang berbeda.

Kemungkinan perbaikan: Pastikan bucket Amazon S3 tempat artefak Anda disimpan berada di Wilayah AWS yang sama dengan pipeline yang telah Anda buat.

Kesalahan penerapan: File ZIP yang berisi file WAR berhasil digunakanAWS Elastic Beanstalk, tetapi URL aplikasi melaporkan kesalahan 404 tidak ditemukan

Masalah: File WAR berhasil disebarkan ke AWS Elastic Beanstalk lingkungan, tetapi URL aplikasi mengembalikan kesalahan 404 Tidak Ditemukan.

Kemungkinan perbaikan: AWS Elastic Beanstalk dapat membongkar file ZIP, tetapi bukan file WAR yang terkandung dalam file ZIP. Alih-alih menentukan file WAR di buildspec.yml file Anda, tentukan folder yang berisi konten yang akan digunakan. Sebagai contoh:

version: 0.2 phases: post_build: commands: - mvn package - mv target/my-web-app ./ artifacts: files: - my-web-app/**/* discard-paths: yes

Sebagai contoh, lihat AWS Elastic BeanstalkContoh untuk CodeBuild.

Nama folder artefak pipa tampaknya terpotong

Masalah: Saat Anda melihat nama artefak pipeline CodePipeline, nama tampaknya terpotong. Ini dapat membuat nama tampak serupa atau tampaknya tidak lagi berisi seluruh nama pipeline.

Penjelasan: CodePipeline memotong nama artefak untuk memastikan bahwa jalur Amazon S3 lengkap tidak melebihi batas ukuran kebijakan saat CodePipeline menghasilkan kredensyal sementara untuk pekerja kerja.

Meskipun nama artefak tampaknya terpotong, CodePipeline peta ke ember artefak dengan cara yang tidak terpengaruh oleh artefak dengan nama terpotong. Pipa dapat berfungsi secara normal. Ini bukan masalah dengan folder atau artefak. Ada batas 100 karakter untuk nama pipeline. Meskipun nama folder artefak mungkin tampak dipersingkat, itu masih unik untuk pipeline Anda.

Tambahkan CodeBuild GitClone izin untuk koneksi ke Bitbucket,, GitHub Enterprise Server GitHub, atau .com GitLab

Saat Anda menggunakan AWS CodeStar koneksi dalam aksi sumber dan CodeBuild tindakan, ada dua cara artefak input dapat diteruskan ke build:

  • Default: Tindakan sumber menghasilkan file zip yang berisi kode yang CodeBuild diunduh.

  • Klon Git: Kode sumber dapat langsung diunduh ke lingkungan pembangunan.

    Mode klon Git memungkinkan Anda untuk berinteraksi dengan kode sumber sebagai repositori Git yang berfungsi. Untuk menggunakan mode ini, Anda harus memberikan izin CodeBuild lingkungan Anda untuk menggunakan koneksi.

Untuk menambahkan izin ke kebijakan peran CodeBuild layanan, Anda membuat kebijakan yang dikelola pelanggan yang dilampirkan ke peran layanan Anda CodeBuild . Langkah-langkah berikut membuat kebijakan di mana UseConnection izin ditentukan di action bidang, dan ARN koneksi ditentukan di Resource bidang.

Untuk menggunakan konsol untuk menambahkan UseConnection izin
  1. Untuk menemukan koneksi ARN untuk pipeline Anda, buka pipeline Anda dan klik ikon (i) pada tindakan sumber Anda. Anda menambahkan ARN koneksi ke kebijakan peran CodeBuild layanan Anda.

    Contoh koneksi ARN adalah:

    arn:aws:codestar-connections:eu-central-1:123456789123:connection/sample-1908-4932-9ecc-2ddacee15095
  2. Untuk menemukan peran CodeBuild layanan Anda, buka proyek build yang digunakan dalam pipeline Anda dan navigasikan ke tab Detail build.

  3. Pilih tautan Peran layanan. Ini membuka konsol IAM tempat Anda dapat menambahkan kebijakan baru yang memberikan akses ke koneksi Anda.

  4. Pada konsol IAM, pilih Lampirkan kebijakan, lalu pilih Buat kebijakan.

    Gunakan templat kebijakan sampel berikut. Tambahkan ARN koneksi Anda di Resource bidang, seperti yang ditunjukkan dalam contoh ini:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "codestar-connections:UseConnection", "Resource": "insert connection ARN here" } ] }

    Pada tab JSON, tempel kebijakan Anda.

  5. Pilih Tinjau kebijakan. Masukkan nama untuk kebijakan (misalnya, connection-permissions), lalu pilih Buat kebijakan.

  6. Kembali ke halaman tempat Anda melampirkan izin, menyegarkan daftar kebijakan, dan pilih kebijakan yang baru saja Anda buat. Pilih Lampirkan kebijakan.

Menambahkan CodeBuild GitClone izin untuk tindakan CodeCommit sumber

Ketika pipeline Anda memiliki aksi CodeCommit sumber, ada dua cara Anda dapat meneruskan artefak input ke build:

  • Default — Tindakan sumber menghasilkan file zip yang berisi kode yang CodeBuild diunduh.

  • Klon penuh - Kode sumber dapat langsung diunduh ke lingkungan build.

    Opsi klon Penuh memungkinkan Anda untuk berinteraksi dengan kode sumber sebagai repositori Git yang berfungsi. Untuk menggunakan mode ini, Anda harus menambahkan izin untuk CodeBuild lingkungan Anda untuk menarik dari repositori Anda.

Untuk menambahkan izin ke kebijakan peran CodeBuild layanan, Anda membuat kebijakan yang dikelola pelanggan yang dilampirkan ke peran layanan Anda CodeBuild . Langkah-langkah berikut membuat kebijakan yang menentukan codecommit:GitPull izin di action bidang.

Untuk menggunakan konsol untuk menambahkan GitPull izin
  1. Untuk menemukan peran CodeBuild layanan Anda, buka proyek build yang digunakan dalam pipeline Anda dan navigasikan ke tab Detail build.

  2. Pilih tautan Peran layanan. Ini membuka konsol IAM tempat Anda dapat menambahkan kebijakan baru yang memberikan akses ke repositori Anda.

  3. Pada konsol IAM, pilih Lampirkan kebijakan, lalu pilih Buat kebijakan.

  4. Pada tab JSON, tempel kebijakan sampel berikut.

    { "Action": [ "codecommit:GitPull" ], "Resource": "*", "Effect": "Allow" },
  5. Pilih Tinjau kebijakan. Masukkan nama untuk kebijakan (misalnya, codecommit-gitpull), lalu pilih Buat kebijakan.

  6. Kembali ke halaman tempat Anda melampirkan izin, menyegarkan daftar kebijakan, dan pilih kebijakan yang baru saja Anda buat. Pilih Lampirkan kebijakan.

<source artifact name>Kesalahan saluran pipa: Penerapan dengan tindakan CodeDeployTo ECS mengembalikan pesan kesalahan: “Pengecualian saat mencoba membaca file artefak definisi tugas dari:”

Masalah:

File definisi tugas adalah artefak yang diperlukan untuk tindakan CodePipeline penerapan ke Amazon ECS melalui CodeDeploy (tindakan). CodeDeployToECS Ukuran ZIP artefak maksimum dalam aksi CodeDeployToECS penerapan adalah 3 MB. Pesan galat berikut dikembalikan ketika file tidak ditemukan atau ukuran artefak melebihi 3 MB:

Pengecualian saat mencoba membaca file artefak definisi tugas dari: <source artifact name>

Kemungkinan perbaikan: Pastikan file definisi tugas disertakan sebagai artefak. Jika file sudah ada, pastikan ukuran terkompresi kurang dari 3 MB.

GitHub tindakan sumber versi 1: Daftar repositori menunjukkan repositori yang berbeda

Masalah:

Setelah otorisasi berhasil untuk tindakan GitHub versi 1 di CodePipeline konsol, Anda dapat memilih dari daftar GitHub repositori Anda. Jika daftar tidak menyertakan repositori yang Anda harapkan untuk dilihat, maka Anda dapat memecahkan masalah akun yang digunakan untuk otorisasi.

Kemungkinan perbaikan: Daftar repositori yang disediakan di CodePipeline konsol didasarkan pada GitHub organisasi tempat akun resmi milik. Verifikasi bahwa akun yang Anda gunakan untuk mengotorisasi GitHub adalah akun yang terkait dengan GitHub organisasi tempat repositori Anda dibuat.

GitHub aksi sumber versi 2: Tidak dapat menyelesaikan koneksi untuk repositori

Masalah:

Karena koneksi ke GitHub repositori menggunakan AWS Connector for GitHub, Anda memerlukan izin pemilik organisasi atau izin admin ke repositori untuk membuat koneksi.

Kemungkinan perbaikan: Untuk informasi tentang tingkat izin untuk GitHub repositori, lihat https://docs.github.com/en/ free-pro-team @latest /github/ -/setting-up-and-managing-organization. organizations-and-teams permission-levels-for-an

Kesalahan Amazon S3: peran CodePipeline layanan <ARN>mendapatkan akses S3 ditolak untuk bucket S3 < > BucketName

Masalah:

Saat sedang berlangsung, CodeCommit tindakan dalam CodePipeline memeriksa apakah ember artefak pipa ada. Jika tindakan tidak memiliki izin untuk memeriksa, AccessDenied kesalahan terjadi di Amazon S3 dan pesan kesalahan berikut ditampilkan di: CodePipeline

CodePipeline peran layanan “arn:aws:iam:: Accountid:role/service-role/ RoleID" mendapatkan akses S3 ditolak untuk bucket S3 "” BucketName

CloudTrail Log untuk tindakan juga mencatat AccessDenied kesalahan.

Kemungkinan perbaikan: Lakukan hal berikut:

  • Untuk kebijakan yang dilampirkan pada peran CodePipeline layanan Anda, tambahkan s3:ListBucket ke daftar tindakan dalam kebijakan Anda. Untuk petunjuk tentang cara melihat kebijakan peran layanan Anda, lihatLihat ARN pipeline dan peran layanan ARN (konsol). Edit pernyataan kebijakan untuk peran layanan Anda seperti yang dijelaskan dalamMenambahkan izin ke peran CodePipeline layanan.

  • Untuk kebijakan berbasis sumber daya yang dilampirkan pada bucket artefak Amazon S3 untuk pipeline Anda, juga disebut kebijakan bucket artefak, tambahkan pernyataan untuk mengizinkan s3:ListBucket izin digunakan oleh peran layanan Anda. CodePipeline

    Untuk menambahkan kebijakan Anda ke bucket artefak
    1. Ikuti langkah-langkah Lihat ARN pipeline dan peran layanan ARN (konsol) untuk memilih bucket artefak Anda di halaman Pengaturan pipeline dan kemudian melihatnya di konsol Amazon S3.

    2. Pilih Izin.

    3. Di bagian Kebijakan bucket, pilih Edit.

    4. Di bidang teks Kebijakan, masukkan kebijakan bucket baru, atau edit kebijakan yang ada seperti yang ditunjukkan pada contoh berikut. Kebijakan bucket adalah file JSON, jadi Anda harus memasukkan JSON yang valid.

      Contoh berikut menunjukkan pernyataan kebijakan bucket untuk bucket artefak dengan ID peran contoh untuk peran layanan adalah AROAEXAMPLEID.

      { "Effect": "Allow", "Principal": "*", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::BucketName", "Condition": { "StringLike": { "aws:userid": "AROAEXAMPLEID:*" } } }

      Contoh berikut menunjukkan pernyataan kebijakan bucket yang sama setelah izin ditambahkan.

      { "Version": "2012-10-17", "Id": "SSEAndSSLPolicy", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::codepipeline-us-east-2-1234567890", "Condition": { "StringLike": { "aws:userid": "AROAEXAMPLEID:*" } } }, { "Sid": "DenyUnEncryptedObjectUploads", "Effect": "Deny", "Principal": "*", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::codepipeline-us-east-2-1234567890/*", "Condition": { "StringNotEquals": { "s3:x-amz-server-side-encryption": "aws:kms" } } }, { "Sid": "DenyInsecureConnections", "Effect": "Deny", "Principal": "*", "Action": "s3:*", "Resource": "arn:aws:s3:::codepipeline-us-east-2-1234567890/*", "Condition": { "Bool": { "aws:SecureTransport": false } } } ] }

      Untuk informasi selengkapnya, lihat langkah-langkahnyahttps://aws.amazon.com/blogs/security/writing-iam-policies-how-to-grant-access-to-an-amazon-s3-bucket/.

    5. Pilih Simpan.

Setelah menerapkan kebijakan yang telah diedit, ikuti langkah-langkah Mulai pipa secara manual untuk menjalankan ulang pipeline secara manual.

Saluran pipa dengan Amazon S3, Amazon ECR, CodeCommit atau sumber tidak lagi dimulai secara otomatis

Masalah:

Setelah membuat perubahan pada pengaturan konfigurasi untuk tindakan yang menggunakan aturan peristiwa (EventBridgeatau CloudWatch Peristiwa) untuk deteksi perubahan, konsol mungkin tidak mendeteksi perubahan di mana pengidentifikasi pemicu sumber serupa dan memiliki karakter awal yang identik. Karena aturan acara baru tidak dibuat oleh konsol, pipeline tidak lagi dimulai secara otomatis.

Contoh perubahan kecil di akhir nama parameter untuk CodeCommit akan mengubah nama CodeCommit cabang Anda MyTestBranch-1 menjadiMyTestBranch-2. Karena perubahan ada di akhir nama cabang, aturan acara untuk tindakan sumber mungkin tidak memperbarui atau membuat aturan untuk pengaturan sumber baru.

Ini berlaku untuk tindakan sumber yang menggunakan peristiwa CWE untuk deteksi perubahan sebagai berikut:

Tindakan sumber Parameter/pengidentifikasi pemicu (konsol)
Amazon ECR

Nama repositori

Tag gambar

Amazon S3

Bucket

Kunci objek S3

CodeCommit

Nama repositori

Nama cabang

Kemungkinan perbaikan:

Lakukan salah satu dari cara berikut:

  • Ubah pengaturan konfigurasi CodeCommit /S3/ECR sehingga perubahan dilakukan pada bagian awal dari nilai parameter.

    Contoh: Ubah nama cabang Anda release-branch menjadi2nd-release-branch. Hindari perubahan di akhir nama, sepertirelease-branch-2.

  • Ubah pengaturan konfigurasi CodeCommit /S3/ECR untuk setiap pipeline.

    Contoh: Ubah nama cabang Anda myRepo/myBranch menjadimyDeployRepo/myDeployBranch. Hindari perubahan di akhir nama, sepertimyRepo/myBranch2.

  • Alih-alih konsol, gunakan CLI atau AWS CloudFormation untuk membuat dan memperbarui aturan peristiwa deteksi perubahan Anda. Untuk petunjuk tentang membuat aturan acara untuk tindakan sumber S3, lihatTindakan sumber Amazon S3 dan dengan EventBridge AWS CloudTrail. Untuk petunjuk cara membuat aturan acara untuk tindakan Amazon ECR, lihat Tindakan sumber dan sumber daya Amazon ECR EventBridge . Untuk petunjuk tentang membuat aturan acara untuk CodeCommit tindakan, lihat CodeCommit tindakan sumber dan EventBridge.

Setelah Anda mengedit konfigurasi tindakan di konsol, terima sumber daya deteksi perubahan yang diperbarui yang dibuat oleh konsol.

Kesalahan koneksi saat menghubungkan ke GitHub: “Masalah terjadi, pastikan cookie diaktifkan di browser Anda” atau “Pemilik organisasi harus menginstal GitHub aplikasi”

Masalah:

Untuk membuat koneksi untuk tindakan GitHub sumber di CodePipeline, Anda harus menjadi pemilik GitHub organisasi. Untuk repositori yang tidak berada di bawah organisasi, Anda harus menjadi pemilik repositori. Ketika koneksi dibuat oleh orang lain selain pemilik organisasi, permintaan dibuat untuk pemilik organisasi, dan salah satu kesalahan berikut akan ditampilkan:

Masalah terjadi, pastikan cookie diaktifkan di browser Anda

ATAU

Pemilik organisasi harus menginstal GitHub aplikasi

Kemungkinan perbaikan: Untuk repositori dalam GitHub organisasi, pemilik organisasi harus membuat koneksi ke repositori. GitHub Untuk repositori yang tidak berada di bawah organisasi, Anda harus menjadi pemilik repositori.

Kesalahan saat CloudFormationStackInstances tindakan CloudFormationStackSet atau tidak tersedia di Wilayah

Masalah: Kehadiran CodePipeline di Wilayah tidak berarti bahwa semua tindakan tersedia di Wilayah tersebut. Misalnya, ketika pipeline menjalankan CloudFormationStackSet tindakan di Wilayah di mana tindakan tidak tersedia, seperti Afrika (Cape Town), kesalahan berikut akan ditampilkan:

InvalidActionDeclarationException: ActionType (Category: 'Deploy', Provider: 'CloudFormationStackSet', Owner: 'AWS, Version: '1') in action 'Deploy' is not available in region 'AF_SOUTH_1'

Kemungkinan perbaikan: Referensikan catatan berikut untuk menggunakan tindakan di Wilayah tempat tindakan tersedia.

catatan

Tindakan CloudFormationStackSet dan CloudFormationStackInstances tindakan tidak tersedia di Asia Pasifik (Hong Kong), Eropa (Zurich), Eropa (Milan), Afrika (Cape Town), dan Timur Tengah (Bahrain). Untuk mereferensikan tindakan lain yang tersedia, lihatIntegrasi produk dan layanan dengan CodePipeline.

Untuk informasi selengkapnya tentang tindakan, lihat AWS CloudFormation StackSets.

Saluran pipa dengan mode eksekusi diubah menjadi mode ANTRIAN atau PARALEL gagal saat batas proses tercapai

Masalah: Jumlah maksimum eksekusi bersamaan untuk pipeline dalam mode ANTRIAN adalah 50 eksekusi. Ketika batas ini tercapai, pipeline gagal tanpa pesan status.

Kemungkinan perbaikan: Saat mengedit definisi pipeline untuk mode eksekusi, buat pengeditan secara terpisah dari tindakan edit lainnya.

Untuk informasi selengkapnya tentang mode eksekusi ANTRIAN atau PARALLEL, lihat. CodePipeline konsep

Pipelines dalam mode PARALLEL memiliki definisi pipeline yang sudah ketinggalan zaman jika diedit saat mengubah ke mode QUEUED atau SUPERSEDED

Masalah: Untuk pipeline dalam mode parallel, saat mengedit mode eksekusi pipeline ke QUEUED atau SUPERSEDED, definisi pipeline untuk mode PARALLEL tidak akan diperbarui. Definisi pipeline yang diperbarui saat memperbarui mode PARALLEL tidak digunakan dalam mode SUPERSEDED atau ANTRIAN

Kemungkinan perbaikan: Untuk pipeline dalam mode parallel, saat mengedit mode eksekusi pipeline ke QUEUED atau SUPERSEDED, hindari memperbarui definisi pipeline pada saat yang bersamaan.

Untuk informasi selengkapnya tentang mode eksekusi ANTRIAN atau PARALLEL, lihat. CodePipeline konsep

Pipelines diubah dari mode PARALLEL akan menampilkan mode eksekusi sebelumnya

Masalah: Untuk saluran pipa dalam mode PARALLEL, saat mengedit mode eksekusi pipa ke ANTRIAN atau DIGANTI, status pipa tidak akan menampilkan status yang diperbarui sebagai PARALLEL. Jika pipeline berubah dari PARALLEL ke QUEUED atau SUPERSEDED, status untuk pipeline dalam mode SUPERSEDED atau QUEUED akan menjadi status terakhir yang diketahui di salah satu mode tersebut. Jika pipeline tidak pernah dijalankan dalam mode itu sebelumnya, maka statusnya akan kosong.

Kemungkinan perbaikan: Untuk pipeline dalam mode parallel, saat mengedit mode eksekusi pipeline ke QUEUED atau SUPERSEDED, perhatikan bahwa tampilan mode eksekusi tidak akan menampilkan status PARALLEL.

Untuk informasi selengkapnya tentang mode eksekusi ANTRIAN atau PARALLEL, lihat. CodePipeline konsep

Saluran pipa dengan koneksi yang menggunakan pemfilteran pemicu berdasarkan jalur file mungkin tidak dimulai pada pembuatan cabang

Deskripsi: Untuk pipeline dengan tindakan sumber yang menggunakan koneksi, seperti aksi BitBucket sumber, Anda dapat mengatur pemicu dengan konfigurasi Git yang memungkinkan Anda memfilter menurut jalur file untuk memulai pipeline. Dalam kasus tertentu, untuk saluran pipa dengan pemicu yang difilter pada jalur file, pipeline mungkin tidak dimulai ketika cabang dengan filter jalur file pertama kali dibuat, karena ini tidak memungkinkan CodeConnections koneksi untuk menyelesaikan file yang berubah. Ketika konfigurasi Git untuk pemicu diatur untuk memfilter pada jalur file, pipeline tidak akan dimulai ketika cabang dengan filter baru saja dibuat di repositori sumber, Untuk informasi lebih lanjut tentang pemfilteran pada jalur file, lihat. Filter pemicu pada permintaan push atau pull kode

Hasil: Misalnya, pipeline CodePipeline yang memiliki filter jalur file pada cabang “B” tidak akan dipicu saat cabang “B” dibuat. Jika tidak ada filter jalur file, pipeline akan tetap dimulai.

Saluran pipa dengan koneksi yang menggunakan pemfilteran pemicu berdasarkan jalur file mungkin tidak dimulai saat batas file tercapai

Deskripsi: Untuk pipeline dengan tindakan sumber yang menggunakan koneksi, seperti aksi BitBucket sumber, Anda dapat mengatur pemicu dengan konfigurasi Git yang memungkinkan Anda memfilter menurut jalur file untuk memulai pipeline. CodePipelinemengambil hingga 100 file pertama; oleh karena itu, ketika konfigurasi Git untuk pemicu diatur untuk memfilter pada jalur file, pipeline mungkin tidak dimulai jika ada lebih dari 100 file, Untuk informasi lebih lanjut tentang pemfilteran pada jalur file, lihat. Filter pemicu pada permintaan push atau pull kode

Hasil: Misalnya, jika diff berisi 150 file, CodePipeline lihat 100 file pertama (tanpa urutan tertentu) untuk memeriksa filter jalur file yang ditentukan. Jika file yang cocok dengan filter jalur file tidak termasuk di antara 100 file yang diambil oleh CodePipeline, pipeline tidak akan dipanggil

Butuh bantuan dengan masalah yang berbeda?

Coba sumber daya lain ini: