Membangun dan menguji definisi YAMAL tindakan - Amazon CodeCatalyst

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

Membangun dan menguji definisi YAMAL tindakan

Berikut ini adalah definisi YAMAL dari tindakan build dan test. Ada satu referensi untuk dua tindakan karena properti YAML mereka sangat mirip.

Definisi tindakan ini ada sebagai bagian dalam file definisi alur kerja yang lebih luas. Untuk informasi selengkapnya tentang file ini, lihatAlur kerja definisi YAMAL.

Pilih properti YAMB dalam kode berikut untuk melihat deskripsi jika itu.

catatan

Sebagian besar properti YAMAL yang mengikuti memiliki elemen UI yang sesuai di editor visual. Untuk mencari elemen UI, gunakan Ctrl+F. Elemen akan terdaftar dengan properti YAMLnya yang terkait.

# The workflow definition starts here. # See Properti tingkat atas for details. Name: MyWorkflow SchemaVersion: 1.0 Actions: # The action definition starts here. action-name: Identifier: aws/build@v1 | aws/managed-test@v1 DependsOn: - dependent-action-name-1 Compute: Type: EC2 | Lambda Fleet: fleet-name Timeout: timeout-minutes Environment: Name: environment-name Connections: - Name: account-connection-name Role: iam-role-name Caching: FileCaching: key-name-1: Path: file1.txt RestoreKeys: - restore-key-1 Inputs: Sources: - source-name-1 - source-name-2 Artifacts: - artifact-name Variables: - Name: variable-name-1 Value: variable-value-1 - Name: variable-name-2 Value: variable-value-2 Outputs: Artifacts: - Name: output-artifact-1 Files: - build-output/artifact-1.jar - "build-output/build*" - Name: output-artifact-2 Files: - build-output/artifact-2.1.jar - build-output/artifact-2.2.jar Variables: - variable-name-1 - variable-name-2 AutoDiscoverReports: Enabled: true | false ReportNamePrefix: AutoDiscovered IncludePaths: - "**/*" ExcludePaths: - node_modules/cdk/junit.xml SuccessCriteria: PassRate: percent LineCoverage: percent BranchCoverage: percent Vulnerabilities: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisBug: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisSecurity: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisQuality: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisFinding: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number Reports: report-name-1: Format: format IncludePaths: - "*.xml" ExcludePaths: - report2.xml - report3.xml SuccessCriteria: PassRate: percent LineCoverage: percent BranchCoverage: percent Vulnerabilities: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisBug: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisSecurity: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisQuality: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number StaticAnalysisFinding: Severity: CRITICAL | HIGH | MEDIUM | LOW | INFORMATIONAL Number: whole-number Configuration: Container: Registry: registry Image: image Steps: - Run: "step 1" - Run: "step 2" Packages: NpmConfiguration: PackageRegistries: - PackagesRepository: package-repository Scopes: - "@scope"

nama-tindakan

(Diperlukan)

Tentukan nama tindakan. Semua nama tindakan harus unik dalam alur kerja. Nama aksi terbatas pada karakter alfanumerik (a-z, A-Z, 0-9), tanda hubung (-), dan garis bawah (_). Spasi tidak diizinkan. Anda tidak dapat menggunakan tanda kutip untuk mengaktifkan karakter dan spasi khusus dalam nama tindakan.

UI yang sesuai: Tab konfigurasi/Nama tindakan

Identifier

(nama-tindakan/) Identifier

Mengidentifikasi tindakan. Jangan mengubah properti ini kecuali Anda ingin mengubah versi. Untuk informasi selengkapnya, lihat Menentukan versi mayor, minor, atau patch dari suatu tindakan.

Gunakan aws/build@v1 untuk membangun tindakan.

Gunakan aws/managed-test@v1 untuk tindakan pengujian.

UI yang sesuai: Diagram alur kerja/nama-tindakan/aws/build @v1 |aws/managed-test @v1 label

DependsOn

(nama-tindakan/) DependsOn

(Opsional)

Tentukan tindakan, grup tindakan, atau gerbang yang harus berjalan dengan sukses agar tindakan ini berjalan.

Untuk informasi selengkapnya tentang fungsionalitas 'tergantung pada', lihat. Mengkonfigurasi tindakan untuk bergantung pada tindakan lain

UI yang sesuai: Tab masukan/Tergantung pada - opsional

Compute

(nama-tindakan/) Compute

(Opsional)

Mesin komputasi yang digunakan untuk menjalankan tindakan alur kerja Anda. Anda dapat menentukan komputasi baik di tingkat alur kerja atau di tingkat tindakan, tetapi tidak keduanya. Ketika ditentukan pada tingkat alur kerja, konfigurasi komputasi berlaku untuk semua tindakan yang ditentukan dalam alur kerja. Pada tingkat alur kerja, Anda juga dapat menjalankan beberapa tindakan pada instance yang sama. Untuk informasi selengkapnya, lihat Berbagi komputasi di seluruh tindakan.

UI yang sesuai: tidak ada

Type

(Tipe nama-tindakan/Compute/)

(Diperlukan Compute jika disertakan)

Jenis mesin komputasi. Anda dapat menggunakan salah satu nilai berikut:

  • EC2 (editor visual) atau EC2 (editor YAMAL)

    Dioptimalkan untuk fleksibilitas selama aksi berjalan.

  • Lambda (editor visual) atau Lambda (editor YAMAL)

    Kecepatan start-up aksi yang dioptimalkan.

Untuk informasi selengkapnya tentang jenis komputasi, lihatJenis komputasi.

UI yang sesuai: Tab konfigurasi/Jenis komputasi

Fleet

(nama-tindakan) /Compute/ Fleet

(Opsional)

