ワークフローバージョンを作成する - AWS HealthOmics

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ワークフローバージョンを作成する

ワークフローの新しいバージョンを作成するときは、新しいバージョンの設定値を指定する必要があります。ワークフローから設定値を継承しません。

バージョンを作成するときは、このワークフローに固有のバージョン名を指定します。HealthOmics がバージョンを作成した後で名前を変更することはできません。

バージョン名は文字または数字で始まり、大文字と小文字、数字、ハイフン、ピリオド、アンダースコアを含めることができます。最大長は 64 文字です。例えば、version1、version2、version3 などの単純な命名スキームを使用できます。ワークフローバージョンを 2.7.0、2.7.1、2.7.2 などの独自の内部バージョニング規則と一致させることもできます。

必要に応じて、バージョンの説明フィールドを使用して、このバージョンに関するメモを追加します。例: Fix for syntax error in workflow definition

注記

バージョン名に個人を特定できる情報 (PII) を含めないでください。バージョン名はワークフローバージョン ARN に表示されます。

HealthOmics はワークフローバージョンに一意の ARN を割り当てます。ARN は、ワークフロー ID とバージョン名の組み合わせに基づいて一意です。

警告

ワークフローバージョンを削除すると、HealthOmics ではバージョン名を別のワークフローバージョンに再利用できます。ベストプラクティスは、バージョン名を再利用しないことです。名前を再使用する場合、ワークフローと各バージョンには、出典に使用できる一意の UUID があります。

コンソールを使用してワークフローバージョンを作成する

