ワークフロー説明言語(WDL)は、人間が読みやすく書かれた構文を使用して、データ処理ワークフローを記述するためのオープン標準です。 WDLは、分析タスクを定義し、ワークフローでそれらを接続し、実行を並列化することを簡単にします。この言語は、プロダクションシステムのプログラマー、アナリスト、オペレーターなど、あらゆる種類のユーザーがアクセスしやすく理解できるように努めています。この言語は、散布団や条件付き実行などの一般的なパターンを簡単に表現できるようにします。 WDLは移植性のために設計されており、HPCシステムやクラウドプラットフォームなど、さまざまな環境で実行されることから選択できるいくつかの実装があります。
WDLバージョン化は、セマンティックバージョンのコンベンションに従います。
WDL言語には2つのバージョンがあります(例: 1.2
)。マイナー(2番目の)バージョン数(例: 1.1
)の増加は、言語または標準ライブラリ関数の1.2
または非壊れた変更を示しています。メジャー(最初の)バージョン数(例えば、 1.0
)の増加は2.0
壊れた変化が行われたことを示しています。
WDL仕様には3つの数字のバージョンがあります(例: 1.2.0
)。仕様バージョンは言語バージョンを追跡しますが、タイプミスの修正、追加の例、またはあいまいな言語の非破壊的な明確化を含むパッチリリース(パッチへの変更、または3番目のバージョン番号によって示される)もあります。
WDL仕様には、実行エンジンを実装したいものを含む、ユーザーと開発者に関連するすべての情報が含まれています。このGitHubプロジェクトは、最新バージョンの仕様のブランチを主要なブランチとして使用するため、このプロジェクトのルートURLにアクセスする限り、常に現在の仕様のバージョンが表示されます。ユーザーは、絶対に必要な場合を除き、現在のバージョンの仕様を使用することを強くお勧めします。
このブランチは、WDL言語仕様のバージョン1.2用です。このブランチに対して、新しい非破壊機能のすべての開発を行う必要があります。
スペックの以前のバージョンはこちらにあります:
WDLの作成の初期努力に対応するドラフトバージョンが多数あります。これらは機能的な仕様ですが、機能が完全に完全に見なされるべきではなく、多くのバグや不規則性が含まれています。
仕様の次のメジャーバージョンは2.0です。新しいブレイク機能のすべての開発は、そのブランチに対して行う必要があります。
WDLコミュニティは、繁栄するための関与に依存しています。質問をし、他のユーザーを助け、できる限り貢献することをお勧めします。相互作用は主にGitHubとSlackで発生します。 WDLコミュニティには、発表が行われる公式ブログもあります。
#support
チャンネルで質問してください。以下は、オープンソースWDLワークフローのコレクションです。必要なWDLタスクまたはワークフローは、これらのリポジトリのいずれかですでに利用可能である場合があります。または、同様のワークフローを見つけてニーズに合わせてカスタマイズする場合があります。
WDLには公式の実装はありません。第三者は、WDLワークフローとタスクを解釈および実行するインストール可能なソフトウェアまたはホストされたプラットフォームを提供することに依存しています。 WDLにはまだ公式のコンプライアンスプログラムまたは認証プロセスがありませんが、実装者は、実装全体のワークフローの移植性を最大化するために、仕様に従ってツールを設計することが期待されています。それにもかかわらず、実装者は追加のオプション機能を提供する場合があります。利用可能な実行オプションとサポートに関する情報については、各ツール/プラットフォームに関連付けられたドキュメントをご覧ください。
実装 | インストールが必要です | ローカル実行 | HPC | 雲 |
---|---|---|---|---|
AWS Healthomics | いいえ | いいえ | いいえ | aws |
クロムウェル * | はい | はい | 多くの | AWSバッチ、Azure、GCP |
dxcompiler | はい | いいえ | いいえ | dnanexus |
miniwdl | はい | はい | スラー | AWSバッチ |
テラ | いいえ | いいえ | いいえ | Azure、GCP |
* Cromwellを使用してGCPでWDLワークフローを起動するためのスクリプトであるWDLランナーも参照してください
IDE | 道具 |
---|---|
emacs | Poly-WDL |
emacs | wdl-mode |
ジェットブレイン | ウィンスタンリー |
崇高 | WDL構文ハイライター |
vim | VIM-WDL |
ビジュアルスタジオコード | WDL構文ハイライター |
WDLは、コミュニティの貢献を通じてのみ進みます。議論に参加して問題を提出することは、関与するための優れた方法ですが、仕様の変更を実装するためのヘルプも必要です。貢献方法の詳細については、寄稿ガイドをお読みください。
提出されたプルリクエストは、RFCプロセスの対象となります。仕様に提出された変更を確認したい場合は、プロセスを確認して慣れさせてください。
WDL仕様は完全にコミュニティ駆動型です。ただし、ガバナンス委員会によって監督されています。 WDLガバナンスに参加することに興味がある場合は、Slackに参加して、 #general
チャンネルにメッセージを投稿してください。