Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Tutorial: Kode lint menggunakan Action GitHub
Dalam tutorial ini, Anda menambahkan Super-Linter GitHub Action ke alur kerjaapp.js
Anda kemudian memperbaiki masalah yang dilaporkan dan menjalankan alur kerja lagi untuk melihat apakah perbaikan berhasil.
Topik
Prasyarat
Sebelum Anda mulai, Anda akan membutuhkan:
-
CodeCatalyst Ruang dengan yang terhubung Akun AWS. Untuk informasi selengkapnya, lihat Menciptakan ruang.
-
Proyek kosong di CodeCatalyst ruang Anda disebut
codecatalyst-linter-project
. Pilih opsi Mulai dari awal untuk membuat proyek ini.Untuk informasi selengkapnya, lihat Membuat proyek kosong di Amazon CodeCatalyst.
Langkah 1: Buat repositori sumber
Pada langkah ini, Anda membuat repositori sumber di. CodeCatalyst Anda akan menggunakan repositori ini untuk menyimpan contoh file sumber aplikasi,app.js
, untuk tutorial ini.
Untuk informasi selengkapnya tentang repositori sumber, lihat. Membuat repositori sumber
Untuk membuat repositori sumber
Buka CodeCatalyst konsol di https://codecatalyst.aws/
. -
Arahkan ke proyek Anda,
codecatalyst-linter-project
. -
Di panel navigasi, pilih Kode, lalu pilih Repositori sumber.
-
Pilih Tambahkan repositori, lalu pilih Buat repositori.
-
Dalam nama Repositori, masukkan:
codecatalyst-linter-source-repository
-
Pilih Buat.
Langkah 2: Tambahkan file app.js
Pada langkah ini, Anda menambahkan app.js
file ke repositori sumber Anda. Kode app.js
berisi fungsi yang memiliki beberapa kesalahan yang akan ditemukan linter.
Untuk menambahkan file app.js
-
Di CodeCatalyst konsol, pilih proyek Anda,
codecatalyst-linter-project
. -
Di panel navigasi, pilih Kode, lalu pilih Repositori sumber.
-
Dari daftar repositori sumber, pilih repositori Anda,.
codecatalyst-linter-source-repository
-
Di File, pilih Buat file.
-
Di kotak teks, masukkan kode berikut:
// const axios = require('axios') // const url = 'http://checkip.amazonaws.com/'; let response; /** * * Event doc: https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-lambda-proxy-integrations.html#api-gateway-simple-proxy-for-lambda-input-format * @param {Object} event - API Gateway Lambda Proxy Input Format * * Context doc: https://docs.aws.amazon.com/lambda/latest/dg/nodejs-prog-model-context.html * @param {Object} context * * Return doc: https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-lambda-proxy-integrations.html * @returns {Object} object - API Gateway Lambda Proxy Output Format * */ exports.lambdaHandler = async (event, context) => { try { // const ret = await axios(url); response = { statusCode: 200, 'body': JSON.stringify({ message: 'hello world' // location: ret.data.trim() }) } } catch (err) { console.log(err) return err } return response }
-
Untuk nama File, masukkan
app.js
. Simpan opsi default lainnya. -
Pilih Terapkan.
Anda sekarang telah membuat file bernama
app.js
.
Langkah 3: Buat alur kerja yang menjalankan tindakan Super-Linter
Pada langkah ini, Anda membuat alur kerja yang menjalankan tindakan Super-Linter saat Anda mendorong kode ke repositori sumber Anda. Alur kerja terdiri dari blok bangunan berikut, yang Anda tentukan dalam YAML file:
-
Pemicu - Pemicu ini memulai alur kerja yang dijalankan secara otomatis saat Anda mendorong perubahan ke repositori sumber Anda. Untuk informasi lebih lanjut tentang menggunakan pemicu, lihat Memulai alur kerja berjalan secara otomatis menggunakan pemicu.
-
Tindakan 'GitHub Tindakan' — Pada pemicu, tindakan Tindakan menjalankan GitHub tindakan Super-Linter, yang pada gilirannya memeriksa semua file di repositori sumber Anda. Jika linter menemukan masalah, tindakan alur kerja gagal.
Untuk membuat alur kerja yang menjalankan tindakan Super-Linter
-
Di CodeCatalyst konsol, pilih proyek Anda,
codecatalyst-linter-project
. -
Di panel navigasi, pilih CI/CD, lalu pilih Alur kerja.
-
Pilih Buat alur kerja.
-
Untuk repositori Sumber, pilih.
codecatalyst-linter-source-repository
-
Untuk Cabang, pilih
main
. -
Pilih Buat.
Hapus kode YAML sampel.
-
Tambahkan yang berikut iniYAML:
Name: codecatalyst-linter-workflow SchemaVersion: "1.0" Triggers: - Type: PUSH Branches: - main Actions: SuperLinterAction: Identifier: aws/github-actions-runner@v1 Configuration: Steps:
github-action-code
Pada kode sebelumnya, ganti
github-action-code
dengan kode tindakan Super-Linter, seperti yang diinstruksikan dalam langkah-langkah berikut dari prosedur ini. -
Buka halaman Super-Linter
di Marketplace GitHub . -
Di bawah
steps:
(huruf kecil), temukan kode dan tempelkan ke CodeCatalyst alur kerja di bawahSteps:
(huruf besar).Sesuaikan kode GitHub Action agar sesuai dengan CodeCatalyst standar, seperti yang ditunjukkan pada kode berikut.
CodeCatalyst Alur kerja Anda sekarang terlihat seperti ini:
Name: codecatalyst-linter-workflow SchemaVersion: "1.0" Triggers: - Type: PUSH Branches: - main Actions: SuperLinterAction: Identifier: aws/github-actions-runner@v1 Configuration: Steps: - name: Lint Code Base uses: github/super-linter@v4 env: VALIDATE_ALL_CODEBASE: "true" DEFAULT_BRANCH: main
-
(Opsional) Pilih Validasi untuk memastikan YAML kode valid sebelum melakukan.
-
Pilih Komit, masukkan pesan Komit, pilih
codecatalyst-linter-source-repository
Repositori Anda, dan pilih Komit lagi.Anda sekarang telah membuat alur kerja. Jalankan alur kerja dimulai secara otomatis karena pemicu yang ditentukan di bagian atas alur kerja.
Untuk melihat alur kerja yang sedang berjalan
-
Di panel navigasi, pilih CI/CD, lalu pilih Alur kerja.
-
Pilih alur kerja yang baru saja Anda buat:
codecatalyst-linter-workflow
. -
Dalam diagram alur kerja, pilih SuperLinterAction.
-
Tunggu sampai tindakan gagal. Kegagalan ini diharapkan karena linter menemukan masalah dalam kode.
-
Biarkan CodeCatalyst konsol terbuka dan pergi keLangkah 4: Perbaiki masalah yang ditemukan Super-Linter.
Langkah 4: Perbaiki masalah yang ditemukan Super-Linter
Super-Linter seharusnya menemukan masalah dalam app.js
kode, serta README.md
file yang disertakan dalam repositori sumber Anda.
Untuk memperbaiki masalah linter ditemukan
-
Di CodeCatalyst konsol, pilih tab Log, lalu pilih Lint Code Base.
Log yang dihasilkan tindakan Super-Linter ditampilkan.
-
Di log Super-Linter, gulir ke bawah ke sekitar baris 90, di mana Anda menemukan awal masalah. Mereka terlihat mirip dengan yang berikut:
/github/workspace/hello-world/app.js:3:13: Extra semicolon. /github/workspace/hello-world/app.js:9:92: Trailing spaces not allowed. /github/workspace/hello-world/app.js:21:7: Unnecessarily quoted property 'body' found. /github/workspace/hello-world/app.js:31:1: Expected indentation of 2 spaces but found 4. /github/workspace/hello-world/app.js:32:2: Newline required at end of file but not found.
-
Perbaiki
app.js
danREADME.md
di repositori sumber Anda dan komit perubahan Anda.Tip
Untuk memperbaikinya
README.md
, tambahkanmarkdown
ke blok kode, seperti ini:```markdown Setup examples: ... ```
Perubahan Anda memulai alur kerja lain berjalan secara otomatis. Tunggu alur kerja selesai. Jika Anda memperbaiki semua masalah, alur kerja harus berhasil.
Bersihkan
Bersihkan CodeCatalyst untuk menghapus jejak tutorial ini dari lingkungan Anda.
Untuk membersihkan CodeCatalyst
-
Buka CodeCatalyst konsol di https://codecatalyst.aws/
. -
Hapus
codecatalyst-linter-source-repository
. -
Hapus
codecatalyst-linter-workflow
.
Dalam tutorial ini, Anda belajar cara menambahkan Super-Linter GitHub Action ke CodeCatalyst alur kerja untuk lint beberapa kode.