ワークフローバージョンを作成する手順
  1. HealthOmics コンソールを開きます。

  2. 必要に応じて、左側のナビゲーションペイン (≡) を開きます。プライベートワークフローを選択します。

  3. プライベートワークフローページで、新しいバージョンのワークフローを選択します。

  4. ワークフローの詳細ページで、新しいバージョンの作成を選択します。

  5. バージョンの作成ページで、次の情報を入力します。

    1. バージョン名: ワークフロー全体で一意のワークフローバージョンの名前を入力します。

    2. バージョンの説明 (オプション): 説明フィールドを使用して、このバージョンに関するメモを追加できます。

  6. ワークフロー定義パネルで、次の情報を指定します。

    1. ワークフロー言語 (オプション): ワークフローバージョンの仕様言語を選択します。それ以外の場合、HealthOmics はワークフロー定義から言語を決定します。

    2. ワークフロー定義ソースでは、Git ベースのリポジトリ、Amazon S3 の場所、またはローカルドライブから定義フォルダをインポートすることを選択します。

      1. リポジトリサービスからのインポートの場合:

        注記

        HealthOmics は、、GitHub、GitLab、、 のパブリックリポジトリとプライベートリポジトリをサポートしていますBitbucketGitHub self-managedGitLab self-managed。

        1. 接続を選択して、 AWS リソースを外部リポジトリに接続します。接続を作成するには、「」を参照してください外部コードリポジトリに接続する

          注記

          TLV リージョンのお客様は、ワークフローを作成するにはIAD、 (us-east-1) リージョンで接続を作成する必要があります。

        2. 完全なリポジトリ ID で、リポジトリ ID を user-name/repo-name として入力します。このリポジトリ内のファイルにアクセスできることを確認します。

        3. ソースリファレンス (オプション) に、リポジトリソースリファレンス (ブランチ、タグ、またはコミット ID) を入力します。ソース参照が指定されていない場合、HealthOmics はデフォルトのブランチを使用します。

        4. ファイルパターンを除外 で、特定のフォルダ、ファイル、または拡張子を除外するファイルパターンを入力します。これにより、リポジトリファイルをインポートする際のデータサイズを管理できます。最大 50 パターンがあり、パターンは glob パターン構文に従う必要があります。例:

          1. tests/

          2. *.jpeg

          3. large_data.zip

      2. S3 から定義フォルダを選択する:

        1. zip 形式のワークフロー定義フォルダを含む Amazon S3 の場所を入力します。Amazon S3 バケットは、ワークフローと同じリージョンにある必要があります。

        2. アカウントが Amazon S3 バケットを所有していない場合は、S3 バケット所有者の AWS アカウント ID にバケット所有者のアカウント ID を入力します。 S3 この情報は、HealthOmics がバケットの所有権を検証できるようにするために必要です。

      3. ローカルソースから定義フォルダを選択する:

        1. 圧縮ワークフロー定義フォルダのローカルドライブの場所を入力します。

    3. メインワークフロー定義ファイルパス (オプション): 圧縮されたワークフロー定義フォルダまたはリポジトリから ファイルへのmainファイルパスを入力します。ワークフロー定義フォルダにファイルが 1 つしかない場合、またはメインファイルの名前が「main」の場合、このパラメータは必要ありません。

  7. README ファイル (オプション) パネルで、README ファイルのソースを選択し、次の情報を指定します。

    • リポジトリサービスからインポートするには、README ファイルパスで、リポジトリ内の README ファイルへのパスを入力します。

    • S3 からファイルを選択するには、S3 の README ファイルに S3README ファイルの Amazon S3 URI を入力します。

    • ローカルソースからファイルを選択: README で - オプションで、ファイルを選択 を選択して、アップロードするマークダウン (.md) ファイルを選択します。

  8. デフォルトの実行ストレージ設定パネルで、このワークフローを使用する実行のデフォルトの実行ストレージタイプと容量を指定します。

    1. 実行ストレージタイプ: 一時実行ストレージのデフォルトとして静的ストレージと動的ストレージのどちらを使用するかを選択します。デフォルトは静的ストレージです。

    2. Run storage capacity (オプション): 静的実行ストレージタイプでは、このワークフローに必要なデフォルトの実行ストレージ量を入力できます。このパラメータのデフォルト値は 1200 GiB です。実行を開始するときに、これらのデフォルト値を上書きできます。

  9. タグ (オプション): 最大 50 個のタグをこのワークフローバージョンに関連付けることができます。

  10. [次へ] を選択します。

  11. ワークフローパラメータの追加 (オプション) ページで、パラメータソースを選択します。

    1. ワークフロー定義ファイルから解析する場合、HealthOmics はワークフロー定義ファイルからワークフローパラメータを自動的に解析します。

    2. Git リポジトリからパラメータテンプレートを提供するには、リポジトリからパラメータテンプレートファイルへのパスを使用します。

    3. ローカルソースから JSON ファイルを選択する で、パラメータを指定するローカルソースからJSONファイルをアップロードします。

    4. ワークフローパラメータを手動で入力するには、パラメータ名と説明を手動で入力します。

  12. パラメータプレビューパネルでは、このワークフローバージョンのパラメータを確認または変更できます。JSON ファイルを復元すると、ローカルで行った変更はすべて失われます。

  13. コンテナ URI の再マッピングページで、マッピングルールパネルで、ワークフローの URI マッピングルールを定義できます。

    マッピングファイルのソースで、次のいずれかのオプションを選択します。

    • なし – マッピングルールは必要ありません。

    • S3 から JSON ファイルを選択する – マッピングファイルの S3 の場所を指定します。

    • ローカルソースから JSON ファイルを選択する – ローカルデバイスのマッピングファイルの場所を指定します。

    • マッピングを手動で入力するマッピングパネルにレジストリマッピングとイメージマッピングを入力します。

  14. コンソールにマッピングパネルが表示されます。マッピングソースファイルを選択した場合、コンソールにはファイルの値が表示されます。

    1. レジストリマッピングでは、マッピングを編集したり、マッピングを追加したりできます (最大 20 個のレジストリマッピング)。

      各レジストリマッピングには、次のフィールドが含まれます。

      • アップストリームレジストリ URL – アップストリームレジストリの URI。

      • ECR リポジトリプレフィックス – Amazon ECR プライベートリポジトリで使用するリポジトリプレフィックス。

      • (オプション) アップストリームリポジトリプレフィックス – アップストリームレジストリ内のリポジトリのプレフィックス。

      • (オプション) ECR アカウント ID – アップストリームコンテナイメージを所有するアカウントのアカウント ID。

    2. イメージマッピングでは、イメージマッピングを編集したり、マッピングを追加したりできます (最大 100 個のイメージマッピング)。

      各イメージマッピングには、次のフィールドが含まれます。

      • ソースイメージ – アップストリームレジストリ内のソースイメージの URI を指定します。

      • 送信先イメージ – プライベート Amazon ECR レジストリ内の対応するイメージの URI を指定します。

  15. [次へ] を選択します。

  16. バージョン設定を確認し、バージョンの作成を選択します。