Tentukan mesin atau armada yang akan menjalankan alur kerja atau tindakan alur kerja Anda. Dengan armada sesuai permintaan, ketika suatu tindakan dimulai, alur kerja menyediakan sumber daya yang dibutuhkan, dan mesin dihancurkan ketika tindakan selesai. Contoh armada sesuai permintaan:Linux.x86-64.Large,. Linux.x86-64.XLarge Untuk informasi lebih lanjut tentang armada sesuai permintaan, lihat. Properti armada sesuai permintaan

Dengan armada yang disediakan, Anda mengonfigurasi satu set mesin khusus untuk menjalankan tindakan alur kerja Anda. Mesin-mesin ini tetap menganggur, siap untuk memproses tindakan segera. Untuk informasi selengkapnya tentang armada yang disediakan, lihat. Properti armada yang disediakan

Jika Fleet dihilangkan, defaultnya adalah. Linux.x86-64.Large

UI yang sesuai: Tab konfigurasi/Armada komputasi

Timeout

(nama-tindakan/) Timeout

(Opsional)

Tentukan jumlah waktu dalam menit (editor YAMM), atau jam dan menit (editor visual), bahwa tindakan dapat berjalan sebelum CodeCatalyst mengakhiri tindakan. Minimal adalah 5 menit dan maksimum dijelaskan dalamKuota untuk alur kerja. Batas waktu default sama dengan batas waktu maksimum.

UI yang sesuai: Tab konfigurasi/Timeout - opsional

Environment

(nama-tindakan/) Environment

(Opsional)

Tentukan CodeCatalyst lingkungan yang akan digunakan dengan tindakan.

Untuk informasi lebih lanjut tentang lingkungan, lihat Menyebarkan ke dalam Akun AWS dan VPC dengan lingkungan CodeCatalyst danPembuatan lingkungan.

UI yang sesuai: Tab konfigurasi/Lingkungan

Name

(nama-tindakan) /Environment/ Name

(Opsional)

Tentukan nama lingkungan yang ada yang ingin Anda kaitkan dengan tindakan.

UI yang sesuai: Tab konfigurasi/Nama Lingkungan

Connections

(nama-tindakan) /Environment/ Connections

(Opsional)

Tentukan koneksi akun untuk dikaitkan dengan tindakan. Anda dapat menentukan maksimum satu koneksi akun di bawahEnvironment.

Untuk informasi selengkapnya tentang koneksi akun, lihatMemungkinkan akses ke AWS sumber daya yang terhubung Akun AWS. Untuk informasi tentang cara mengaitkan koneksi akun dengan lingkungan Anda, lihatPembuatan lingkungan.

UI yang sesuai: Tab konfigurasi/

Name

(nama-tindakan) /Environment/Connections/ Name

(Opsional)

Tentukan nama koneksi akun.

UI yang sesuai: Tab konfigurasi/

Role

(nama-tindakan) /Environment/Connections/ Role

(Opsional)

Tentukan nama peran IAM yang digunakan tindakan ini untuk mengakses dan beroperasi di AWS layanan seperti Amazon S3 dan Amazon ECR. Pastikan peran ini ditambahkan ke koneksi akun Anda. Untuk menambahkan peran IAM ke koneksi akun, lihatMenambahkan peran IAM ke koneksi akun.

catatan

Anda mungkin dapat menentukan nama CodeCatalystWorkflowDevelopmentRole-spaceName peran di sini, asalkan memiliki izin yang cukup. Untuk informasi selengkapnya tentang peran ini, silakan lihat Membuat CodeCatalystWorkflowDevelopmentRole-spaceNameperan untuk akun dan ruang Anda. Pahami bahwa CodeCatalystWorkflowDevelopmentRole-spaceName peran tersebut memiliki izin yang sangat luas yang dapat menimbulkan risiko keamanan. Kami menyarankan Anda hanya menggunakan peran ini dalam tutorial dan skenario di mana keamanan kurang menjadi perhatian.

Awas

Batasi izin ke yang diperlukan oleh tindakan build dan test. Menggunakan peran dengan izin yang lebih luas dapat menimbulkan risiko keamanan.

UI yang sesuai: Tab konfigurasi/

Caching

(nama-tindakan/) Caching

(Opsional)

Bagian di mana Anda dapat menentukan cache untuk menyimpan file pada disk dan mengembalikannya dari cache itu dalam alur kerja berikutnya.

Untuk informasi selengkapnya tentang cache file, lihatCaching file di antara alur kerja berjalan.

UI yang sesuai: Tab konfigurasi/File caching - opsional

FileCaching

(nama-tindakan) /Caching/ FileCaching

(Opsional)

Bagian yang menentukan konfigurasi untuk urutan cache.

UI yang sesuai: Tab konfigurasi/File caching - opsional/Tambahkan cache

nama-kunci-1

(nama-aksi-nama-kunci-1/Caching/FileCaching/)

(Opsional)

Tentukan nama nama properti cache utama Anda. Nama properti cache harus unik dalam alur kerja Anda. Setiap tindakan dapat memiliki hingga lima entri. FileCaching

UI yang sesuai: Tab konfigurasi/File caching - Opsional/Tambahkan cache/Kunci

Path

(/Caching/FileCaching/nama-aksi-nama-kunci-1/) Path

(Opsional)

Tentukan jalur terkait untuk cache Anda.

UI yang sesuai: Tab konfigurasi/File caching - Opsional/Tambahkan cache/Path

RestoreKeys

(/Caching/FileCaching/nama-aksi-nama-kunci-1/) RestoreKeys

(Opsional)

Tentukan kunci pemulihan yang akan digunakan sebagai fallback ketika properti cache utama tidak dapat ditemukan. Kembalikan nama kunci harus unik dalam alur kerja Anda. Setiap cache dapat memiliki hingga lima entri. RestoreKeys

UI yang sesuai: Tab konfigurasi/File caching - Opsional/Tambahkan cache/Restore keys - opsional

Inputs

(nama-tindakan/) Inputs

(Opsional)

