Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Membangun dan menguji tindakan YAML
Berikut ini adalah YAML definisi tindakan build dan test. Ada satu referensi untuk dua tindakan karena YAML propertinya sangat mirip.
Definisi tindakan ini ada sebagai bagian dalam file definisi alur kerja yang lebih luas. Untuk informasi selengkapnya tentang file ini, lihatDefinisi alur kerja YAML.
Pilih YAML properti dalam kode berikut untuk melihat deskripsi jika itu.
catatan
Sebagian besar YAML properti yang mengikuti memiliki elemen UI yang sesuai di editor visual. Untuk mencari elemen UI, gunakan Ctrl+F. Elemen akan terdaftar dengan YAML properti 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"
ExportAuthorizationToken: true | false
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
(action-name
/Identifier)
Mengidentifikasi tindakan. Jangan mengubah properti ini kecuali Anda ingin mengubah versi. Untuk informasi selengkapnya, lihat Menentukan versi tindakan yang akan digunakan.
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
(action-name
/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. Tindakan pengurutan
UI yang sesuai: Tab masukan/Tergantung pada - opsional
Compute
(action-name
/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
(action-name
/Compute/Jenis)
(Diperlukan Compute jika disertakan)
Jenis mesin komputasi. Anda dapat menggunakan salah satu nilai berikut:
-
EC2(editor visual) atau
EC2
(YAMLeditor)Dioptimalkan untuk fleksibilitas selama aksi berjalan.
-
Lambda (editor visual) atau
Lambda
(YAMLeditor)Kecepatan start-up aksi yang dioptimalkan.
Untuk informasi selengkapnya tentang jenis komputasi, lihatJenis komputasi.
UI yang sesuai: Tab konfigurasi/Jenis komputasi
Fleet
(action-name
/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 lebih lanjut 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
(action-name
/Timeout)
(Opsional)
Tentukan jumlah waktu dalam menit (YAMLeditor), 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 di CodeCatalyst. Batas waktu default sama dengan batas waktu maksimum.
UI yang sesuai: Tab konfigurasi/Timeout - opsional
Environment
(action-name
/Environment)
(Opsional)
Tentukan CodeCatalyst lingkungan yang akan digunakan dengan tindakan. Tindakan terhubung ke Amazon Akun AWS dan opsional VPC yang ditentukan di lingkungan yang dipilih. Tindakan menggunakan IAM peran default yang ditentukan di lingkungan untuk terhubung ke Akun AWS, dan menggunakan IAM peran yang ditentukan dalam VPCkoneksi Amazon untuk terhubung ke AmazonVPC.
catatan
Jika IAM peran default tidak memiliki izin yang diperlukan oleh tindakan, Anda dapat mengonfigurasi tindakan untuk menggunakan peran yang berbeda. Untuk informasi selengkapnya, lihat Mengubah IAM peran suatu tindakan.
Untuk informasi selengkapnya tentang lingkungan, lihat Menyebarkan ke Akun AWS dan VPCs danPembuatan lingkungan.
UI yang sesuai: Tab konfigurasi/Lingkungan
Name
(action-name
/Environment/Name)
(Opsional)
Tentukan nama lingkungan yang ada yang ingin Anda kaitkan dengan tindakan.
UI yang sesuai: Tab konfigurasi/Lingkungan
Connections
(action-name
/Environment/Connections)
(Opsional)
Tentukan koneksi akun untuk dikaitkan dengan tindakan. Anda dapat menentukan maksimum satu koneksi akun di bawahEnvironment
.
Jika Anda tidak menentukan koneksi akun:
-
Tindakan menggunakan Akun AWS koneksi dan IAM peran default yang ditentukan di lingkungan di CodeCatalyst konsol. Untuk informasi tentang menambahkan koneksi akun dan IAM peran default ke lingkungan, lihatPembuatan lingkungan.
-
IAMPeran default harus menyertakan kebijakan dan izin yang diperlukan oleh tindakan. Untuk menentukan kebijakan dan izin tersebut, lihat deskripsi properti Peran dalam dokumentasi YAML definisi tindakan.
Untuk informasi selengkapnya tentang koneksi akun, lihatMemungkinkan akses ke AWS sumber daya yang terhubung Akun AWS. Untuk informasi tentang menambahkan koneksi akun ke lingkungan, lihatPembuatan lingkungan.
UI yang sesuai: tab/Environment/What Konfigurasi masuk my-environment
? /menu tiga titik/Beralih peran
Name
(action-name
/Environment/Connections/Name)
(Diperlukan Connections jika disertakan)
Tentukan nama koneksi akun.
UI yang sesuai: tab/Environment/What Konfigurasi masuk my-environment
? /menu tiga titik/Beralih peran
Role
(action-name
/Environment/Connections/Role)
(Diperlukan Connections jika disertakan)
Tentukan nama IAM peran yang digunakan tindakan ini untuk mengakses dan beroperasi di AWS layanan seperti Amazon S3 dan Amazon. ECR Pastikan peran ini ditambahkan ke Akun AWS koneksi Anda di ruang Anda. Untuk menambahkan IAM peran ke koneksi akun, lihatMenambahkan IAM peran ke koneksi akun.
Jika Anda tidak menentukan IAM peran, maka tindakan tersebut menggunakan IAM peran default yang tercantum di lingkungan di CodeCatalyst konsol. Jika Anda menggunakan peran default di lingkungan, pastikan itu memiliki kebijakan berikut.
catatan
Anda dapat menggunakan CodeCatalystWorkflowDevelopmentRole-
peran dengan tindakan ini. Untuk informasi selengkapnya tentang peran ini, silakan lihat Membuat CodeCatalystWorkflowDevelopmentRole-spaceNameperan untuk akun dan ruang Anda. Memahami bahwa spaceName
CodeCatalystWorkflowDevelopmentRole-
peran tersebut memiliki izin akses penuh yang dapat menimbulkan risiko keamanan. Kami menyarankan Anda hanya menggunakan peran ini dalam tutorial dan skenario di mana keamanan kurang menjadi perhatian. spaceName
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/Environment/What Konfigurasi masuk my-environment
? /menu tiga titik/Beralih peran
Caching
(action-name
/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 antara alur kerja berjalan.
UI yang sesuai: Tab konfigurasi/File caching - opsional
FileCaching
(action-name
/Caching/FileCaching)
(Opsional)
Bagian yang menentukan konfigurasi untuk urutan cache.
UI yang sesuai: Tab konfigurasi/File caching - opsional/Tambahkan cache
nama-kunci-1
(action-name
/Caching/FileCaching/key-name-1
)
(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/File caching - optional/Add Cache konfigurasi/Kunci
Path
(action-name
/Caching/FileCaching/key-name-1
/Path)
(Opsional)
Tentukan jalur terkait untuk cache Anda.
UI yang sesuai: tab/File caching - optional/Add Cache konfigurasi/Jalur
RestoreKeys
(action-name
/Caching/FileCaching/key-name-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: Cache tab/File caching - optional/Add konfigurasi/Tombol Restore - opsional
Inputs
(action-name
/Inputs)
(Opsional)
Inputs
Bagian 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. Untuk detailnya, lihat Contoh: Merujuk file dalam beberapa artefak.
UI yang sesuai: Tab input
Sources
(action-name
/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 repositori sumber ke alur kerja.
UI yang sesuai: tidak ada
Artifacts - input
(action-name
/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 artefak dan file antar tindakan.
catatan
Jika Artefacts - daftar drop-down opsional tidak tersedia (editor visual), atau jika Anda mendapatkan kesalahan saat Anda memvalidasi YAML (YAMLeditor) Anda, itu mungkin karena tindakan hanya mendukung satu input. Dalam hal ini, coba hapus input sumber.
UI yang sesuai: Input tab/Artefak - opsional
Variables - input
(action-name
/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, lihatMenggunakan variabel dalam alur kerja.
UI yang sesuai: Input tab/Variabel - opsional
Outputs
(action-name
/Outputs)
(Opsional)
Mendefinisikan data yang dihasilkan oleh tindakan selama menjalankan alur kerja.
UI yang sesuai: Tab keluaran
Artifacts - output
(action-name
/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 artefak dan file antar tindakan.
UI yang sesuai: Tab keluaran/Artefak
Name
(action-name
/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 artefak dan file antar tindakan.
UI yang sesuai: Keluaran tab/Artifacts/New keluaran/Bangun nama artefak
Files
(action-name
/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 bernama
directory
, gunakan"directory/**/*"
. Pola**
glob menunjukkan untuk mencocokkan sejumlah subdirektori. -
Untuk menentukan semua file dalam direktori bernama
directory
, 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 lebih lanjut tentang karakter khusus, lihatPedoman dan konvensi sintaks.
Untuk informasi selengkapnya tentang artefak, termasuk contoh, lihatBerbagi artefak dan file antar tindakan.
catatan
Anda mungkin perlu menambahkan awalan ke jalur file untuk menunjukkan artefak atau sumber mana yang akan menemukannya. Untuk informasi selengkapnya, silakan lihat Merujuk file repositori sumber dan Merujuk file dalam artefak.
UI yang sesuai: Output tab/Artifacts/New output/File yang dihasilkan oleh build
Variables - output
(action-name
/Outputs/Variables)
(Opsional)
Tentukan variabel yang ingin Anda ekspor tindakan sehingga tersedia untuk digunakan oleh tindakan selanjutnya.
Untuk informasi selengkapnya tentang variabel, termasuk contoh, lihatMenggunakan variabel dalam alur kerja.
UI yang sesuai: Tab keluaran/Variabel/Tambahkan variabel
variabel-nama-1
(action-name
/Outputs/Variables/variable-name-1
)
(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, lihatMenggunakan variabel dalam alur kerja.
UI yang sesuai: Output tab/Variables/Add variabel/Nama
AutoDiscoverReports
(action-name
/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
(action-name
/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
(action-name
/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
(action-name
/Outputs/AutoDiscoverReports/IncludePaths)
Atau
(action-name
/Outputs/Reports/report-name-1
/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 lebih lanjut 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/Reports/Auto-discover reports/Include/excludeJalur keluaran/Sertakan jalur
-
Output tab/Reports/Manually mengkonfigurasi laporan/
report-name-1
/Sertakan jalur/kecualikan jalur/ Sertakan jalur
ExcludePaths
(action-name
/Outputs/AutoDiscoverReports/ExcludePaths)
Atau
(action-name
/Outputs/Reports/report-name-1
/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 lebih lanjut tentang karakter khusus, lihatPedoman dan konvensi sintaks.
UI yang sesuai:
-
tab/Reports/Auto-discover reports/Include/excludeJalur keluaran/Kecualikan jalur
-
Output tab/Reports/Manually mengkonfigurasi laporan/
report-name-1
/Sertakan/kecualikan jalur/ Kecualikan jalur
SuccessCriteria
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria)
Atau
(action-name
/Outputs/Reports/report-name-1
/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
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/PassRate)
Atau
(action-name
/Outputs/Reports/report-name-1
/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/Reports/Success Kriteria keluaran/Tingkat kelulusan
LineCoverage
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/LineCoverage)
Atau
(action-name
/Outputs/Reports/report-name-1
/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/Reports/Success Kriteria keluaran/Cakupan garis
BranchCoverage
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/BranchCoverage)
Atau
(action-name
/Outputs/Reports/report-name-1
/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/Reports/Success Kriteria keluaran/Cakupan cabang
Vulnerabilities
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/Vulnerabilities)
Atau
(action-name
/Outputs/Reports/report-name-1
/SuccessCriteria/Vulnerabilities)
(Opsional)
Tentukan jumlah maksimum dan tingkat keparahan kerentanan yang diizinkan dalam SCA laporan 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:
CRITICAL
HIGH
,MEDIUM
,,LOW
,INFORMATIONAL
.Misalnya, jika Anda memilih
HIGH
, makaHIGH
danCRITICAL
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 SCA laporan. Untuk informasi lebih lanjut tentang SCA laporan, 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/Reports/Success Kriteria keluaran/Kerentanan
StaticAnalysisBug
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisBug)
Atau
(action-name
/Outputs/Reports/report-name-1
/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:
CRITICAL
HIGH
,MEDIUM
,,LOW
,INFORMATIONAL
.Misalnya, jika Anda memilih
HIGH
, makaHIGH
danCRITICAL
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/Reports/Success Kriteria keluaran/Bug
StaticAnalysisSecurity
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisSecurity)
Atau
(action-name
/Outputs/Reports/report-name-1
/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:
CRITICAL
HIGH
,MEDIUM
,,LOW
,INFORMATIONAL
.Misalnya, jika Anda memilih
HIGH
, makaHIGH
dan kerentananCRITICAL
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 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/Reports/Success Kriteria keluaran/Kerentanan keamanan
StaticAnalysisQuality
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisQuality)
Atau
(action-name
/Outputs/Reports/report-name-1
/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:
CRITICAL
HIGH
,MEDIUM
,,LOW
,INFORMATIONAL
.Misalnya, jika Anda memilih
HIGH
, makaHIGH
dan masalahCRITICAL
kualitas akan dihitung. -
Jumlah maksimum masalah kualitas 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 masalah kualitas 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/Reports/Success Kriteria keluaran/Masalah kualitas
StaticAnalysisFinding
(action-name
/Outputs/AutoDiscoverReports/SuccessCriteria/StaticAnalysisFinding)
Atau
(action-name
/Outputs/Reports/report-name-1
/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:
CRITICAL
HIGH
,MEDIUM
,,LOW
,INFORMATIONAL
.Misalnya, jika Anda memilih
HIGH
, makaHIGH
danCRITICAL
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/Reports/Success Kriteria keluaran/Temuan
Reports
(action-name
/Outputs/Reports )
(Opsional)
Bagian yang menentukan konfigurasi untuk laporan pengujian.
UI yang sesuai: Tab keluaran/Laporan
laporan-nama-1
(action-name
/Outputs/Reports/laporan-nama-1)
(Diperlukan Reports jika disertakan)
Nama yang ingin Anda berikan ke CodeCatalyst laporan yang akan dihasilkan dari laporan mentah Anda.
UI yang sesuai: Output tab/Reports/Manually mengkonfigurasi laporan/Nama laporan
Format
(action-name
/Outputs/Reports/report-name-1
/Format)
(Diperlukan Reports jika disertakan)
Tentukan format file yang Anda gunakan untuk laporan Anda. Nilai yang mungkin adalah sebagai berikut.
-
Untuk laporan pengujian:
-
Untuk MentimunJSON, tentukan Mentimun (editor visual) atau
CUCUMBERJSON
(YAMLeditor). -
Untuk JUnitXML, tentukan JUnit(editor visual) atau
JUNITXML
(YAMLeditor). -
Untuk NUnitXML, tentukan NUnit(editor visual) atau
NUNITXML
(YAMLeditor). -
Untuk NUnit 3XML, tentukan NUnit3(editor visual) atau
NUNIT3XML
(YAMLeditor). -
Untuk Visual StudioTRX, tentukan Visual Studio TRX (editor visual) atau
VISUALSTUDIOTRX
(YAMLeditor). -
Untuk TestNGXML, tentukan TestNG (editor visual) atau
TESTNGXML
(editor). YAML
-
-
Untuk laporan cakupan kode:
-
Untuk CloverXML, tentukan Clover (editor visual) atau
CLOVERXML
(YAMLeditor). -
Untuk CoberturaXML, tentukan Cobertura (editor visual) atau
COBERTURAXML
(editor). YAML -
Untuk JaCoCo XML, tentukan JaCoCo(editor visual) atau
JACOCOXML
(YAMLeditor). -
Untuk SimpleCov JSON dihasilkan oleh simplecov
, bukan simplecov-json, tentukan Simplecov (editor visual) atau (editor). SIMPLECOV
YAML
-
-
Untuk laporan analisis komposisi perangkat lunak (SCA):
-
UntukSARIF, tentukan SARIF(editor visual) atau
SARIFSCA
(YAMLeditor).
-
UI yang sesuai: Keluaran tab/Reports/Manually configure reports/Add/configure laporan/report-name-1
/Jenis laporan dan format Laporan
Configuration
(action-name
/Configuration)
(Wajib) Bagian di mana Anda dapat menentukan properti konfigurasi tindakan.
UI yang sesuai: Tab konfigurasi
Container
(action-name
/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 AmazonECR, 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
(action-name
/Configuration/Container/Registry)
(Diperlukan Container
jika disertakan)
Tentukan registri tempat gambar Anda disimpan. Nilai yang valid meliputi:
-
CODECATALYST
(YAMLpenyunting)Gambar disimpan dalam CodeCatalyst registri.
-
Docker Hub (editor visual) atau
DockerHub
(YAMLeditor)Gambar disimpan dalam registri gambar Docker Hub.
-
Registri lainnya (editor visual) atau
Other
(YAMLeditor)Gambar disimpan dalam registri gambar khusus. Registri apa pun yang tersedia untuk umum dapat digunakan.
-
Amazon Elastic Container Registry (editor visual) atau
ECR
(YAMLeditor)Gambar disimpan dalam repositori gambar Amazon Elastic Container Registry. Untuk menggunakan gambar di ECR repositori Amazon, tindakan ini memerlukan akses ke Amazon. ECR Untuk mengaktifkan akses ini, Anda harus membuat IAMperan yang mencakup izin berikut dan kebijakan kepercayaan khusus. (Anda dapat mengubah peran yang ada untuk menyertakan izin dan kebijakan, jika Anda mau.)
IAMPeran harus menyertakan izin berikut dalam kebijakan perannya:
-
ecr:BatchCheckLayerAvailability
-
ecr:BatchGetImage
-
ecr:GetAuthorizationToken
-
ecr:GetDownloadUrlForLayer
IAMPeran harus mencakup 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 IAM peran, lihat Membuat peran menggunakan kebijakan kepercayaan khusus (konsol) di Panduan IAM Pengguna.
Setelah Anda membuat peran, Anda harus menetapkannya ke tindakan melalui lingkungan. Untuk informasi selengkapnya, lihat Mengaitkan lingkungan dengan tindakan.
-
UI yang sesuai: Amazon Elastic Container Registry, Docker Hub, dan opsi registri lainnya
Image
(action-name
/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 ECR registri Amazon, atur gambar ke ECR registri AmazonURI.
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) ECR, URL image (jika registri adalah Amazon Elastic Container Registry), dan URL Image (jika registri adalah Registri lain).
Steps
(action-name
/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 Merujuk file repositori sumber danMerujuk file dalam artefak.
UI yang sesuai: Perintah tab konfigurasi/Shell
Packages
(action-name
/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/Paket Konfigurasi
NpmConfiguration
(action-name
/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: Konfigurasi tab/Packages/Add konfigurasi/npm
PackageRegistries
(action-name
/Configuration/Packages/NpmConfiguration/PackageRegistries)
(Diperlukan Packages jika disertakan)
Bagian di mana Anda dapat menentukan properti konfigurasi dari urutan repositori paket.
UI yang sesuai: tab/Packages/Add configuration/npm Konfigurasi/Tambahkan repositori paket
PackagesRepository
(action-name
/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 lebih lanjut tentang repositori paket, lihat. Package repositori
UI yang sesuai: Repositori tab/Packages/Add configuration/npm/Add paket konfigurasi/Package repository
Scopes
(action-name
/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: Repositori/Cakupan tab/Packages/Add configuration/npm/Add paket konfigurasi - opsional
ExportAuthorizationToken
(action-name
/Configuration/Packages/ExportAuthorizationToken)
(Opsional)
Mengaktifkan atau menonaktifkan fitur token otorisasi ekspor. Jika diaktifkan, token otorisasi yang diekspor dapat digunakan untuk mengonfigurasi manajer paket secara manual untuk mengautentikasi dengan CodeCatalyst repositori paket. Anda dapat menggunakan token sebagai variabel lingkungan yang dapat direferensikan dalam tindakan Anda.
Nilai-nilai yang valid adalah true
atau false
.
Jika ExportAuthorizationToken
dihilangkan, defaultnya adalah. false
Untuk informasi selengkapnya tentang token otorisasi ekspor, lihatMenggunakan token otorisasi dalam tindakan alur kerja.
UI yang sesuai: Tab konfigurasi/Paket/Token otorisasi ekspor