

Amazon CodeCatalyst tidak lagi terbuka untuk pelanggan baru. Pelanggan yang sudah ada dapat terus menggunakan layanan ini seperti biasa. Lihat informasi yang lebih lengkap di [Cara bermigrasi dari CodeCatalyst](migration.md).

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
<a name="troubleshooting-workflows"></a>

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 kerjaBangun, uji, dan terapkan dengan alur kerja](workflow.md).

**Topics**
+ [Bagaimana cara memperbaiki pesan “Alur kerja tidak aktif”?](#troubleshooting-workflows-inactive)
+ [Bagaimana cara memperbaiki kesalahan “Definisi alur kerja memiliki *n* kesalahan”?](#troubleshooting-workflows-asterisks)
+ [Bagaimana cara memperbaiki kesalahan “Tidak dapat menemukan kredensil” dan “ExpiredToken”?](#troubleshooting-workflows-auth-errors-eks)
+ [Bagaimana cara memperbaiki kesalahan “Tidak dapat terhubung ke server”?](#troubleshooting-workflows-unable-connect-eks)
+ [Mengapa CodeDeploy bidang hilang dari editor visual?](#troubleshooting-workflows-codedeploy)
+ [Bagaimana cara memperbaiki kesalahan kemampuan IAM?](#troubleshooting-workflows-capabilities)
+ [Bagaimana cara memperbaiki kesalahan “npm install”?](#troubleshooting-workflows-npm)
+ [Mengapa beberapa alur kerja memiliki nama yang sama?](#troubleshooting-workflows-name)
+ [Dapatkah saya menyimpan file definisi alur kerja saya di folder lain?](#troubleshooting-workflows-folder)
+ [Bagaimana cara menambahkan tindakan secara berurutan ke alur kerja saya?](#troubleshooting-workflows-visual)
+ [Mengapa alur kerja saya berhasil memvalidasi tetapi gagal saat runtime?](#troubleshooting-workflows-validation)
+ [Penemuan otomatis tidak menemukan laporan apa pun untuk tindakan saya](#troubleshooting-reports-auto-discovery)
+ [Tindakan saya gagal pada laporan yang ditemukan secara otomatis setelah saya mengonfigurasi kriteria keberhasilan](#troubleshooting-success-auto-discovery)
+ [Penemuan otomatis menghasilkan laporan yang tidak saya inginkan](#troubleshooting-unwanted-auto-discovery)
+ [Penemuan otomatis menghasilkan banyak laporan kecil untuk satu kerangka pengujian](#troubleshooting-reports-combined)
+ [Alur kerja yang tercantum di bawah CI/CD tidak cocok dengan yang ada di repositori sumber](#troubleshooting-workflow-source)
+ [Saya tidak dapat membuat atau memperbarui alur kerja](#troubleshooting-workflows-branchrules)

## Bagaimana cara memperbaiki pesan “Alur kerja tidak aktif”?
<a name="troubleshooting-workflows-inactive"></a>

**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 berlaku`main`, dan tidak akan memulai alur kerja berjalan`main`, 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 dari `Triggers` 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 (seperti`main`, 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, lihat[Membuat alur kerja](workflows-create-workflow.md).

Untuk informasi lebih lanjut tentang menggunakan pemicu, lihat [Memulai alur kerja berjalan secara otomatis menggunakan pemicu](workflows-add-trigger.md).

## Bagaimana cara memperbaiki kesalahan “Definisi alur kerja memiliki *n* kesalahan”?
<a name="troubleshooting-workflows-asterisks"></a>

**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 file YAMG.
+ Pastikan properti YAMB dalam file definisi alur kerja bersarang pada tingkat yang tepat. Untuk melihat bagaimana properti harus disarangkan dalam file definisi alur kerja, lihat[Alur kerja definisi YAMAL](workflow-reference.md), atau lihat dokumentasi tindakan Anda, yang ditautkan ke from. [Menambahkan tindakan ke alur kerja](workflows-add-action.md) 
+ Pastikan tanda bintang (`*`) dan karakter khusus lainnya lolos dengan benar. Untuk menghindarinya, tambahkan tanda kutip tunggal atau ganda. Contoh:

  ```
  Outputs:      
    Artifacts:
      - Name: myartifact
        Files:
          - "**/*"
  ```

  Untuk informasi selengkapnya tentang karakter khusus dalam file definisi alur kerja, lihat[Pedoman dan konvensi sintaks](workflow-reference.md#workflow.terms.syntax.conv).
+ Pastikan properti YAMB dalam file definisi alur kerja menggunakan kapitalisasi yang tepat. Untuk informasi lebih lanjut tentang aturan casing, lihat[Pedoman dan konvensi sintaks](workflow-reference.md#workflow.terms.syntax.conv). Untuk menentukan casing yang benar dari setiap properti, lihat[Alur kerja definisi YAMAL](workflow-reference.md), atau lihat dokumentasi tindakan Anda, yang terkait dengan dari[Menambahkan tindakan ke alur kerja](workflows-add-action.md).
+ Pastikan bahwa `SchemaVersion` properti hadir dan diatur ke versi yang benar dalam file definisi alur kerja. Untuk informasi selengkapnya, lihat [SchemaVersion](workflow-reference.md#workflow.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](workflow.md#workflow.editors) dan cari bidang yang tidak memiliki informasi, atau lihat dokumentasi referensi pemicu di[Triggers](workflow-reference.md#triggers-reference).
+ Pastikan bahwa `DependsOn` properti dalam file definisi alur kerja dikonfigurasi dengan benar dan tidak memperkenalkan dependensi melingkar. Untuk informasi selengkapnya, lihat [Tindakan pengurutan](workflows-depends-on.md).
+ Pastikan bahwa `Actions` bagian dalam file definisi alur kerja menyertakan setidaknya satu tindakan. Untuk informasi selengkapnya, lihat [Tindakan](workflow-reference.md#actions-reference). 
+ Pastikan bahwa setiap tindakan mencakup semua properti yang diperlukan. Untuk menentukan properti yang diperlukan, pilih tindakan di [editor visual](workflow.md#workflow.editors) dan cari bidang yang tidak memiliki informasi, atau lihat dokumentasi tindakan Anda, yang ditautkan ke dari[Menambahkan tindakan ke alur kerja](workflows-add-action.md).
+ Pastikan bahwa semua artefak input memiliki artefak keluaran yang sesuai. Untuk informasi selengkapnya, lihat [Mendefinisikan artefak keluaran](workflows-working-artifacts-output.md).
+ 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](workflows-working-with-variables-export-input.md).

## Bagaimana cara memperbaiki kesalahan “Tidak dapat menemukan kredensil” dan “ExpiredToken”?
<a name="troubleshooting-workflows-auth-errors-eks"></a>

**Masalah**: Saat bekerja[Tutorial: Menyebarkan aplikasi ke Amazon EKS](deploy-tut-eks.md), 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**

1. Pastikan Anda memiliki URL portal AWS akses, nama pengguna, dan kata sandi untuk pengguna yang Anda gunakan untuk melengkapi tutorial Amazon EKS (`codecatalyst-eks-user`). Anda seharusnya telah mengkonfigurasi item ini ketika Anda menyelesaikan [Langkah 1: Siapkan mesin pengembangan Anda](deploy-tut-eks.md#deploy-tut-eks-dev-env-create) tutorial.
**catatan**  
Jika Anda tidak memiliki informasi ini, buka halaman `codecatalyst-eks-user` detail di Pusat Identitas IAM, pilih **Atur ulang kata sandi**, **Hasilkan kata sandi satu kali [**...] , dan **Atur ulang kata sandi** lagi untuk menampilkan informasi di layar.

1. Lakukan salah satu tindakan berikut:
   + Rekatkan URL portal AWS akses ke bilah alamat browser Anda.

     Atau
   + Segarkan halaman portal AWS akses jika sudah dimuat.

1. Masuk dengan nama `codecatalyst-eks-user` pengguna dan kata sandi, jika Anda belum masuk.

1. Pilih **Akun AWS**, lalu pilih nama yang Akun AWS Anda tetapkan `codecatalyst-eks-user` pengguna dan set izin.

1. Di samping nama set izin (`codecatalyst-eks-permission-set`), pilih **Baris perintah atau akses terprogram**.

1. 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"
   ```

   ... di *session-token* mana string acak panjang.

1. 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 CLI`eksctl`,, dan sekarang harus berfungsi. 

## Bagaimana cara memperbaiki kesalahan “Tidak dapat terhubung ke server”?
<a name="troubleshooting-workflows-unable-connect-eks"></a>

**Masalah**: Saat mengerjakan tutorial yang dijelaskan di[Tutorial: Menyebarkan aplikasi ke Amazon EKS](deploy-tut-eks.md), Anda melihat pesan kesalahan yang mirip dengan yang berikut ini 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 kredenal yang digunakan `kubectl` utilitas untuk terhubung ke kluster Amazon EKS Anda telah kedaluwarsa. Untuk mengatasi masalah ini, segarkan kredensi dengan memasukkan perintah berikut di prompt terminal:

```
aws eks update-kubeconfig --name codecatalyst-eks-cluster --region us-west-2
```

Di mana:
+ *codecatalyst-eks-cluster*diganti dengan nama cluster Amazon EKS Anda.
+ *us-west-2*diganti dengan AWS Wilayah tempat cluster Anda digunakan.

## Mengapa CodeDeploy bidang hilang dari editor visual?
<a name="troubleshooting-workflows-codedeploy"></a>

**Masalah**: Anda menggunakan tindakan [Deploy to Amazon ECS](deploy-action-ecs.md), dan Anda tidak melihat CodeDeploy bidang seperti **CodeDeploy AppSpec**di editor visual alur kerja. Masalah ini dapat terjadi karena layanan Amazon ECS yang Anda tentukan di bidang **Layanan** tidak dikonfigurasi untuk melakukan penerapan biru/hijau.

**Kemungkinan perbaikan**: 
+ **Pilih layanan Amazon ECS yang berbeda pada tab **Konfigurasi aksi Deploy to Amazon ECS**.** Untuk informasi selengkapnya, lihat [Menyebarkan ke Amazon ECS dengan alur kerja](deploy-action-ecs.md).
+ Konfigurasikan layanan Amazon ECS yang dipilih untuk melakukan blue/green penerapan. Untuk informasi selengkapnya tentang mengonfigurasi blue/green penerapan, lihat penerapan [Biru/Hijau dengan CodeDeploy di Panduan Pengembang Layanan](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-bluegreen.html) *Amazon* Elastic Container.

## Bagaimana cara memperbaiki kesalahan kemampuan IAM?
<a name="troubleshooting-workflows-capabilities"></a>

**Masalah**: Anda menggunakan tindakan [CloudFormation tumpukan Deploy](deploy-action-cfn.md), dan Anda melihat `##[error] requires capabilities: [capability-name]` di log tindakan ** CloudFormation tumpukan Deploy** Anda.

**Kemungkinan perbaikan**: Selesaikan prosedur berikut untuk menambahkan kemampuan ke file definisi alur kerja. *Untuk informasi selengkapnya tentang kemampuan IAM, lihat [Mengakui sumber daya IAM dalam CloudFormation templat di Panduan Pengguna](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html#using-iam-capabilities) IAM.*

------
#### [ Visual ]

**Untuk menambahkan kemampuan IAM menggunakan editor visual**

1. Buka CodeCatalyst konsol di [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Pilih proyek Anda.

1. **Di panel navigasi, pilih **CI/CD, lalu pilih Alur** kerja.**

1. 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.

1. Pilih **Edit**.

1. Pilih **Visual**.

1. Dalam diagram alur kerja, pilih tindakan ** CloudFormation tumpukan Deploy** Anda.

1. Pilih tab **Konfigurasi**.

1. Di bagian bawah, pilih **Advanced - opsional**.

1. Dalam daftar drop-down **Kemampuan**, pilih kotak centang di samping kemampuan yang disebutkan dalam pesan kesalahan. Jika kemampuan tidak tersedia dalam daftar, gunakan editor YAMB untuk menambahkannya.

1. (Opsional) Pilih **Validasi** untuk memvalidasi kode YAMB alur kerja sebelum melakukan.

1. Pilih **Komit**, masukkan pesan komit, dan pilih **Komit** lagi.

1. Jika alur kerja baru tidak dimulai secara otomatis, jalankan alur kerja secara manual untuk melihat apakah perubahan memperbaiki kesalahan. Untuk informasi selengkapnya tentang menjalankan alur kerja secara manual, lihat[Memulai proses alur kerja secara manual](workflows-manually-start.md).

------
#### [ YAML ]

**Untuk menambahkan kemampuan IAM menggunakan editor YAMG**

1. Buka CodeCatalyst konsol di [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Pilih proyek Anda.

1. **Di panel navigasi, pilih **CI/CD, lalu pilih Alur** kerja.**

1. 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.

1. Pilih **Edit**.

1. Pilih **YAMG.**

1. Dalam aksi ** CloudFormation tumpukan Deploy**, tambahkan `capabilities` properti, seperti ini:

   ```
   DeployCloudFormationStack:
     Configuration:
       capabilities: capability-name
   ```

   Ganti *capability-name* dengan nama kemampuan IAM yang ditunjukkan dalam pesan kesalahan. Gunakan koma dan tidak ada spasi untuk mencantumkan beberapa kemampuan. Untuk informasi lebih lanjut, lihat deskripsi `capabilities` properti di[Tindakan 'Menyebarkan CloudFormation tumpukan' YAMAL](deploy-action-ref-cfn.md).

1. (Opsional) Pilih **Validasi** untuk memvalidasi kode YAMB alur kerja sebelum melakukan.

1. Pilih **Komit**, masukkan pesan komit, dan pilih **Komit** lagi.

1. Jika alur kerja baru tidak dimulai secara otomatis, jalankan alur kerja secara manual untuk melihat apakah perubahan memperbaiki kesalahan. Untuk informasi selengkapnya tentang menjalankan alur kerja secara manual, lihat[Memulai proses alur kerja secara manual](workflows-manually-start.md).

------

## Bagaimana cara memperbaiki kesalahan “npm install”?
<a name="troubleshooting-workflows-npm"></a>

**Masalah**: [Tindakan AWS CDK penerapan atau tindakan AWS CDK](cdk-dep-action.md) [bootstrap](cdk-boot-action.md) 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**

1. Buat rahasia untuk informasi otentikasi Anda. Anda akan mereferensikan rahasia ini dalam `cdk.json` file alih-alih memberikan padanan cleartext. Untuk membuat rahasia:

   1. Buka CodeCatalyst konsol di [https://codecatalyst.aws/](https://codecatalyst.aws/).

   1. Pilih proyek Anda.

   1. **Di panel navigasi, pilih **CI/CD**, lalu pilih Rahasia.**

   1. Buat dua rahasia dengan properti berikut:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/codecatalyst/latest/userguide/troubleshooting-workflows.html)

      Untuk informasi lebih lanjut tentang rahasia, lihat[Menyembunyikan data menggunakan rahasia](workflows-secrets.md).

1. Tambahkan rahasia sebagai variabel lingkungan ke AWS CDK tindakan Anda. Tindakan akan menggantikan variabel dengan nilai nyata saat dijalankan. Untuk menambahkan rahasia:

   1. **Di panel navigasi, pilih **CI/CD, lalu pilih Alur** kerja.**

   1. 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.

   1. Pilih **Edit**.

   1. Pilih **Visual**.

   1. Dalam diagram alur kerja, pilih AWS CDK tindakan Anda.

   1. Pilih tab **Input**.

   1. Tambahkan dua variabel dengan properti berikut:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/codecatalyst/latest/userguide/troubleshooting-workflows.html)

      Anda sekarang memiliki dua variabel yang berisi referensi ke rahasia.

   File definisi alur kerja Anda kode YAMB akan terlihat mirip dengan 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` variabel `NPMUSER` dan dalam `cdk.json` file Anda. Pergi ke prosedur selanjutnya.

**Untuk memperbarui file cdk.json Anda**

1. Ubah ke direktori root AWS CDK proyek Anda, dan buka `cdk.json` file.

1. Temukan `"app":` properti, dan ubah untuk menyertakan kode yang ditunjukkan di*red 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",
   ...
   ```

1. Dalam kode yang disorot*red italics*, ganti:
   + *your-registry/folder/CDK-package/*dengan jalur ke dependensi AWS CDK proyek Anda di registri pribadi Anda.
   + *hello-cdk.ts\$1.js*dengan nama file entrypoint Anda. Ini mungkin file `.ts` (TypeScript) atau `.js` (JavaScript) tergantung pada bahasa yang Anda gunakan.
**catatan**  
Tindakan akan mengganti *NPMTOKEN* variabel *NPMUSER* dan dengan nama pengguna npm dan token akses yang Anda tentukan di **Rahasia**.

1. Simpan `cdk.json` file Anda.

1. Jalankan kembali tindakan secara manual untuk melihat apakah perubahan memperbaiki kesalahan. Untuk informasi selengkapnya tentang menjalankan tindakan secara manual, lihat[Memulai proses alur kerja secara manual](workflows-manually-start.md).

## Mengapa beberapa alur kerja memiliki nama yang sama?
<a name="troubleshooting-workflows-name"></a>



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](source-branches.md).

![\[Cabang alur kerja\]](http://docs.aws.amazon.com/id_id/codecatalyst/latest/userguide/images/flows/workflow-branch.png)


## Dapatkah saya menyimpan file definisi alur kerja saya di folder lain?
<a name="troubleshooting-workflows-folder"></a>

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 (editor YAMAL) di dalam pemicu untuk memicu alur kerja secara otomatis di jalur proyek yang ditentukan. Untuk informasi selengkapnya, lihat [Menambahkan pemicu ke alur kerja](workflows-add-trigger-add.md) dan [Contoh: Pemicu dengan dorongan, cabang, dan file](workflows-add-trigger-examples.md#workflows-add-trigger-examples-push-multi).

## Bagaimana cara menambahkan tindakan secara berurutan ke alur kerja saya?
<a name="troubleshooting-workflows-visual"></a>

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](workflows-depends-on.md).

## Mengapa alur kerja saya berhasil memvalidasi tetapi gagal saat runtime?
<a name="troubleshooting-workflows-validation"></a>

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](workflows-create-workflow.md).

## Penemuan otomatis tidak menemukan laporan apa pun untuk tindakan saya
<a name="troubleshooting-reports-auto-discovery"></a>

**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](test-workflow-actions.md#test-reporting).
+ Pastikan ekstensi file untuk output konsisten dengan format yang dipilih. Misalnya, saat mengonfigurasi `pytest` untuk menghasilkan hasil dalam `JUnitXML` format, periksa apakah ekstensi file tersebut. `.xml` Untuk informasi selengkapnya, lihat [Jenis laporan kualitas](test-workflow-actions.md#test-reporting).
+ Pastikan bahwa `IncludePaths` dikonfigurasi untuk menyertakan seluruh sistem file (`**/*`) kecuali Anda sengaja mengecualikan folder tertentu. Demikian pula, pastikan bahwa `ExcludePaths` 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 [Contoh laporan kualitas YAMAL](test-config-action.md#test.success-criteria-example).
+ 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
<a name="troubleshooting-success-auto-discovery"></a>

**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` atau `ExcludePaths` 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, lihat [Kriteria keberhasilan](test-best-practices.md#test.best-success-criteria)
+ 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](test-config-action.md#test.success-criteria).

## Penemuan otomatis menghasilkan laporan yang tidak saya inginkan
<a name="troubleshooting-unwanted-auto-discovery"></a>

**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 mengecualikan`node_modules`, tambahkan`node_modules/**/*`. Untuk informasi selengkapnya, lihat [Sertakan/kecualikan jalur](test-best-practices.md#test.best-include-exclude).

## Penemuan otomatis menghasilkan banyak laporan kecil untuk satu kerangka pengujian
<a name="troubleshooting-reports-combined"></a>

**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](https://maven.apache.org/surefire/maven-surefire-plugin/), penemuan otomatis menghasilkan laporan yang berbeda untuk setiap kelas pengujian. 

**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
<a name="troubleshooting-workflow-source"></a>

**Masalah:** [Alur kerja yang ditampilkan pada **CI/CD**, halaman **Alur kerja** tidak cocok dengan yang ada di `~/.codecatalyst/workflows/` folder di repositori sumber Anda.](source.md) 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, tinjau[Kuota untuk alur kerja di CodeCatalyst](workflows-quotas.md), 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
<a name="troubleshooting-workflows-branchrules"></a>

**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. File YAMB untuk alur kerja disimpan dalam repositori. Untuk informasi selengkapnya, lihat [File definisi alur kerja](workflows-concepts.md#workflows-concepts-workflows-def). 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 pada alur kerja YAMB 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. Lihat informasi yang lebih lengkap di [Mengelola tindakan yang diizinkan untuk cabang dengan aturan cabang](source-branches-branch-rules.md).