InputsBagian ini mendefinisikan data yang dibutuhkan tindakan selama menjalankan alur kerja.

catatan

Maksimal empat input (satu sumber dan tiga artefak) diizinkan per tindakan build atau tindakan pengujian. Variabel tidak dihitung terhadap total ini.

Jika Anda perlu merujuk ke file yang berada di input yang berbeda (katakanlah sumber dan artefak), input sumber adalah input utama, dan artefak adalah input sekunder. Referensi ke file dalam input sekunder mengambil awalan khusus untuk menyisihkannya dari primer. Lihat perinciannya di Contoh: Merujuk file dalam beberapa artefak.

UI yang sesuai: Tab input

Sources

(nama-tindakan) /Inputs/ Sources

(Opsional)

Tentukan label yang mewakili repositori sumber yang akan dibutuhkan oleh tindakan. Saat ini, satu-satunya label yang didukung adalahWorkflowSource, yang mewakili repositori sumber tempat file definisi alur kerja Anda disimpan.

Jika Anda menghilangkan sumber, maka Anda harus menentukan setidaknya satu artefak input di bawah. action-name/Inputs/Artifacts

Untuk informasi selengkapnya tentang sumber, lihat Menghubungkan alur kerja ke repositori sumber.

UI yang sesuai: tidak ada

Artifacts - input

(nama-tindakan) /Inputs/ Artifacts

(Opsional)

Tentukan artefak dari tindakan sebelumnya yang ingin Anda berikan sebagai masukan untuk tindakan ini. Artefak ini harus sudah didefinisikan sebagai artefak keluaran dalam tindakan sebelumnya.

Jika Anda tidak menentukan artefak input apa pun, maka Anda harus menentukan setidaknya satu repositori sumber di bawah. action-name/Inputs/Sources

Untuk informasi selengkapnya tentang artefak, termasuk contoh, lihatBerbagi data antar tindakan dalam alur kerja menggunakan artefak.

catatan

Jika Artefacts - daftar drop-down opsional tidak tersedia (editor visual), atau jika Anda mendapatkan kesalahan saat memvalidasi YAMG (editor YAMM), itu mungkin karena tindakan hanya mendukung satu input. Dalam hal ini, coba hapus input sumber.

UI yang sesuai: Tab masukan/Artefak - opsional

Variables - input

(nama-tindakan) /Inputs/ Variables

(Opsional)

Tentukan urutan pasangan nama/nilai yang menentukan variabel input yang ingin Anda sediakan untuk tindakan. Nama variabel terbatas pada karakter alfanumerik (a-z, A-Z, 0-9), tanda hubung (-), dan garis bawah (_). Spasi tidak diizinkan. Anda tidak dapat menggunakan tanda kutip untuk mengaktifkan karakter dan spasi khusus dalam nama variabel.

Untuk informasi selengkapnya tentang variabel, termasuk contoh, lihatMengkonfigurasi dan menggunakan variabel dalam alur kerja.

UI yang sesuai: Input tab/Variabel - opsional

Outputs

(nama-tindakan/) Outputs

(Opsional)

Mendefinisikan data yang dihasilkan oleh tindakan selama menjalankan alur kerja.

UI yang sesuai: Tab keluaran

Artifacts - output

(nama-tindakan) /Outputs/ Artifacts

(Opsional)

Tentukan nama artefak yang dihasilkan oleh tindakan. Nama artifak harus unik dalam alur kerja, dan terbatas pada karakter alfanumerik (a-z, A-Z, 0-9) dan garis bawah (_). Spasi, tanda hubung (-), dan karakter khusus lainnya tidak diperbolehkan. Anda tidak dapat menggunakan tanda kutip untuk mengaktifkan spasi, tanda hubung, dan karakter khusus lainnya dalam nama artefak keluaran.

Untuk informasi selengkapnya tentang artefak, termasuk contoh, lihatBerbagi data antar tindakan dalam alur kerja menggunakan artefak.

UI yang sesuai: Tab keluaran/Artefak

Name

(nama-tindakan) /Outputs/Artifacts/ Name

(Diperlukan Artifacts - output jika disertakan)

Tentukan nama artefak yang dihasilkan oleh tindakan. Nama artifak harus unik dalam alur kerja, dan terbatas pada karakter alfanumerik (a-z, A-Z, 0-9) dan garis bawah (_). Spasi, tanda hubung (-), dan karakter khusus lainnya tidak diperbolehkan. Anda tidak dapat menggunakan tanda kutip untuk mengaktifkan spasi, tanda hubung, dan karakter khusus lainnya dalam nama artefak keluaran.

Untuk informasi selengkapnya tentang artefak, termasuk contoh, lihatBerbagi data antar tindakan dalam alur kerja menggunakan artefak.

UI yang sesuai: Tab keluaran/Artefak/Output baru/Bangun nama artefak

Files

(nama-tindakan) /Outputs/Artifacts/ Files

(Diperlukan Artifacts - output jika disertakan)

Tentukan file yang CodeCatalyst termasuk dalam artefak yang dihasilkan oleh tindakan. File-file ini dihasilkan oleh tindakan alur kerja saat dijalankan, dan juga tersedia di repositori sumber Anda. Jalur file dapat berada di repositori sumber atau artefak dari tindakan sebelumnya, dan relatif terhadap repositori sumber atau root artefak. Anda dapat menggunakan pola glob untuk menentukan jalur. Contoh:

  • Untuk menentukan satu file yang ada di root lokasi build atau lokasi repositori sumber, gunakan. my-file.jar

  • Untuk menentukan satu file dalam subdirektori, gunakan directory/my-file.jar ataudirectory/subdirectory/my-file.jar.

  • Untuk menentukan semua file, gunakan"**/*". Pola ** glob menunjukkan untuk mencocokkan sejumlah subdirektori.

  • Untuk menentukan semua file dan direktori dalam direktori bernamadirectory, gunakan"directory/**/*". Pola ** glob menunjukkan untuk mencocokkan sejumlah subdirektori.

  • Untuk menentukan semua file dalam direktori bernamadirectory, tetapi tidak salah satu subdirektorinya, gunakan. "directory/*"

