

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

# Pengaruh alur kerja di HealthOmics
<a name="workflows-linter"></a>

HealthOmics secara otomatis menghilangkan alur kerja WDL dan Nextflow DSL2 selama pembuatan. Linter bawaan mendeteksi kesalahan dalam file definisi alur kerja Anda yang dapat menyebabkan kegagalan proses. Temuan serat muncul di `statusMessage` bidang **GetWorkflow** respons.

Untuk alur kerja WDL, temuan lint memblokir — alur kerja tidak beralih ke AKTIF jika kesalahan terdeteksi. Untuk alur kerja Nextflow DSL2, temuan lint tidak memblokir - alur kerja transisi ke ACTIVE terlepas dari temuannya.

HealthOmics juga menyediakan linters eksternal yang dapat Anda jalankan secara lokal sebelum Anda membuat alur kerja. Linter ini dapat mencakup HealthOmics-specific aturan tambahan.

## Built-in pelintir
<a name="workflows-linter-automatic"></a>

HealthOmics menjalankan linters internal sisi server saat Anda memanggil atau. `CreateWorkflow` `CreateWorkflowVersion`

### Linting bawaan WDL
<a name="workflows-linter-wdl-automatic"></a>

Untuk WDL, HealthOmics secara otomatis menjalankan linter saat Anda membuat alur kerja. Linting WDL memblokir — jika linter mendeteksi kesalahan, alur kerja tidak beralih ke ACTIVE. Anda dapat menemukan output linter di `statusMessage` bidang `GetWorkflow` respons. Gunakan perintah CLI berikut untuk mengambil output status (gunakan ID alur kerja alur kerja WDL yang Anda buat): 

```
aws omics get-workflow 
   —id {{123456}} 
   —query 'statusMessage'
```

### Linting bawaan Nextflow
<a name="workflows-linter-nextflow-automatic"></a>

HealthOmics menjalankan linter DSL2 ketat bawaan Nextflow (nf-lang/v2) secara otomatis selama `CreateWorkflow` dan `CreateWorkflowVersion` untuk semua versi Nextflow DSL2 yang didukung:
+ Nextflow v22.04 (hanya DSL2)
+ Nextflow v23.10
+ Nextflow v24.10
+ Nextflow v25.10
+ Alur Berikutnya v26.04

**catatan**  
Linter bawaan hanya berlaku untuk alur kerja DSL2. Alur kerja DSL1 tidak berserat.

Linter Nextflow beroperasi dalam mode non-pemblokiran. Temuan tidak mencegah alur kerja menjadi AKTIF. Anda dapat meninjau temuan kapan saja tanpa mengganggu proses pembuatan alur kerja Anda.

**catatan**  
Linter Nextflow bawaan memvalidasi sintaks definisi alur kerja Anda pada waktu pembuatan. Ini berbeda dari * parser sintaks ketat yang * tersedia untuk Nextflow v26.04, yang dikendalikan oleh `engineSettings.syntaxVersion` dan memengaruhi perilaku runtime. Linter berjalan pada waktu pembuatan di semua versi DSL2, terlepas dari parser mana yang digunakan alur kerja saat runtime.

#### Untuk mengambil output lint Nextflow
<a name="workflows-linter-nextflow-retrieve"></a>

Temuan Lint muncul sebagai JSON terstruktur di `statusMessage` bidang `GetWorkflow` respons. Gunakan perintah CLI berikut untuk mengambil output lint:

```
aws omics get-workflow --id {{1234567}} --query 'statusMessage'
```

Contoh berikut menunjukkan output JSON dari linter Nextflow:

```
{
  "advisory": "Linting findings are from the strict Nextflow DSL2 (nf-lang/v2) linter and reflect the syntax that will be required in Nextflow 25/26 strict mode. On Nextflow 23/24 (legacy grammar) findings are advisory only.",
  "summary": {
    "errors": 2,
    "filesWithErrors": 1,
    "filesWithoutErrors": 0,
    "filesFormatted": 0,
    "warnings": 0,
    "filesWithWarnings": 0,
    "filesWithoutWarnings": 2
  },
  "errors": [
    {
      "filename": "nextflow-lint-legacy.nf",
      "startLine": 24,
      "startColumn": 5,
      "message": "`for` loops are no longer supported"
    },
    {
      "filename": "nextflow-lint-legacy.nf",
      "startLine": 24,
      "startColumn": 10,
      "message": "`i` is not defined"
    }
  ],
  "warnings": []
}
```

#### Bidang keluaran Lint
<a name="workflows-linter-nextflow-fields"></a>

Output JSON berisi bidang berikut:
+ `advisory`— Menjelaskan penerapan temuan khusus versi. Pada Nextflow v22.04, v23.10, dan v24.10 (tata bahasa lawas), temuan hanya bersifat nasihat. Pada Nextflow v25.10 dan v26.04, temuan mencerminkan persyaratan sintaks mode yang ketat.
+ `summary`- Berisi jumlah agregat kesalahan dan peringatan di semua file dalam alur kerja.
+ `errors`— Array objek kesalahan. Setiap kesalahan berisi`filename`,`startLine`,`startColumn`, dan`message`.
+ `warnings`— Array objek peringatan. Setiap peringatan berisi bidang yang sama dengan objek kesalahan.
+ `truncated`— Bendera kondisional yang muncul saat keluaran lint melebihi batas ukuran bidang. Ketika pemotongan terjadi, peringatan dijatuhkan terlebih dahulu. Alur kerja tetap AKTIF dengan laporan yang dipangkas yang valid.

#### Rekomendasi
<a name="workflows-linter-nextflow-recommendations"></a>

Kami merekomendasikan alur kerja berikut untuk mengatasi temuan lint:

1. Tinjau temuan serat di `statusMessage` lapangan.

1. Perbaiki kesalahan dalam file definisi alur kerja Anda.

1. Re-create alur kerja untuk menghasilkan laporan lint bersih.

## Linter eksternal
<a name="workflows-linter-precreation"></a>

Linter eksternal berikut tersedia:
+ **WDL**— Gambar Amazon ECR publik untuk menjalankan linter [ WDL ](https://gallery.ecr.aws/aws-genomics/healthomics-linter) di Galeri Publik Amazon ECR.
+ **Nextflow**— Gambar Amazon ECR publik untuk menjalankan aturan [ Linter untuk Nextflow ](https://gallery.ecr.aws/aws-genomics/linter-rules-for-nextflow) di Galeri Publik Amazon ECR. Anda dapat mengakses kode sumber dari repositori [ linter-rules- ](https://github.com/awslabs/linter-rules-for-nextflow) for-nextflow di. GitHub
+ **CWL**— Tidak tersedia.

Daftar berikut menjelaskan perbedaan antara linter bawaan dan eksternal:
+ **Built-in linters ** — Jalankan sisi server selama dan. `CreateWorkflow` `CreateWorkflowVersion` Untuk WDL, temuan menghalangi. Untuk Nextflow DSL2, temuan tidak memblokir. Terapkan ke alur kerja WDL dan Nextflow DSL2 saja.
+ **Linter eksternal ** — Jalankan secara lokal sebelum pembuatan alur kerja. Dapat menyertakan aturan HealthOmics-specific kompatibilitas tambahan. Tersedia sebagai gambar Amazon ECR publik.