スクリプトのヒント

OLP CLI を使用して、一連のコマンドを実行するスクリプトを記述できます。 以下のセクションでは、役立つヒントを提供します。

JSON 出力を処理します

スクリプト内で OLP CLI を使用する場合は、前のコマンドの出力からのパラメータを次のコマンドの引数として渡す必要があります。

多く --json の OLP CLI コマンドでは、コマンド結果を JSON 形式で表示するオプションがサポートされています。 コマンド ライン で JSON を処理するに は、jq (軽量で柔軟性のある JSON コマンドラインプロセッサ)、など、さまざまな方法があります。

パイプラインを作成し、その結果を id 引数として次のコマンドに渡すには、パイプラインバージョンを作成するために、次のコード スニペットを使用します。

Linux
pipeline_id=$(olp pipeline create "My Example Pipeline" GROUP-848311d0-baef-4ec9-b499-cb8b88595515  \
   --description "This pipeline analyzes data" --json | jq -r .id)
olp pipeline version create version-name $pipeline_id example-pipeline-template-id \
   /user/data/pipeline-config.conf
for /f %i in ('olp pipeline create "My Example Pipeline" GROUP-848311d0-baef-4ec9-b499-cb8b88595515 ^
   --description "This pipeline analyzes data" --json ^| jq-win64 -r .id') do set pipeline_id=%i
olp pipeline version create version-name %pipeline_id% example-pipeline-template-id ^
   /user/data/pipeline-config.conf

現在 ready 状態にあるターゲットパイプラインのすべてのパイプラインバージョンのパイプラインバージョンジョブを表示するには、次のコード スニペットを使用します。

Linux
pipeline_version_ids=$(olp pipeline version list d77f288e-2c89-4c94-b4ba-79fbd1e26e79 --json \
   | jq -r '.pipelineVersions[] | select(.state | contains("ready")) | .id')
   while read -r pipeline_version_id; do
       echo "Pipeline version id: $pipeline_version_id"
       olp pipeline version job list d77f288e-2c89-4c94-b4ba-79fbd1e26e79 $pipeline_version_id
       echo
   done <<< "$pipeline_version_ids"
for /f %i in ('olp pipeline version list d77f288e-2c89-4c94-b4ba-79fbd1e26e79 --json 
   ^| jq-win64 -r ".pipelineVersions[] | select(.state | contains(\"ready\")) | .id"')
   do set pipeline_version_ids=%i
   for %i in (%pipeline_version_ids%) do (
       set pipeline_version_id=%i
       echo Pipeline version id: %pipeline_version_id%
       olp pipeline version job list d77f288e-2c89-4c94-b4ba-79fbd1e26e79 %pipeline_version_id%
   )

カタログを準備します

次のコード スニペットを使用して、カタログを作成し、別のカタログからカタログにパーティションをアップロードします。

Linux
partitions_folder="/user/data/partitions"
layer_id="advanced-navigation-attributes"
catalog_config="/user/data/catalog_config.json"
olp catalog show hrn:here:data::olp-here:rib-2 \
 --json | jq "del (.layers[] | select (.name != \"advanced-navigation-attributes\") )" > $catalog_config
catalog_id=$(olp catalog create first-catalog-example-id first-catalog-example --config $catalog_config \
   --summary "This catalog contains navigation attributes" \
   --description "This catalog contains navigation attributes" --json | jq -r .hrn)
olp catalog layer add $catalog_id $layer_id "Advanced Navigation Attributes" --versioned \
   --summary "This layer contains navigation attributes cloned from RIB" \
   --description "This layer contains navigation attributes cloned from RIB"
olp catalog layer partition get hrn:here:data::olp-here:rib-2 advanced-navigation-attributes \
   --partitions 17302684 17302686 17302687 --output $partitions_folder
olp catalog layer partition put $catalog_id $layer_id --input \$partitions_folder
SETLOCAL
set partitions_folder="D:\data\partitions"
set layer_id="advanced-navigation-attributes"
set catalog_config="D:\data\catalog_config.json"
olp catalog show hrn:here:data::olp-here:rib-2 ^
--json | jq-win64 "del (.layers[] | select (.name != \"advanced-navigation-attributes\") )" > %catalog_config%
for /f %i in ('olp catalog create first-catalog-example-id first-catalog-example --config %catalog_config% ^
--summary "This catalog contains navigation attributes" ^
--description "This catalog contains navigation attributes" --json ^| jq-win64 -r .hrn') do set catalog_id=%i
olp catalog layer add %catalog_id% %layer_id% "Advanced Navigation Attributes" --versioned ^
--summary "This layer contains navigation attributes cloned from RIB" ^
--description "This layer contains navigation attributes cloned from RIB"
olp catalog layer partition get hrn:here:data::olp-here:rib-2 advanced-navigation-attributes ^
--partitions 17302684 17302686 17302687 --output %partitions_folder%
olp catalog layer partition put %catalog_id% %layer_id% --input %partitions_folder%

」に一致する結果は 件です

    」に一致する結果はありません