catatan

Jika jalur file Anda menyertakan satu atau beberapa tanda bintang (*) atau karakter khusus lainnya, lampirkan jalur dengan tanda kutip ganda (). "" Untuk informasi selengkapnya tentang karakter khusus, lihatPedoman dan konvensi sintaks.

Untuk informasi selengkapnya tentang artefak, termasuk contoh, lihatBerbagi data antar tindakan dalam alur kerja menggunakan artefak.

catatan

Anda mungkin perlu menambahkan awalan ke jalur file untuk menunjukkan artefak atau sumber mana yang akan menemukannya. Untuk informasi selengkapnya, lihat Mereferensikan file dalam repositori sumber dan Merujuk file dalam artefak.

UI yang sesuai: Tab keluaran/Artefak/Output baru/File yang diproduksi oleh build

Variables - output

(nama-tindakan) /Outputs/ Variables

(Opsional)

Tentukan variabel yang ingin Anda ekspor tindakan sehingga tersedia untuk digunakan oleh tindakan selanjutnya.

Untuk informasi selengkapnya tentang variabel, termasuk contoh, lihatMengkonfigurasi dan menggunakan variabel dalam alur kerja.

UI yang sesuai: Tab keluaran/Variabel/Tambahkan variabel

variabel-nama-1

(nama-aksi-variabel-nama-1/Outputs/Variables/)

(Opsional)

Tentukan nama variabel yang ingin Anda ekspor tindakan. Variabel ini harus sudah didefinisikan dalam Inputs atau Steps bagian dari tindakan yang sama.

Untuk informasi selengkapnya tentang variabel, termasuk contoh, lihatMengkonfigurasi dan menggunakan variabel dalam alur kerja.

UI yang sesuai: Tab keluaran/variabel/Tambahkan variabel/Nama

AutoDiscoverReports

(nama-tindakan) /Outputs/ AutoDiscoverReports

(Opsional)

Mendefinisikan konfigurasi untuk fitur auto-discovery.

Saat Anda mengaktifkan penemuan otomatis, semua CodeCatalyst pencarian Inputs diteruskan ke tindakan serta semua file yang dihasilkan oleh tindakan itu sendiri, mencari laporan pengujian, cakupan kode, dan analisis komposisi perangkat lunak (SCA). Untuk setiap laporan yang ditemukan, CodeCatalyst mengubahnya menjadi CodeCatalyst laporan. CodeCatalyst Laporan adalah laporan yang sepenuhnya terintegrasi ke dalam CodeCatalyst layanan dan dapat dilihat dan dimanipulasi melalui CodeCatalyst konsol.

catatan

Secara default, fitur auto-discover memeriksa semua file. Anda dapat membatasi file mana yang diperiksa menggunakan ExcludePaths properti IncludePaths atau.

UI yang sesuai: Tab Keluaran/Laporan/Laporan temukan otomatis

Enabled

(nama-tindakan) /Outputs/AutoDiscoverReports/ Enabled

(Opsional)

Aktifkan atau nonaktifkan fitur penemuan otomatis.

Nilai-nilai yang valid adalah true atau false.

Jika Enabled dihilangkan, defaultnya adalah. true

UI yang sesuai: Tab Keluaran/Laporan/Laporan temukan otomatis

ReportNamePrefix

(nama-tindakan) /Outputs/AutoDiscoverReports/ ReportNamePrefix

(Diperlukan AutoDiscoverReports jika disertakan dan diaktifkan)

Tentukan CodeCatalyst awalan yang ditambahkan ke semua laporan yang ditemukannya untuk memberi nama laporan terkait. CodeCatalyst Misalnya, jika Anda menentukan awalanAutoDiscovered, dan CodeCatalyst otomatis menemukan dua laporan pengujian, TestSuiteOne.xml danTestSuiteTwo.xml, maka CodeCatalyst laporan terkait akan diberi nama dan. AutoDiscoveredTestSuiteOne AutoDiscoveredTestSuiteTwo

UI yang sesuai: Tab Keluaran/Laporan/Nama awalan

IncludePaths

(nama-tindakan) /Outputs/AutoDiscoverReports/ IncludePaths

Atau

