Tindakan GitHub untuk menjalankan analisis statis kodasi pada lebih dari 40 bahasa yang didukung dan mengembalikan masalah yang diidentifikasi dalam kode.
Codacy adalah alat peninjauan kode otomatis yang memudahkan untuk memastikan tim Anda menulis kode berkualitas tinggi dengan menganalisis lebih dari 40 bahasa pemrograman seperti PHP, JavaScript, Python, Java, dan Ruby. Codacy memungkinkan Anda untuk menentukan aturan kualitas, pola kode, dan pengaturan kualitas Anda sendiri yang ingin Anda tegakkan untuk mencegah masalah pada basis kode Anda.
Tindakan GitHub Codacy mendukung skenario berikut:
Secara default, tindakan kodasi gitub:

Untuk menggunakan tindakan GitHub dengan pengaturan default, tambahkan yang berikut ke file .github/workflows/codacy-analysis.yaml di repositori Anda:
name : Codacy Analysis CLI
on : ["push"]
jobs :
codacy-analysis-cli :
name : Codacy Analysis CLI
runs-on : ubuntu-latest
steps :
- name : Checkout code
uses : actions/checkout@main
- name : Run Codacy Analysis CLI
uses : codacy/codacy-analysis-cli-action@master Integrasi tindakan kodasi GitHub dengan pemindaian kode github untuk menampilkan hasil analisis pada repositori Anda di bawah keamanan tab, peringatan pemindaian kode halaman.
Dalam skenario ini, tindakan github:
master atau cabang main dengan menjalankan semua alat analisis kode statis yang didukung untuk bahasa yang ditemukan di repositori Anda.results.sarif file. Sarif, yang kemudian diunggah ke GitHub. 
Untuk menggunakan tindakan GitHub dengan integrasi pemindaian kode github, tambahkan yang berikut ke file .github/workflows/codacy-analysis.yaml di repositori Anda:
name : Codacy Security Scan
on :
push :
branches : [ "master", "main" ]
pull_request :
branches : [ "master", "main" ]
jobs :
codacy-security-scan :
name : Codacy Security Scan
runs-on : ubuntu-latest
steps :
- name : Checkout code
uses : actions/checkout@main
- name : Run Codacy Analysis CLI
uses : codacy/codacy-analysis-cli-action@master
with :
output : results.sarif
format : sarif
# Adjust severity of non-security issues
gh-code-scanning-compat : true
# Force 0 exit code to allow SARIF file generation
# This will hand over control about PR rejection to the GitHub side
max-allowed-issues : 2147483647
# Upload the SARIF file generated in the previous step
- name : Upload SARIF results file
uses : github/codeql-action/upload-sarif@main
with :
sarif_file : results.sarif Gunakan tindakan GitHub untuk menjalankan salah satu alat sisi klien yang didukung oleh kodasi dan unggah hasil analisis ke kodasi.
Dalam skenario ini, tindakan github:
Setelah ini, Codacy menampilkan hasil analisis komitmen Anda dan permintaan tarik pada dasbor UI, dan secara opsional melaporkan status analisis secara langsung pada permintaan tarikan GitHub Anda.

Untuk menggunakan tindakan GitHub dengan integrasi kodasi:
Pada kodasi, aktifkan alat sisi klien yang dimasukkan dan konfigurasikan pola kode yang sesuai pada halaman Pola Kode Repositori Anda.
Pada kodasi, aktifkan analisis jalankan melalui server build di pengaturan repositori Anda, tab umum , analisis repositori .
Pengaturan ini memungkinkan kodasi untuk menunggu hasil analisis lokal sebelum melanjutkan analisis komit Anda.
Siapkan token API untuk memungkinkan tindakan GitHub mengotentikasi pada kodasi:
CODACY_PROJECT_TOKEN .CODACY_API_TOKEN .
️ Jangan pernah menulis token API ke file konfigurasi Anda dan menjaga token API Anda terlindungi dengan baik, karena mereka memberikan izin pemilik untuk proyek Anda tentang kodasi.
Tambahkan yang berikut ke file .github/workflows/codacy-analysis.yaml di repositori Anda, di mana <CLIENT_SIDE_TOOL_NAME> adalah nama alat sisi klien yang dikemas oleh kodasi CLI akan berjalan secara lokal, atau tidak menentukan parameter ini untuk menjalankan semua alat yang didukung oleh kodasi:
name : Codacy Analysis CLI
on : ["push"]
jobs :
codacy-analysis-cli :
name : Codacy Analysis CLI
runs-on : ubuntu-latest
steps :
- name : Checkout code
uses : actions/checkout@main
- name : Run Codacy Analysis CLI
uses : codacy/codacy-analysis-cli-action@master
with :
tool : <CLIENT_SIDE_TOOL_NAME>
project-token : ${{ secrets.CODACY_PROJECT_TOKEN }}
# or
# api-token: ${{ secrets.CODACY_API_TOKEN }}
upload : true
max-allowed-issues : 2147483647Jika Anda menjalankan alat sisi klien GO, Anda juga harus mengatur lingkungan GO sebelum menjalankan analisis kodasi CLI Github Action. Kami merekomendasikan menggunakan tindakan github setup-go untuk ini:
- name : set-up go
uses : actions/setup-go@v3
with :
# Go version currently supported by Codacy
go-version : 1.19.1Secara opsional, tentukan parameter berikut untuk menjalankan alat sisi klien mandiri :
run-gosec : " true "
run-staticcheck : " true "Karena orkestrasi kompleks dari alat-alat clang-ridy dan palsu, tindakan dapat menerima file output dari alat dan mengunggahnya ke Codacy:
clang-tidy-output : " path/to/output "
faux-pas-output : " path/to/output "Jika Anda hanya ingin menjalankan alat sisi klien mandiri dan tidak semua alat containered yang didukung oleh Codacy, tentukan:
run-docker-tools : " false "Secara opsional, aktifkan integrasi GitHub pada kodasi untuk memiliki informasi tentang analisis file yang diubah secara langsung pada permintaan tarik Anda.
Tindakan GitHub Codacy adalah pembungkus untuk menjalankan CLI analisis kodasi. Untuk daftar parameter input yang didukung, lihat action.yml . Untuk meneruskan parameter input ke tindakan, perbarui yang terkait with peta.
Contoh berikut membatasi analisis ke direktori src dan memberikan detail tambahan dengan mengatur verbose ke true .
- name : Run Codacy Analysis CLI
uses : codacy/codacy-analysis-cli-action@master
with :
directory : src
verbose : true Kami menyukai kontribusi, umpan balik, dan laporan bug. Jika Anda mengalami masalah saat menjalankan tindakan ini, buka masalah di repositori ini.