Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memecahkan masalah dengan alur kerja
Lihat bagian berikut untuk memecahkan masalah yang terkait dengan alur kerja di Amazon. CodeCatalyst Untuk informasi lebih lanjut tentang alur kerja, lihat Bangun, uji, dan terapkan dengan alur kerja.
Topik
- Bagaimana cara memperbaiki pesan “Alur kerja tidak aktif”?
- Bagaimana cara memperbaiki “Definisi alur kerja memiliki n kesalahan” kesalahan?
- Bagaimana cara memperbaiki kesalahan “Tidak dapat menemukan kredensil” dan “ExpiredToken”?
- Bagaimana cara memperbaiki kesalahan “Tidak dapat terhubung ke server”?
- Mengapa CodeDeploy bidang hilang dari editor visual?
- Bagaimana cara memperbaiki kesalahan IAM kemampuan?
- Bagaimana cara memperbaiki kesalahan “npm install”?
- Mengapa beberapa alur kerja memiliki nama yang sama?
- Dapatkah saya menyimpan file definisi alur kerja saya di folder lain?
- Bagaimana cara menambahkan tindakan secara berurutan ke alur kerja saya?
- Mengapa alur kerja saya berhasil memvalidasi tetapi gagal saat runtime?
- Penemuan otomatis tidak menemukan laporan apa pun untuk tindakan saya
- Tindakan saya gagal pada laporan yang ditemukan secara otomatis setelah saya mengonfigurasi kriteria keberhasilan
- Penemuan otomatis menghasilkan laporan yang tidak saya inginkan
- Penemuan otomatis menghasilkan banyak laporan kecil untuk satu kerangka pengujian
- Alur kerja yang tercantum di bawah CI/CD tidak cocok dengan yang ada di repositori sumber
- Saya tidak dapat membuat atau memperbarui alur kerja
Bagaimana cara memperbaiki pesan “Alur kerja tidak aktif”?
Masalah: Di CodeCatalyst konsol, di bawah CI/CD, Alur kerja, alur kerja Anda muncul dengan pesan berikut:
Workflow is inactive.
Pesan ini menunjukkan bahwa file definisi alur kerja berisi pemicu yang tidak berlaku untuk cabang yang Anda gunakan saat ini. Misalnya, file definisi alur kerja Anda mungkin berisi PUSH
pemicu yang mereferensikan main
cabang Anda, tetapi Anda berada di cabang fitur. Karena perubahan yang Anda buat di cabang fitur tidak berlakumain
, dan tidak akan memulai alur kerja berjalanmain
, CodeCatalyst nonaktifkan alur kerja di cabang dan tandai sebagai. Inactive
Kemungkinan perbaikan:
Jika Anda ingin memulai alur kerja di cabang fitur Anda, Anda dapat melakukan hal berikut:
-
Di cabang fitur Anda, dalam file definisi alur kerja, hapus
Branches
properti dariTriggers
bagian sehingga terlihat seperti ini:Triggers: - Type: PUSH
Konfigurasi ini menyebabkan pemicu diaktifkan saat push ke cabang mana pun, termasuk cabang fitur Anda. Jika pemicu diaktifkan, CodeCatalyst akan memulai alur kerja berjalan menggunakan file definisi alur kerja dan file sumber di cabang apa pun yang Anda dorong.
-
Di cabang fitur Anda, dalam file definisi alur kerja, hapus
Triggers
bagian dan jalankan alur kerja secara manual. -
Di cabang fitur Anda, dalam file definisi alur kerja, ubah
PUSH
bagian tersebut sehingga mereferensikan cabang fitur Anda daripada cabang lain (sepertimain
, misalnya).
penting
Berhati-hatilah untuk tidak melakukan perubahan ini jika Anda tidak bermaksud menggabungkannya untuk kembali ke main
cabang Anda.
Untuk informasi selengkapnya tentang mengedit file definisi alur kerja, lihatMembuat alur kerja.
Untuk informasi lebih lanjut tentang menggunakan pemicu, lihat Memulai alur kerja berjalan secara otomatis menggunakan pemicu.
Bagaimana cara memperbaiki “Definisi alur kerja memiliki n
kesalahan” kesalahan?
Masalah: Anda melihat salah satu pesan kesalahan berikut:
Kesalahan 1:
Di halaman CI/CD, alur kerja, di bawah nama alur kerja Anda, Anda melihat:
Workflow definition has
n
errors
Kesalahan 2:
Saat mengedit alur kerja, Anda memilih tombol Validasi dan pesan berikut muncul di bagian atas konsol: CodeCatalyst
The workflow definition has errors. Fix the errors and choose Validate to verify
your changes.
Kesalahan 3:
Setelah menavigasi ke halaman detail alur kerja Anda, Anda melihat kesalahan berikut di bidang definisi Alur Kerja:
n
errors
Kemungkinan perbaikan:
-
Pilih CI/CD, pilih Alur kerja, dan pilih nama alur kerja yang memiliki kesalahan. Di bidang Definisi alur kerja di dekat bagian atas, pilih tautan ke kesalahan. Detail tentang kesalahan muncul di bagian bawah halaman. Ikuti tips pemecahan masalah dalam kesalahan untuk memperbaiki masalah.
-
Pastikan bahwa file definisi alur kerja adalah YAML file.
-
Pastikan YAML properti dalam file definisi alur kerja bersarang di tingkat yang tepat. Untuk melihat bagaimana properti harus disarangkan dalam file definisi alur kerja, lihatDefinisi alur kerja YAML, atau lihat dokumentasi tindakan Anda, yang ditautkan ke from. Menambahkan tindakan ke alur kerja
-
Pastikan tanda bintang (
*
) dan karakter khusus lainnya lolos dengan benar. Untuk menghindarinya, tambahkan tanda kutip tunggal atau ganda. Sebagai contoh:Outputs: Artifacts: - Name: myartifact Files: -
"**/*"
Untuk informasi selengkapnya tentang karakter khusus dalam file definisi alur kerja, lihatPedoman dan konvensi sintaks.
-
Pastikan YAML properti dalam file definisi alur kerja menggunakan kapitalisasi yang tepat. Untuk informasi lebih lanjut tentang aturan casing, lihatPedoman dan konvensi sintaks. Untuk menentukan casing yang benar dari setiap properti, lihatDefinisi alur kerja YAML, atau lihat dokumentasi tindakan Anda, yang terkait dengan dariMenambahkan tindakan ke alur kerja.
-
Pastikan
SchemaVersion
properti hadir dan diatur ke versi yang benar dalam file definisi alur kerja. Untuk informasi selengkapnya, lihat SchemaVersion. -
Pastikan bahwa
Triggers
bagian dalam file definisi alur kerja mencakup semua properti yang diperlukan. Untuk menentukan properti yang diperlukan, pilih pemicu di editor visual dan cari bidang yang tidak memiliki informasi, atau lihat dokumentasi referensi pemicu diTriggers. -
Pastikan bahwa
DependsOn
properti dalam file definisi alur kerja dikonfigurasi dengan benar dan tidak memperkenalkan dependensi melingkar. Untuk informasi selengkapnya, lihat Tindakan pengurutan. -
Pastikan bahwa
Actions
bagian dalam file definisi alur kerja menyertakan setidaknya satu tindakan. Untuk informasi selengkapnya, lihat Tindakan. -
Pastikan bahwa setiap tindakan mencakup semua properti yang diperlukan. Untuk menentukan properti yang diperlukan, pilih tindakan di editor visual dan cari bidang yang tidak memiliki informasi, atau lihat dokumentasi tindakan Anda, yang ditautkan ke dariMenambahkan tindakan ke alur kerja.
-
Pastikan bahwa semua artefak input memiliki artefak keluaran yang sesuai. Untuk informasi selengkapnya, lihat Mendefinisikan artefak keluaran.
-
Pastikan bahwa variabel yang didefinisikan dalam satu tindakan diekspor sehingga mereka dapat digunakan dalam tindakan lain. Untuk informasi selengkapnya, lihat Mengekspor variabel sehingga tindakan lain dapat menggunakannya.
Bagaimana cara memperbaiki kesalahan “Tidak dapat menemukan kredensil” dan “ExpiredToken”?
Masalah: Saat bekerjaTutorial: Menyebarkan aplikasi ke Amazon EKS, Anda melihat salah satu atau kedua pesan kesalahan berikut di jendela terminal mesin pengembangan Anda:
Unable to locate credentials. You can configure credentials by running "aws
configure".
ExpiredToken: The security token included in the request is expired
Kemungkinan perbaikan:
Kesalahan ini menunjukkan bahwa kredensil yang Anda gunakan untuk mengakses AWS layanan telah kedaluwarsa. Dalam hal ini, jangan jalankan aws configure
perintah. Sebagai gantinya, gunakan petunjuk berikut untuk menyegarkan kunci AWS akses dan token sesi Anda.
Untuk menyegarkan kunci AWS akses dan token sesi
-
Pastikan Anda memiliki portal AWS aksesURL, nama pengguna, dan kata sandi untuk pengguna yang Anda gunakan untuk melengkapi EKS tutorial Amazon (
codecatalyst-eks-user
). Anda seharusnya telah mengkonfigurasi item ini ketika Anda menyelesaikan Langkah 1: Siapkan mesin pengembangan Anda tutorial.catatan
Jika Anda tidak memiliki informasi ini, buka halaman
codecatalyst-eks-user
detail di Pusat IAM Identitas, pilih Atur ulang kata sandi, Hasilkan kata sandi satu kali [...] , dan Reset kata sandi lagi untuk menampilkan informasi di layar. -
Lakukan salah satu hal berikut ini:
-
Rekatkan portal AWS akses URL ke bilah alamat browser Anda.
Atau
-
Segarkan halaman portal AWS akses jika sudah dimuat.
-
-
Masuk dengan nama
codecatalyst-eks-user
pengguna dan kata sandi, jika Anda belum masuk. -
Pilih Akun AWS, lalu pilih nama yang Akun AWS Anda tetapkan
codecatalyst-eks-user
pengguna dan set izin. -
Di samping nama set izin (
codecatalyst-eks-permission-set
), pilih Baris perintah atau akses terprogram. -
Salin perintah di tengah halaman. Mereka terlihat mirip dengan yang berikut:
export AWS_ACCESS_KEY_ID="AKIAIOSFODNN7EXAMPLE" export AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" export AWS_SESSION_TOKEN="
session-token
"... dimana
session-token
adalah string acak panjang. -
Tempelkan perintah ke prompt terminal Anda di mesin pengembangan Anda dan tekan Enter.
Kunci baru dan token sesi dimuat.
Anda sekarang telah menyegarkan kredensialnya.
kubectl
Perintah AWS CLIeksctl
,, dan sekarang harus berfungsi.
Bagaimana cara memperbaiki kesalahan “Tidak dapat terhubung ke server”?
Masalah: Saat mengerjakan tutorial yang dijelaskan diTutorial: Menyebarkan aplikasi ke Amazon EKS, Anda melihat pesan kesalahan yang mirip dengan yang berikut di jendela terminal mesin pengembangan Anda:
Unable to connect to the server: dial tcp: lookup
long-string
.gr7.us-west-2.eks.amazonaws.com on
1.2.3.4:5
: no such host
Kemungkinan perbaikan:
Kesalahan ini biasanya menunjukkan bahwa kredensil yang digunakan kubectl
utilitas untuk terhubung ke EKS cluster Amazon Anda telah kedaluwarsa. Untuk mengatasi masalah ini, segarkan kredensi dengan memasukkan perintah berikut di prompt terminal:
aws eks update-kubeconfig --name
codecatalyst-eks-cluster
--regionus-west-2
Di mana:
-
codecatalyst-eks-cluster
diganti dengan nama EKS cluster Amazon Anda. -
us-west-2
diganti dengan AWS Wilayah tempat cluster Anda digunakan.
Mengapa CodeDeploy bidang hilang dari editor visual?
Masalah: Anda menggunakan ECS tindakan Deploy to Amazon, dan Anda tidak melihat CodeDeploy bidang seperti CodeDeploy AppSpecdi editor visual alur kerja. Masalah ini dapat terjadi karena ECS layanan Amazon yang Anda tentukan di bidang Layanan tidak dikonfigurasi untuk melakukan penerapan biru/hijau.
Kemungkinan perbaikan:
-
Pilih ECS layanan Amazon yang berbeda di tab Konfigurasi ECS tindakan Deploy to Amazon. Untuk informasi selengkapnya, lihat Menerapkan ke Amazon ECS dengan alur kerja.
-
Konfigurasikan ECS layanan Amazon yang dipilih untuk melakukan penerapan biru/hijau. Untuk informasi selengkapnya tentang mengonfigurasi penerapan biru/hijau, lihat Penerapan Biru/Hijau dengan CodeDeploy di Panduan Pengembang Layanan Kontainer Elastis Amazon.
Bagaimana cara memperbaiki kesalahan IAM kemampuan?
Masalah: Anda menggunakan tindakan AWS CloudFormation tumpukan Deploy, dan Anda melihat ##[error] requires capabilities:
[
di log tindakan AWS CloudFormation
tumpukan Deploy Anda.capability-name
]
Kemungkinan perbaikan: Selesaikan prosedur berikut untuk menambahkan kemampuan ke file definisi alur kerja. Untuk informasi selengkapnya tentang IAM kemampuan, lihat Mengakui IAM sumber daya dalam AWS CloudFormation templat di IAMPanduan Pengguna.
Bagaimana cara memperbaiki kesalahan “npm install”?
Masalah: Tindakan AWS CDK
penerapan atau tindakan AWS CDK bootstrap Anda gagal dengan npm install
kesalahan. Kesalahan ini dapat terjadi karena Anda menyimpan dependensi AWS CDK aplikasi di registri private node package manager (npm) yang tidak dapat diakses oleh tindakan.
Kemungkinan perbaikan: Gunakan petunjuk berikut untuk memperbarui cdk.json
file AWS CDK aplikasi Anda dengan registri tambahan dan informasi otentikasi.
Sebelum Anda mulai
-
Buat rahasia untuk informasi otentikasi Anda. Anda akan mereferensikan rahasia ini dalam
cdk.json
file alih-alih memberikan padanan cleartext. Untuk membuat rahasia:Buka CodeCatalyst konsol di https://codecatalyst.aws/
. -
Pilih proyek Anda.
-
Di panel navigasi, pilih CI/CD, lalu pilih Rahasia.
-
Buat dua rahasia dengan properti berikut:
Rahasia pertama Rahasia kedua Nama:
npmUsername
Nilai:
npm-username
, di mananpm-username
adalah nama pengguna yang digunakan untuk mengautentikasi ke registri npm pribadi Anda.(Opsional) Deskripsi:
The username used to authenticate to the private npm registry.
Nama:
npmAuthToken
Nilai:
npm-auth-token
, di mananpm-auth-token
adalah token akses yang digunakan untuk mengautentikasi ke registri npm pribadi Anda. Untuk informasi selengkapnya tentang token akses npm, lihat Tentang token aksesdi dokumentasi npm. (Opsional) Deskripsi:
The access token used to authenticate to the private npm registry.
Untuk informasi lebih lanjut tentang rahasia, lihatMenyembunyikan data menggunakan rahasia.
-
Tambahkan rahasia sebagai variabel lingkungan ke AWS CDK tindakan Anda. Tindakan akan menggantikan variabel dengan nilai nyata saat dijalankan. Untuk menambahkan rahasia:
Di panel navigasi, pilih CI/CD, lalu pilih Alur kerja.
-
Pilih nama alur kerja Anda. Anda dapat memfilter berdasarkan repositori sumber atau nama cabang tempat alur kerja ditentukan, atau memfilter berdasarkan nama atau status alur kerja.
-
Pilih Edit.
-
Pilih Visual.
-
Dalam diagram alur kerja, pilih AWS CDK tindakan Anda.
-
Pilih tab Input.
-
Tambahkan dua variabel dengan properti berikut:
Variabel pertama Variabel kedua Nama:
NPMUSER
Nilai:
${Secrets.npmUsername}
Nama:
NPMTOKEN
Nilai:
${Secrets.npmAuthToken}
Anda sekarang memiliki dua variabel yang berisi referensi ke rahasia.
YAMLKode file definisi alur kerja Anda akan terlihat mirip dengan yang berikut ini:
catatan
Contoh kode berikut berasal dari tindakan AWS CDK bootstrap; tindakan AWS CDK penerapan akan terlihat serupa.
Name: CDK_Bootstrap_Action SchemaVersion: 1.0 Actions: CDKBootstrapAction: Identifier: aws/cdk-bootstrap@v2 Inputs: Variables: - Name: NPMUSER Value: ${Secrets.npmUsername} - Name: NPMTOKEN Value: ${Secrets.npmAuthToken} Sources: - WorkflowSource Environment: Name: Dev2 Connections: - Name: account-connection Role: codecatalystAdmin Configuration: Parameters: Region: "us-east-2"
Anda sekarang siap untuk menggunakan
NPMTOKEN
variabelNPMUSER
dan dalamcdk.json
file Anda. Pergi ke prosedur selanjutnya.
Untuk memperbarui file cdk.json Anda
-
Ubah ke direktori root AWS CDK proyek Anda, dan buka
cdk.json
file. -
Temukan
"app":
properti, dan ubah untuk menyertakan kode yang ditunjukkanred italics
:catatan
Contoh kode berikut adalah dari sebuah TypeScript proyek. Jika Anda menggunakan JavaScript proyek, kode akan terlihat serupa meskipun tidak identik.
{ "app":
"npm set registry=https://your-registry/folder/CDK-package/ --userconfig .npmrc && npm set //your-registry/folder/CDK-package/:always-auth=true --userconfig .npmrc && npm set //your-registry/folder/CDK-package/:_authToken=\"${NPMUSER}\":\"${NPMTOKEN}\" && npm install && npx ts-node --prefer-ts-exts bin/hello-cdk.ts|js",
"watch": { "include": [ "**" ], "exclude": [ "README.md", "cdk*.json", "**/*.d.ts", "**/*.js", "tsconfig.json", "package*.json", ... -
Dalam kode yang disorot di
red italics
, ganti:-
your-registry/folder/CDK-package/
dengan jalur ke dependensi AWS CDK proyek Anda di registri pribadi Anda. -
hello-cdk.ts|.js
dengan nama file entrypoint Anda. Ini mungkin file.ts
(TypeScript) atau.js
(JavaScript) tergantung pada bahasa yang Anda gunakan.catatan
Tindakan tersebut akan menggantikan
NPMUSER
andNPMTOKEN
variabel dengan nama pengguna npm dan token akses yang Anda tentukan di Rahasia.
-
-
Simpan
cdk.json
file Anda. -
Jalankan kembali tindakan secara manual untuk melihat apakah perubahan memperbaiki kesalahan. Untuk informasi selengkapnya tentang menjalankan tindakan secara manual, lihatMemulai alur kerja berjalan secara manual.
Mengapa beberapa alur kerja memiliki nama yang sama?
Alur kerja disimpan per cabang per repositori. Dua alur kerja yang berbeda dapat memiliki nama yang sama jika ada di cabang yang berbeda. Di halaman Alur Kerja, Anda dapat membedakan alur kerja dengan nama yang sama dengan melihat nama cabang. Untuk informasi selengkapnya, lihat Mengatur kode sumber Anda bekerja dengan cabang di Amazon CodeCatalyst.
Dapatkah saya menyimpan file definisi alur kerja saya di folder lain?
Tidak, Anda harus menyimpan semua file definisi alur kerja di .codecatalyst/workflows
folder, atau di subfolder folder itu. Jika Anda menggunakan repo mono dengan beberapa proyek logis, letakkan semua file definisi alur kerja Anda di .codecatalyst/workflows
folder atau salah satu subfoldernya, lalu gunakan bidang File yang diubah (editor visual) atau FilesChanged
properti (YAMLeditor) di dalam pemicu untuk memicu alur kerja secara otomatis di jalur proyek yang ditentukan. Untuk informasi selengkapnya, silakan lihat Menambahkan pemicu ke alur kerja dan Contoh: Pemicu dengan dorongan, cabang, dan file.
Bagaimana cara menambahkan tindakan secara berurutan ke alur kerja saya?
Secara default, ketika Anda menambahkan tindakan ke alur kerja Anda, itu tidak akan memiliki dependensi dan akan berjalan secara paralel dengan tindakan lain.
Jika Anda ingin mengatur tindakan secara berurutan, Anda dapat mengatur ketergantungan pada tindakan lain dengan mengatur DependsOn
bidang. Anda juga dapat mengonfigurasi tindakan untuk mengkonsumsi artefak atau variabel yang merupakan output dari tindakan lain. Untuk informasi selengkapnya, lihat Tindakan pengurutan.
Mengapa alur kerja saya berhasil memvalidasi tetapi gagal saat runtime?
Jika Anda memvalidasi alur kerja Anda menggunakan Validate
tombol, tetapi alur kerja Anda tetap gagal, itu mungkin karena batasan dalam validator.
Kesalahan apa pun yang mengacu pada CodeCatalyst sumber daya seperti rahasia, lingkungan, atau armada dalam konfigurasi alur kerja tidak akan didaftarkan selama komit. Jika referensi yang tidak valid digunakan, kesalahan hanya akan diidentifikasi ketika alur kerja dijalankan. Demikian pula, jika ada kesalahan dalam konfigurasi tindakan Anda seperti kehilangan bidang wajib atau kesalahan ketik dalam atribut tindakan, mereka akan diidentifikasi hanya ketika alur kerja dijalankan. Untuk informasi selengkapnya, lihat Membuat alur kerja.
Penemuan otomatis tidak menemukan laporan apa pun untuk tindakan saya
Masalah: Saya mengonfigurasi penemuan otomatis untuk tindakan yang menjalankan pengujian, tetapi tidak ada laporan yang ditemukan oleh CodeCatalyst.
Kemungkinan perbaikan: Ini mungkin disebabkan oleh sejumlah masalah. Coba satu atau lebih solusi berikut:
-
Pastikan bahwa alat yang digunakan untuk menjalankan tes menghasilkan output dalam salah satu format yang CodeCatalyst mengerti. Misalnya, jika Anda ingin mengizinkan
pytest
CodeCatalyst untuk menemukan laporan pengujian dan cakupan kode, sertakan argumen berikut:--junitxml=test_results.xml --cov-report xml:test_coverage.xml
Untuk informasi selengkapnya, lihat Jenis laporan kualitas.
-
Pastikan ekstensi file untuk output konsisten dengan format yang dipilih. Misalnya, saat mengonfigurasi
pytest
untuk menghasilkan hasil dalamJUnitXML
format, periksa apakah ekstensi file tersebut..xml
Untuk informasi selengkapnya, lihat Jenis laporan kualitas. -
Pastikan bahwa
IncludePaths
dikonfigurasi untuk menyertakan seluruh sistem file (**/*
) kecuali Anda sengaja mengecualikan folder tertentu. Demikian pula, pastikan bahwaExcludePaths
tidak mengecualikan direktori di mana Anda mengharapkan laporan Anda berada. -
Jika Anda mengonfigurasi laporan secara manual untuk menggunakan file keluaran tertentu, laporan tersebut akan dikecualikan dari penemuan otomatis. Untuk informasi selengkapnya, lihat YAMLContoh laporan kualitas.
-
Penemuan otomatis mungkin tidak menemukan laporan karena tindakan gagal sebelum keluaran apa pun dihasilkan. Misalnya, build mungkin gagal sebelum pengujian unit apa pun dijalankan.
Tindakan saya gagal pada laporan yang ditemukan secara otomatis setelah saya mengonfigurasi kriteria keberhasilan
Masalah: Saat saya mengaktifkan penemuan otomatis dan mengonfigurasi kriteria keberhasilan, beberapa laporan tidak memenuhi kriteria keberhasilan dan akibatnya tindakan gagal.
Kemungkinan perbaikan: Untuk mengatasi ini, coba satu atau beberapa solusi berikut:
-
Ubah
IncludePaths
atauExcludePaths
untuk mengecualikan laporan yang tidak Anda minati. -
Perbarui kriteria keberhasilan untuk memungkinkan semua laporan lulus. Misalnya, jika dua laporan ditemukan dengan satu memiliki cakupan garis 50% dan satu lagi 70%, sesuaikan cakupan garis minimum menjadi 50%. Untuk informasi selengkapnya, silakan lihat Kriteria keberhasilan
-
Ubah laporan yang gagal menjadi laporan yang dikonfigurasi secara manual. Ini memungkinkan Anda mengonfigurasi kriteria keberhasilan yang berbeda untuk laporan spesifik tersebut. Untuk informasi selengkapnya, lihat Mengkonfigurasi kriteria keberhasilan untuk laporan.
Penemuan otomatis menghasilkan laporan yang tidak saya inginkan
Masalah: Ketika saya mengaktifkan penemuan otomatis, itu menghasilkan laporan yang tidak saya inginkan. Misalnya, CodeCatalyst menghasilkan laporan cakupan kode untuk file yang disertakan dalam dependensi aplikasi saya yang disimpan di. node_modules
Kemungkinan perbaikan: Anda dapat menyesuaikan ExcludePaths
konfigurasi untuk mengecualikan file yang tidak diinginkan. Misalnya, untuk mengecualikannode_modules
, tambahkannode_modules/**/*
. Untuk informasi selengkapnya, lihat Sertakan/kecualikan jalur.
Penemuan otomatis menghasilkan banyak laporan kecil untuk satu kerangka pengujian
Masalah: Ketika saya menggunakan kerangka kerja pelaporan pengujian dan cakupan kode tertentu, saya perhatikan bahwa penemuan otomatis menghasilkan sejumlah besar laporan. Misalnya, saat menggunakan Plugin Maven Surefire
Kemungkinan perbaikan: Kerangka kerja Anda mungkin dapat menggabungkan output ke dalam satu file. Misalnya, jika Anda menggunakan Plugin Maven Surefire, Anda dapat menggunakan npx junit-merge
untuk menggabungkan file secara manual. Ekspresi lengkapnya mungkin terlihat seperti ini:
mvn test; cd
test-package-path
/surefire-reports && npx junit-merge -d ./ && rm *Test.xml
Alur kerja yang tercantum di bawah CI/CD tidak cocok dengan yang ada di repositori sumber
Masalah: Alur kerja yang ditampilkan pada CI/CD, halaman Alur kerja tidak cocok dengan yang ada di ~/.codecatalyst/workflows/ folder di repositori sumber Anda. Anda mungkin melihat ketidakcocokan berikut:
-
Alur kerja muncul di halaman Alur Kerja, tetapi file definisi alur kerja yang sesuai tidak ada di repositori sumber Anda.
-
File definisi alur kerja ada di repositori sumber Anda, tetapi alur kerja yang sesuai tidak muncul di halaman Alur Kerja.
-
Alur kerja ada di repositori sumber dan halaman Alur Kerja, tetapi keduanya berbeda.
Masalah ini dapat terjadi jika halaman Alur Kerja belum sempat menyegarkan, atau jika kuota alur kerja terlampaui.
Kemungkinan perbaikan:
-
Tunggu. Anda biasanya harus menunggu dua atau tiga detik setelah komit ke sumber sebelum Anda melihat perubahan pada halaman Alur Kerja.
-
Jika Anda telah melampaui kuota alur kerja, lakukan salah satu hal berikut:
catatan
Untuk menentukan apakah kuota alur kerja terlampaui, tinjauKuota untuk alur kerja di CodeCatalyst, dan periksa silang kuota yang didokumentasikan terhadap alur kerja di repositori sumber Anda atau di halaman Alur Kerja. Tidak ada pesan kesalahan yang menunjukkan bahwa kuota telah terlampaui, jadi Anda harus menyelidikinya sendiri.
-
Jika Anda telah melampaui jumlah maksimum alur kerja per kuota ruang, hapus beberapa alur kerja, lalu lakukan komit pengujian terhadap file definisi alur kerja. Contoh komit pengujian mungkin menambahkan spasi ke file.
-
Jika Anda telah melampaui kuota ukuran file definisi alur kerja maksimum, ubah file definisi alur kerja untuk mengurangi panjangnya.
-
Jika Anda telah melampaui jumlah maksimum file alur kerja yang diproses dalam kuota peristiwa sumber tunggal, lakukan beberapa komit pengujian. Ubah kurang dari jumlah maksimum alur kerja di setiap komit.
-
Saya tidak dapat membuat atau memperbarui alur kerja
Masalah: Saya ingin membuat atau memperbarui alur kerja, tetapi saya melihat kesalahan ketika saya mencoba melakukan perubahan.
Kemungkinan perbaikan: Bergantung pada peran Anda dalam proyek atau ruang, Anda mungkin tidak memiliki izin untuk mendorong kode ke repositori sumber dalam proyek. YAMLFile untuk alur kerja disimpan dalam repositori. Untuk informasi selengkapnya, lihat File definisi alur kerja. Peran administrator Space, peran administrator Proyek, dan peran Kontributor semuanya memiliki izin untuk melakukan dan mendorong kode ke repositori dalam proyek.
Jika Anda memiliki peran Kontributor tetapi tidak dapat membuat atau melakukan perubahan YAML pada alur kerja di cabang tertentu, mungkin ada aturan cabang yang dikonfigurasi untuk cabang tersebut yang mencegah pengguna dengan peran tersebut mendorong kode ke cabang tertentu. Coba buat alur kerja di cabang yang berbeda, atau komit perubahan Anda ke cabang yang berbeda. Untuk informasi selengkapnya, lihat Mengelola tindakan yang diizinkan untuk cabang dengan aturan cabang.