(aksi-nama-laporan-nama-1 /Outputs/Reports//) IncludePaths

(Diperlukan jika AutoDiscoverReports disertakan dan diaktifkan, atau Reports jika disertakan)

Tentukan file dan jalur file yang CodeCatalyst disertakan saat mencari laporan mentah. Misalnya, jika Anda menentukan"/test/report/*", akan CodeCatalyst mencari seluruh image build yang digunakan oleh tindakan mencari /test/report/* direktori. Ketika menemukan direktori itu, CodeCatalyst maka cari laporan di direktori itu.

catatan

Jika jalur file Anda menyertakan satu atau beberapa tanda bintang (*) atau karakter khusus lainnya, lampirkan jalur dengan tanda kutip ganda (). "" Untuk informasi selengkapnya tentang karakter khusus, lihatPedoman dan konvensi sintaks.

Jika properti ini dihilangkan, defaultnya adalah"**/*", artinya pencarian mencakup semua file di semua jalur.

catatan

Untuk laporan yang dikonfigurasi secara manual, IncludePaths harus berupa pola glob yang cocok dengan satu file.

UI yang sesuai:

  • Tab Keluaran/Laporan/Auto-temukan laporan/Sertakan jalur/Kecualikan jalur/Sertakan jalur

  • Tab keluaran/Laporan/Konfigurasikan laporan/nama-laporan/nama-laporan/Sertakan jalur secara manual/Sertakan jalur

ExcludePaths

(nama-tindakan) /Outputs/AutoDiscoverReports/ ExcludePaths

Atau

(aksi-nama-laporan-nama-1 /Outputs/Reports//) ExcludePaths

(Opsional)

Tentukan file dan jalur file yang CodeCatalyst dikecualikan saat mencari laporan mentah. Misalnya, jika Anda menentukan"/test/my-reports/**/*", tidak CodeCatalyst akan mencari file di /test/my-reports/ direktori. Untuk mengabaikan semua file dalam direktori, gunakan pola **/* glob.

catatan

Jika jalur file Anda menyertakan satu atau beberapa tanda bintang (*) atau karakter khusus lainnya, lampirkan jalur dengan tanda kutip ganda (). "" Untuk informasi selengkapnya tentang karakter khusus, lihatPedoman dan konvensi sintaks.

UI yang sesuai:

  • Tab Keluaran/Laporan/Auto-temukan laporan/Sertakan/Kecualikan jalur/Kecualikan jalur

  • Tab keluaran/Laporan/Konfigurasikan laporan/nama-laporan/nama-laporan-1/sertakan/Kecualikan jalur/Kecualikan jalur secara manual

SuccessCriteria

(nama-tindakan) /Outputs/AutoDiscoverReports/ SuccessCriteria

Atau

(aksi-nama-laporan-nama-1 /Outputs/Reports//) SuccessCriteria

(Opsional)

Tentukan kriteria keberhasilan untuk pengujian, cakupan kode, analisis komposisi perangkat lunak (SCA), dan laporan analisis statis (SA).

Untuk informasi selengkapnya, lihat Mengkonfigurasi kriteria keberhasilan untuk laporan.

UI yang sesuai: Tab keluaran/Laporan/Kriteria keberhasilan

PassRate

(nama-tindakan) /Outputs/AutoDiscoverReports/SuccessCriteria/ PassRate

Atau

(aksi-nama-laporan-nama-1/Outputs/Reports/) /SuccessCriteria/ PassRate

(Opsional)

Tentukan persentase pengujian dalam laporan pengujian yang harus lulus agar CodeCatalyst laporan terkait ditandai sebagai lulus. Nilai yang valid termasuk angka desimal. Misalnya:50,60.5. Kriteria tingkat kelulusan hanya diterapkan pada laporan pengujian. Untuk informasi selengkapnya tentang laporan pengujian, lihatLaporan pengujian.

UI yang sesuai: Tab keluaran/Laporan/Kriteria sukses/Tingkat kelulusan

LineCoverage

(nama-tindakan) /Outputs/AutoDiscoverReports/SuccessCriteria/ LineCoverage

Atau

(aksi-nama-laporan-nama-1/Outputs/Reports/) /SuccessCriteria/ LineCoverage

(Opsional)

Tentukan persentase baris dalam laporan cakupan kode yang harus dicakup agar CodeCatalyst laporan terkait ditandai sebagai lulus. Nilai yang valid termasuk angka desimal. Misalnya:50,60.5. Kriteria cakupan baris hanya diterapkan pada laporan cakupan kode. Untuk informasi selengkapnya tentang laporan cakupan kode, lihatLaporan cakupan kode.

UI yang sesuai: Tab keluaran/Laporan/Kriteria sukses/Cakupan garis

BranchCoverage

(nama-tindakan) /Outputs/AutoDiscoverReports/SuccessCriteria/ BranchCoverage

Atau

(aksi-nama-laporan-nama-1/Outputs/Reports/) /SuccessCriteria/ BranchCoverage

(Opsional)

Tentukan persentase cabang dalam laporan cakupan kode yang harus dicakup agar CodeCatalyst laporan terkait ditandai sebagai lulus. Nilai yang valid termasuk angka desimal. Misalnya:50,60.5. Kriteria cakupan cabang hanya diterapkan pada laporan cakupan kode. Untuk informasi selengkapnya tentang laporan cakupan kode, lihatLaporan cakupan kode.

UI yang sesuai: Tab keluaran/Laporan/Kriteria sukses/Cakupan cabang

Vulnerabilities

(nama-tindakan) /Outputs/AutoDiscoverReports/SuccessCriteria/ Vulnerabilities

Atau

(aksi-nama-laporan-nama-1/Outputs/Reports/) /SuccessCriteria/ Vulnerabilities

(Opsional)

Tentukan jumlah maksimum dan tingkat keparahan kerentanan yang diizinkan dalam laporan SCA agar CodeCatalyst laporan terkait ditandai sebagai lulus. Untuk menentukan kerentanan, Anda harus menentukan:

  • Tingkat keparahan minimum kerentanan yang ingin Anda sertakan dalam hitungan. Nilai yang valid, dari yang paling parah hingga yang paling parah, adalah: CRITICALHIGH,MEDIUM,,LOW,INFORMATIONAL.

    Misalnya, jika Anda memilihHIGH, maka HIGH dan CRITICAL kerentanan akan dihitung.

  • Jumlah maksimum kerentanan dari tingkat keparahan yang ditentukan yang Anda inginkan memungkinkan. Melebihi angka ini menyebabkan CodeCatalyst laporan ditandai sebagai gagal. Nilai yang valid adalah bilangan bulat.

Kriteria kerentanan hanya diterapkan pada laporan SCA. Untuk informasi lebih lanjut tentang laporan SCA, lihatLaporan analisis komposisi perangkat lunak.

Untuk menentukan tingkat keparahan minimum, gunakan Severity properti. Untuk menentukan jumlah kerentanan maksimum, gunakan Number properti.

UI yang sesuai: Tab Keluaran/Laporan/Kriteria sukses/Kerentanan

StaticAnalysisBug

(nama-tindakan) /Outputs/AutoDiscoverReports/SuccessCriteria/ StaticAnalysisBug

Atau

(aksi-nama-laporan-nama-1/Outputs/Reports/) /SuccessCriteria/ StaticAnalysisBug

(Opsional)

Tentukan jumlah maksimum dan tingkat keparahan bug yang diizinkan dalam laporan SA agar CodeCatalyst laporan terkait ditandai sebagai lulus. Untuk menentukan bug, Anda harus menentukan:

  • Tingkat keparahan minimum bug yang ingin Anda sertakan dalam hitungan. Nilai yang valid, dari yang paling parah hingga yang paling parah, adalah: CRITICALHIGH,MEDIUM,,LOW,INFORMATIONAL.

    Misalnya, jika Anda memilihHIGH, maka HIGH dan CRITICAL bug akan dihitung.

  • Jumlah maksimum bug dari tingkat keparahan yang ditentukan yang Anda inginkan izin. Melebihi angka ini menyebabkan CodeCatalyst laporan ditandai sebagai gagal. Nilai yang valid adalah bilangan bulat.

Kriteria bug hanya diterapkan pada PyLint dan laporan ESLint SA. Untuk informasi lebih lanjut tentang laporan SA, lihatLaporan analisis statis.

Untuk menentukan tingkat keparahan minimum, gunakan Severity properti. Untuk menentukan jumlah kerentanan maksimum, gunakan Number properti.

UI yang sesuai: Tab keluaran/Laporan/Kriteria sukses/Bug

StaticAnalysisSecurity

(nama-tindakan) /Outputs/AutoDiscoverReports/SuccessCriteria/ StaticAnalysisSecurity

Atau

(aksi-nama-laporan-nama-1/Outputs/Reports/) /SuccessCriteria/ StaticAnalysisSecurity

(Opsional)

Tentukan jumlah maksimum dan tingkat keparahan kerentanan keamanan yang diizinkan dalam laporan SA agar CodeCatalyst laporan terkait ditandai sebagai lulus. Untuk menentukan kerentanan keamanan, Anda harus menentukan:

  • Tingkat keparahan minimum kerentanan keamanan yang ingin Anda sertakan dalam hitungan. Nilai yang valid, dari yang paling parah hingga yang paling parah, adalah: CRITICALHIGH,MEDIUM,,LOW,INFORMATIONAL.

    Misalnya, jika Anda memilihHIGH, maka HIGH dan kerentanan CRITICAL keamanan akan dihitung.

  • Jumlah maksimum kerentanan keamanan dari tingkat keparahan tertentu yang Anda inginkan memungkinkan. Melebihi angka ini menyebabkan CodeCatalyst laporan ditandai sebagai gagal. Nilai yang valid adalah bilangan bulat.

Kriteria kerentanan keamanan hanya diterapkan PyLint pada laporan ESLint SA. Untuk informasi lebih lanjut tentang laporan SA, lihatLaporan analisis statis.

Untuk menentukan tingkat keparahan minimum, gunakan Severity properti. Untuk menentukan jumlah kerentanan maksimum, gunakan Number properti.

UI yang sesuai: Tab keluaran/Laporan/Kriteria sukses/Kerentanan keamanan

StaticAnalysisQuality

(nama-tindakan) /Outputs/AutoDiscoverReports/SuccessCriteria/ StaticAnalysisQuality

Atau

(aksi-nama-laporan-nama-1/Outputs/Reports/) /SuccessCriteria/ StaticAnalysisQuality

(Opsional)

Tentukan jumlah maksimum dan tingkat keparahan masalah kualitas yang diizinkan dalam laporan SA agar CodeCatalyst laporan terkait ditandai sebagai lulus. Untuk menentukan masalah kualitas, Anda harus menentukan:

  • Tingkat keparahan minimum dari masalah kualitas yang ingin Anda sertakan dalam hitungan. Nilai yang valid, dari yang paling parah hingga yang paling parah, adalah: CRITICALHIGH,MEDIUM,,LOW,INFORMATIONAL.

    Misalnya, jika Anda memilihHIGH, maka HIGH dan masalah CRITICAL kualitas akan dihitung.

  • Jumlah maksimum masalah kualitas dari tingkat keparahan tertentu yang Anda inginkan izin. Melebihi angka ini menyebabkan CodeCatalyst laporan ditandai sebagai gagal. Nilai yang valid adalah bilangan bulat.

Kriteria masalah kualitas hanya diterapkan pada PyLint laporan ESLint SA. Untuk informasi lebih lanjut tentang laporan SA, lihatLaporan analisis statis.

Untuk menentukan tingkat keparahan minimum, gunakan Severity properti. Untuk menentukan jumlah kerentanan maksimum, gunakan Number properti.

UI yang sesuai: Tab keluaran/Laporan/Kriteria sukses/Masalah kualitas

StaticAnalysisFinding

(nama-tindakan) /Outputs/AutoDiscoverReports/SuccessCriteria/ StaticAnalysisFinding

Atau

(aksi-nama-laporan-nama-1/Outputs/Reports/) /SuccessCriteria/ StaticAnalysisFinding

(Opsional)

Tentukan jumlah maksimum dan tingkat keparahan temuan yang diizinkan dalam laporan SA untuk CodeCatalyst laporan terkait yang akan ditandai sebagai lulus. Untuk menentukan temuan, Anda harus menentukan:

  • Tingkat keparahan minimum dari temuan yang ingin Anda sertakan dalam hitungan. Nilai yang valid, dari yang paling parah hingga yang paling parah, adalah: CRITICALHIGH,MEDIUM,,LOW,INFORMATIONAL.

    Misalnya, jika Anda memilihHIGH, maka HIGH dan CRITICAL temuan akan dihitung.

  • Jumlah maksimum temuan dari tingkat keparahan yang ditentukan yang Anda inginkan memungkinkan. Melebihi angka ini menyebabkan CodeCatalyst laporan ditandai sebagai gagal. Nilai yang valid adalah bilangan bulat.

Temuan hanya diterapkan pada laporan SARIF SA. Untuk informasi lebih lanjut tentang laporan SA, lihatLaporan analisis statis.

Untuk menentukan tingkat keparahan minimum, gunakan Severity properti. Untuk menentukan jumlah kerentanan maksimum, gunakan Number properti.

UI yang sesuai: Tab Keluaran/Laporan/Kriteria sukses/Temuan

Reports

(nama-tindakan) /Outputs/ Reports

(Opsional)

Bagian yang menentukan konfigurasi untuk laporan pengujian.

UI yang sesuai: Tab keluaran/Laporan

laporan-nama-1

(aksi-nama-laporan-nama-1/Outputs/Reports/)

(Diperlukan Reports jika disertakan)

Nama yang ingin Anda berikan ke CodeCatalyst laporan yang akan dihasilkan dari laporan mentah Anda.

UI yang sesuai: Tab keluaran/Laporan/Konfigurasi laporan/Nama laporan secara manual

Format

(aksi-nama-laporan-nama-1 /Outputs/Reports//) Format

(Diperlukan Reports jika disertakan)

Tentukan format file yang Anda gunakan untuk laporan Anda. Nilai yang mungkin adalah sebagai berikut.

  • Untuk laporan pengujian:

    • Untuk Cucumber JSON, tentukan Cucumber (editor visual) atau CUCUMBERJSON (editor YAMM).

    • Untuk JUnit XHTML, tentukan JUnit (editor visual) atau JUNITXML (editor YAMG).

    • Untuk NUnit XHTML, tentukan NUnit (editor visual) atau NUNITXML (editor YAMG).

    • Untuk NUnit 3 XHTML, tentukan nUnit3 (editor visual) atau NUNIT3XML (editor YAMG).

    • Untuk Visual Studio TRX, tentukan Visual Studio TRX (editor visual) atau VISUALSTUDIOTRX (editor YAMM).

    • Untuk TestNG XHTML, tentukan TestNG (editor visual) atau TESTNGXML (editor YAMG).

  • Untuk laporan cakupan kode:

    • Untuk XHTML Clover, tentukan Clover (editor visual) atau CLOVERXML (editor YAMG).

    • Untuk Cobertura XHTML, tentukan Cobertura (editor visual) atau COBERTURAXML (editor YAMM).

    • Untuk JaCoCo XHTML, tentukan JaCoCo(editor visual) atau JACOCOXML (editor YAMM).

    • Untuk SimpleCov JSON yang dihasilkan oleh simplecov, bukan simplecov-json, tentukan Simplecov (editor visual) atau (editor YAMG). SIMPLECOV

  • Untuk laporan analisis komposisi perangkat lunak (SCA):

    • Untuk SARIF, tentukan SARIF (editor visual) atau SARIFSCA (editor YAMG).

UI yang sesuai: Tab Keluaran/Laporan/Konfigurasi laporan secara manual/Tambah/konfigurasikan laporan/nama-laporan-1/Jenis laporan dan format Laporan

Configuration

(nama-tindakan/) Configuration

(Wajib) Bagian di mana Anda dapat menentukan properti konfigurasi tindakan.

UI yang sesuai: Tab konfigurasi

Container

(nama-tindakan) /Configuration/ Container

(Opsional)

Tentukan gambar Docker, atau wadah, yang digunakan tindakan untuk menyelesaikan pemrosesannya. Anda dapat menentukan salah satu gambar aktif yang disertakan CodeCatalyst, atau Anda dapat menggunakan gambar Anda sendiri. Jika Anda memilih untuk menggunakan gambar Anda sendiri, itu dapat berada di Amazon ECR, Docker Hub, atau registri lain. Jika Anda tidak menentukan gambar Docker, tindakan menggunakan salah satu gambar aktif untuk pemrosesannya. Untuk informasi tentang gambar aktif yang digunakan secara default, lihatGambar aktif.

Untuk informasi selengkapnya tentang menentukan image Docker Anda sendiri, lihat. Menetapkan image Docker lingkungan runtime kustom ke suatu tindakan

UI yang sesuai: Gambar Docker lingkungan runtime - opsional

Registry

(nama-tindakan) /Configuration/Container/ Registry

(Diperlukan Container jika disertakan)

Tentukan registri tempat gambar Anda disimpan. Nilai yang valid meliputi:

  • CODECATALYST(Editor YAMB)

    Gambar disimpan dalam CodeCatalyst registri.

  • Docker Hub (editor visual) atau DockerHub (editor YAMB)

    Gambar disimpan dalam registri gambar Docker Hub.

  • Registri lain (editor visual) atau Other (editor YAMB)

    Gambar disimpan dalam registri gambar khusus. Registri apa pun yang tersedia untuk umum dapat digunakan.

  • Amazon Elastic Container Registry (editor visual) atau ECR (editor YAMM)

    Gambar disimpan dalam repositori gambar Amazon Elastic Container Registry. Untuk menggunakan gambar di repositori Amazon ECR, tindakan ini memerlukan akses ke Amazon ECR. Untuk mengaktifkan akses ini, Anda harus membuat peran IAM yang mencakup izin berikut dan kebijakan kepercayaan khusus. (Anda dapat mengubah peran yang ada untuk menyertakan izin dan kebijakan, jika Anda mau.)

    Peran IAM harus menyertakan izin berikut dalam kebijakan perannya:

    • ecr:BatchCheckLayerAvailability

    • ecr:BatchGetImage

    • ecr:GetAuthorizationToken

    • ecr:GetDownloadUrlForLayer

    Peran IAM harus menyertakan kebijakan kepercayaan khusus berikut:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "codecatalyst-runner.amazonaws.com", "codecatalyst.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

    Untuk informasi selengkapnya tentang membuat peran IAM, lihat Membuat peran menggunakan kebijakan kepercayaan khusus (konsol) di Panduan Pengguna IAM.

    Setelah Anda membuat peran, Anda harus menetapkannya ke tindakan melalui lingkungan. Untuk informasi selengkapnya, lihat Mengaitkan lingkungan, koneksi akun, dan peran IAM dengan tindakan alur kerja.

UI yang sesuai: Amazon Elastic Container Registry, Docker Hub, dan opsi registri lainnya

Image

(nama-tindakan) /Configuration/Container/ Image

(Diperlukan Container jika disertakan)

Tentukan satu dari yang berikut ini:

  • Jika Anda menggunakan CODECATALYST registri, atur gambar ke salah satu gambar aktif berikut:

    • CodeCatalystLinux_x86_64:2024_03

    • CodeCatalystLinux_x86_64:2022_11

    • CodeCatalystLinux_Arm64:2024_03

    • CodeCatalystLinux_Arm64:2022_11

    • CodeCatalystLinuxLambda_x86_64:2024_03

    • CodeCatalystLinuxLambda_x86_64:2022_11

    • CodeCatalystLinuxLambda_Arm64:2024_03

    • CodeCatalystLinuxLambda_Arm64:2022_11

    • CodeCatalystWindows_x86_64:2022_11

  • Jika Anda menggunakan registri Docker Hub, atur gambar ke nama gambar Docker Hub dan tag opsional.

    Contoh: postgres:latest

  • Jika Anda menggunakan registri Amazon ECR, atur gambar ke URI registri Amazon ECR.

    Contoh: 111122223333.dkr.ecr.us-west-2.amazonaws.com/codecatalyst-ecs-image-repo

  • Jika Anda menggunakan registri kustom, atur gambar ke nilai yang diharapkan oleh registri kustom.

UI yang sesuai: Runtime environment docker image (jika registri CODECATALYST adalah), image Docker Hub (jika registri adalah Docker Hub), URL gambar ECR (jika registri adalah Amazon Elastic Container Registry), dan Image URL (jika registri adalah Registri lain).

Steps

(nama-tindakan) /Configuration/ Steps

(Diperlukan)

Tentukan perintah shell yang ingin Anda jalankan selama tindakan untuk menginstal, mengonfigurasi, dan menjalankan alat build Anda.

Berikut adalah contoh cara membangun proyek npm:

Steps: - Run: npm install - Run: npm run build

Berikut adalah contoh cara menentukan jalur file:

Steps: - Run: cd $ACTION_BUILD_SOURCE_PATH_WorkflowSource/app && cat file2.txt - Run: cd $ACTION_BUILD_SOURCE_PATH_MyBuildArtifact/build-output/ && cat file.txt

Untuk informasi selengkapnya tentang menentukan jalur file, lihat Mereferensikan file dalam repositori sumber danMerujuk file dalam artefak.

UI yang sesuai: Perintah tab konfigurasi/Shell

Packages

(nama-tindakan) /Configuration/ Packages

(Opsional)

Bagian di mana Anda dapat menentukan repositori paket yang digunakan tindakan untuk menyelesaikan dependensi. Paket memungkinkan Anda menyimpan dan berbagi paket perangkat lunak yang digunakan untuk pengembangan aplikasi dengan aman.

Untuk informasi selengkapnya tentang paket, lihatPublikasikan dan bagikan paket perangkat lunak di CodeCatalyst.

UI yang sesuai: Tab konfigurasi/Paket

NpmConfiguration

(nama-tindakan) /Configuration/Packages/ NpmConfiguration

(Diperlukan Packages jika disertakan)

Bagian yang mendefinisikan konfigurasi untuk format paket npm. Konfigurasi ini digunakan oleh tindakan selama menjalankan alur kerja.

Untuk informasi selengkapnya tentang konfigurasi paket npm, lihatMenggunakan npm.

UI yang sesuai: Tab konfigurasi/paket/Tambahkan konfigurasi/npm

PackageRegistries

(nama-tindakan) /Configuration/Packages/NpmConfiguration/ PackageRegistries

(Diperlukan Packages jika disertakan)

Bagian di mana Anda dapat menentukan properti konfigurasi dari urutan repositori paket.

UI yang sesuai: Tab konfigurasi/paket/Tambahkan konfigurasi/npm/Tambahkan repositori paket

PackagesRepository

(nama-tindakan) /Configuration/Packages/NpmConfiguration/PackageRegistries/ PackagesRepository

(Diperlukan Packages jika disertakan)

Tentukan nama repositori CodeCatalyst paket Anda yang ingin digunakan tindakan.

Jika Anda menentukan beberapa repositori default, repositori terakhir akan diprioritaskan.

Untuk informasi selengkapnya tentang repositori paket, lihat. Package repositori

UI yang sesuai: Tab konfigurasi/Paket/Tambah Konfigurasi/NPM/Tambah repositori paket/Package repository

Scopes

(nama-tindakan) /Configuration/Packages/NpmConfiguration/PackageRegistries/ Scopes

(Opsional)

Tentukan urutan cakupan yang ingin Anda tentukan dalam registri paket Anda. Saat mendefinisikan cakupan, repositori paket yang ditentukan dikonfigurasi sebagai registri untuk semua cakupan yang terdaftar. Jika paket dengan cakupan diminta melalui klien npm, itu akan menggunakan repositori itu alih-alih default. Setiap nama lingkup harus diawali dengan “@”.

Jika Anda menyertakan cakupan utama, repositori terakhir akan diprioritaskan.

Jika Scopes dihilangkan, maka repositori paket yang ditentukan dikonfigurasi sebagai registri default untuk semua paket yang digunakan oleh tindakan.

Untuk informasi selengkapnya tentang cakupan, lihat Ruang nama Package dan paket Scoped.

UI yang sesuai: Tab Konfigurasi/Paket/Tambah Konfigurasi/NPM/Tambah repositori paket/Lingkup - opsional