バージョンが作成されると、コンソールはワークフローの詳細ページに戻り、ワークフローとバージョンテーブルに新しいバージョンを表示します。

CLI を使用してワークフローバージョンを作成する

CreateWorkflowVersion API オペレーションを使用してワークフローバージョンを作成できます。オプションのパラメータの場合、HealthOmics は次のデフォルトを使用します。

パラメータ デフォルト
エンジン ワークフロー定義から決定
ストレージタイプ STATIC
ストレージ容量 (静的ストレージ用) 1200 GiB
メイン ワークフロー定義フォルダの内容に基づいて決定されます。詳細については、「HealthOmics ワークフロー定義の要件」を参照してください。
アクセラレータ なし
タグ なし

次の CLI の例では、デフォルトの実行ストレージとして静的ストレージを使用するワークフローバージョンを作成します。

aws omics create-workflow-version \ --workflow-id 1234567 \ --version-name "my_version" \ --engine WDL \ --definition-zip fileb://workflow-crambam.zip \ --description "my version description" \ --main file://workflow-params.json \ --parameter-template file://workflow-params.json \ --storage-type='STATIC' \ --storage-capacity 1200 \ --tags example123=string \ --accelerators GPU

ワークフロー定義ファイルが Amazon S3 フォルダにある場合は、 の代わりに definition-uriパラメータを使用して場所を入力しますdefinition-zip。詳細については、AWS HealthOmics API リファレンスのCreateWorkflowVersion」を参照してください。

create-workflow-version リクエストに対して次のレスポンスを受け取ります。

{ "workflowId": "1234567", "versionName": "my_version", "arn": "arn:aws:omics:us-west-2:123456789012:workflow/1234567/version/3", "status": "ACTIVE", "tags": { "environment": "production", "owner": "team-alpha" }, "uuid": "0ac9a563-355c-fc7a-1b47-a115167af8a2" }

SDK を使用してワークフローバージョンを作成する

ワークフローは、いずれかの SDKs を使用して作成できます。

次の例は、Python SDK を使用してワークフローバージョンを作成する方法を示しています。

import boto3 omics = boto3.client('omics') with open('definition.zip', 'rb') as f: definition = f.read() response = omics.create_workflow_version( workflowId='1234567', versionName='my_version', requestId='my_request_1' definitionZip=definition, parameterTemplate={ ... } )

ワークフローバージョンのステータスを確認する

ワークフローバージョンを作成したら、次のように get-workflow-version を使用して、ワークフローのステータスを確認し、その他の詳細を表示できます。

aws omics get-workflow-version --workflow-id 9876543 --version-name "my_version"

レスポンスには、次に示すように、ステータスを含むワークフローの詳細が表示されます。

{ "workflowId": "1234567", "versionName": "3.0.0", "arn": "arn:aws:omics:us-west-2:123456789012:workflow/1234567/version/3.0.0", "status": "ACTIVE", "description": ... "uuid": "0ac9a563-355c-fc7a-1b47-a115167af8a2" }

このワークフローバージョンで実行を開始する前に、ステータスが に移行する必要がありますACTIVE