기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
HealthOmics의 워크플로 린터
HealthOmics 생성 중에 자동으로 WDL 및 Nextflow DSL2 워크플로를 린트합니다. 내장 린터는 워크플로 정의 파일에서 실행 실패를 일으킬 수 있는 오류를 감지합니다. 린트 결과는 GetWorkflow 응답의 statusMessage 필드에 나타납니다.
WDL 워크플로의 경우 린트 조사 결과가 차단됩니다. 오류가 감지되면 워크플로가 ACTIVE로 전환되지 않습니다. Nextflow DSL2 워크플로의 경우 린트 조사 결과는 차단되지 않습니다. 조사 결과에 관계없이 워크플로가 ACTIVE로 전환됩니다.
HealthOmics는 워크플로를 생성하기 전에 로컬에서 실행할 수 있는 외부 린터도 제공합니다. 이러한 린터에는 추가 HealthOmics 관련 규칙이 포함될 수 있습니다.
내장 린터
HealthOmics는 CreateWorkflow 또는를 호출할 때 기본 제공 린터를 서버 측에서 실행합니다CreateWorkflowVersion.
WDL 내장 린트
WDL의 경우 워크플로를 생성할 때 HealthOmics가 자동으로 린터를 실행합니다. WDL 린팅이 차단되고 있음 - 린터가 오류를 감지하면 워크플로가 ACTIVE로 전환되지 않습니다. GetWorkflow 응답의 statusMessage 필드에서 린터 출력을 찾을 수 있습니다. 다음 CLI 명령을 사용하여 상태 출력을 검색합니다(생성한 WDL 워크플로의 워크플로 ID 사용).
aws omics get-workflow —id123456—query 'statusMessage'
Nextflow 내장 린트
HealthOmics는 지원되는 모든 Nextflow DSL2 버전에서 CreateWorkflow Nextflow 내장 엄격한 DSL2 린터(nf-lang/v2)CreateWorkflowVersion를 자동으로 실행합니다.
Nextflow v22.04(DSL2만 해당)
Nextflow v23.10
Nextflow v24.10
Nextflow v25.10
Nextflow v26.04
참고
내장 린터는 DSL2 워크플로에만 적용됩니다. DSL1 워크플로는 린트가 없습니다.
Nextflow 린터는 비차단 모드에서 작동합니다. 결과는 워크플로가 활성 상태가 되는 것을 막지 않습니다. 워크플로 생성 프로세스를 중단하지 않고 언제든지 조사 결과를 검토할 수 있습니다.
참고
내장 Nextflow 린터는 생성 시 워크플로 정의 구문을 검증합니다. 이는 런타임 동작에 의해 제어되고 영향을 미치는 Nextflow v26.04에 사용할 수 있는 엄격한 구문 구문 분석기engineSettings.syntaxVersion와 구별됩니다. 린터는 워크플로가 런타임에 사용하는 파서에 관계없이 모든 DSL2 버전에서 생성 시 실행됩니다.
Nextflow lint 출력을 검색하려면
린트 조사 결과는 GetWorkflow 응답의 statusMessage 필드에 구조화된 JSON으로 표시됩니다. 다음 CLI 명령을 사용하여 lint 출력을 검색합니다.
aws omics get-workflow --id1234567--query 'statusMessage'
다음 예제는 Nextflow 린터의 JSON 출력을 보여줍니다.
{ "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": [] }
린트 출력 필드
JSON 출력에는 다음 필드가 포함됩니다.
-
advisory- 결과의 버전별 적용 가능성을 설명합니다. Nextflow v22.04, v23.10 및 v24.10(레거시 문법)에서는 조사 결과가 권장 사항일 뿐입니다. Nextflow v25.10 및 v26.04에서 결과는 엄격한 모드 구문 요구 사항을 반영합니다. -
summary- 워크플로의 모든 파일에 대한 오류 및 경고의 집계 수를 포함합니다. -
errors- 오류 객체의 배열입니다. 각 오류에는filename,startLinestartColumn, 및가 포함됩니다message. -
warnings- 경고 객체의 배열입니다. 각 경고에는 오류 객체와 동일한 필드가 포함됩니다. -
truncated- 린트 출력이 필드 크기 제한을 초과할 때 나타나는 조건부 플래그입니다. 잘리면 경고가 먼저 삭제됩니다. 워크플로는 유효한 잘린 보고서와 함께 활성 상태로 유지됩니다.
권장 사항
보풀 조사 결과를 해결하려면 다음 워크플로를 사용하는 것이 좋습니다.
statusMessage필드의 린트 조사 결과를 검토합니다.워크플로 정의 파일의 오류를 수정합니다.
워크플로를 다시 생성하여 깨끗한 린트 보고서를 생성합니다.
외부 린터
다음과 같은 외부 린트를 사용할 수 있습니다.
-
WDL - Amazon ECR 퍼블릭 갤러리에서 WDL 린터
를 실행하는 퍼블릭 Amazon ECR 이미지입니다. -
Nextflow - Amazon ECR 퍼블릭 갤러리에서 Nextflow에 대한 Linter 규칙을
실행하는 퍼블릭 Amazon ECR 이미지입니다. GitHub의 linter-rules-for-nextflow 리포지토리에서 소스 코드에 액세스할 수 있습니다. -
CWL - 사용할 수 없습니다.
다음 목록은 내장 린터와 외부 린터의 차이점을 설명합니다.
-
내장 린터 -
CreateWorkflow및 중에 서버 측를 실행합니다CreateWorkflowVersion. WDL의 경우 조사 결과가 차단되고 있습니다. Nextflow DSL2의 경우 결과는 비차단적입니다. WDL 및 Nextflow DSL2 워크플로에만 적용됩니다. -
외부 린터 - 워크플로 생성 전에 로컬에서 실행합니다. 추가 HealthOmics별 호환성 규칙을 포함할 수 있습니다. 퍼블릭 Amazon ECR 이미지로 사용할 수 있습니다.