Este guia ajuda a verificar se a configuração de autorização do Fleet Engine está concluída e se você pode criar um veículo de teste. Este guia usa
o utilitário de linha de comando para testar a assinatura do token de autorização e a criação de veículos.gcloud
Para concluir esse processo, faça o seguinte:
- Substitua os campos abaixo pelos dados que você criou como parte da configuração:
| Campo | Substituir por |
|---|---|
| PROJECT_ID | O ID do seu projeto na nuvem. |
| SERVICE_ACCOUNT_EMAIL_ADDRESS | O endereço de e-mail de uma conta de serviço que você criou com o papel de administrador. Consulte Papéis da conta de serviço de mobilidade para mais detalhes. |
VEHICLE_ID OU DELIVERY_VEHICLE_ID |
Um ID aleatório para o veículo. O ID pode conter no máximo 64 caracteres. |
Use o utilitário
gcloudpara fazer login na conta do Google Cloud e definir o projeto ativo na estação de trabalho:gcloud auth login gcloud config set project PROJECT_IDCrie uma declaração de JSON Web Token (JWT) para a criação do veículo:
Viagens sob demanda
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" } } EOMTarefas programadas
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" } } EOMUse
gcloudpara assinar esse JWT com as permissões de IAM adequadas. :gcloud iam service-accounts sign-jwt claim.jwt output.jwt \ --iam-account=SERVICE_ACCOUNT_EMAIL_ADDRESSO JWT assinado é armazenado em
output.jwt.Para mais detalhes, consulte Fornecer as permissões necessárias e o guia de linha de comando
gcloudna documentação do Google Cloud.Use
curlpara criar um veículo de teste no Fleet Engine:Viagens sob demanda
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"}] }Esse comando vai imprimir o nome do veículo como saída. Se você vir o texto a seguir, a configuração foi bem-sucedida.
{ "name": "providers/PROJECT_ID/vehicles/VEHICLE_ID" }Tarefas programadas
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" } EOMEsse comando vai imprimir o nome do veículo de entrega como saída. Se você vir o texto a seguir, a configuração foi bem-sucedida.
{ "name": "providers/PROJECT_ID/deliveryVehicles/DELIVERY_VEHICLE_ID" }