このガイドでは、Fleet Engine の認証設定が完了し、試用車両を作成できることを確認します。このガイドでは、gcloud
コマンドライン ユーティリティを使用して、認可トークンの署名と車両の作成をテストします。
このプロセスを完了する手順は次のとおりです。
- 以下のフィールドは、設定の一部として作成したデータに置き換えます。
フィールド | 次に置換 |
---|---|
PROJECT_ID | Cloud プロジェクト ID。 |
SERVICE_ACCOUNT_EMAIL_ADDRESS | 管理者ロールで作成したサービス アカウントのメールアドレス。詳細については、モビリティ サービス アカウントのロールをご覧ください。 |
VEHICLE_ID または DELIVERY_VEHICLE_ID |
車両のランダム ID。ID には最大 64 文字を使用できます。 |
gcloud
ユーティリティを使用して Google Cloud アカウントにログインし、ワークステーションにアクティブなプロジェクトを設定します。gcloud auth login gcloud config set project PROJECT_ID
車両の作成用の JSON Web Token(JWT)クレームを作成します。
オンデマンド ルート
cat > claim.jwt << EOM { "iss": "SERVICE_ACCOUNT_EMAIL_ADDRESS", "sub": "SERVICE_ACCOUNT_EMAIL_ADDRESS", "aud": "https://fleetengine.googleapis.com/", "iat": $(date +%s), "exp": $((`date +%s` + 3600)), "authorization": { "vehicleid": "VEHICLE_ID" } } EOM
スケジュール設定されたタスク
cat > claim.jwt << EOM { "iss": "SERVICE_ACCOUNT_EMAIL_ADDRESS", "sub": "SERVICE_ACCOUNT_EMAIL_ADDRESS", "aud": "https://fleetengine.googleapis.com/", "iat": $(date +%s), "exp": $((`date +%s` + 3600)), "authorization": { "deliveryvehicleid": "DELIVERY_VEHICLE_ID" } } EOM
gcloud
を使用して、適切な IAM 権限でこの JWT に署名します。:gcloud iam service-accounts sign-jwt claim.jwt output.jwt \ --iam-account=SERVICE_ACCOUNT_EMAIL_ADDRESS
署名付き JWT は
output.jwt
に保存されます。詳細については、必要な権限を付与すると Google Cloud ドキュメントの
gcloud
コマンドライン ガイドをご覧ください。curl
を使用して、Fleet Engine でテスト車両を作成します。オンデマンド ルート
curl -X POST "https://fleetengine.googleapis.com/v1/providers/PROJECT_ID/vehicles?vehicleId=VEHICLE_ID" \ -H "Content-type: application/json" \ -H "Authorization: Bearer $(cat output.jwt)" \ --data-binary @- << EOM { "name": "providers/PROJECT_ID/vehicles/VEHICLE_ID" } EOM { "vehicleState": "OFFLINE", "supportedTripTypes": ["EXCLUSIVE"], "maximumCapacity": 4, "vehicleType": {"category": "AUTO"}, "attributes": [{"key": "on_trip", "value": "false"}] }
このコマンドを実行すると、車両の名前が出力されます。次のテキストが表示されたら、設定は成功しています。
{ "name": "providers/PROJECT_ID/vehicles/VEHICLE_ID" }
スケジュール設定されたタスク
curl -X POST "https://fleetengine.googleapis.com/v1/providers/PROJECT_ID/deliveryVehicles?deliveryVehicleId=DELIVERY_VEHICLE_ID" \ -H "Content-type: application/json" \ -H "Authorization: Bearer $(cat output.jwt)" \ --data-binary @- << EOM { "name": "providers/PROJECT_ID/deliveryVehicles/DELIVERY_VEHICLE_ID" } EOM
このコマンドを実行すると、配送車両の名前が出力されます。次のテキストが表示されたら、設定は成功しています。
{ "name": "providers/PROJECT_ID/deliveryVehicles/DELIVERY_VEHICLE_ID" }