Este guia ajuda a verificar se a configuração de autorização do Fleet Engine foi
concluída e se é possível criar um veículo de teste. Este guia usa
o utilitário de linha de comando gcloud
para testar
a assinatura de tokens de autorização e a criação de veículos.
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 do Cloud. |
SERVICE_ACCOUNT_EMAIL_ADDRESS | O endereço de e-mail de uma conta de serviço que você criou com a função 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 ter no máximo 64 caracteres. |
Use o utilitário
gcloud
para 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_ID
Crie 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" } } EOM
Tarefas agendadas
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
Use
gcloud
para assinar esse JWT com as permissões apropriadas do IAM. :gcloud iam service-accounts sign-jwt claim.jwt output.jwt \ --iam-account=SERVICE_ACCOUNT_EMAIL_ADDRESS
O JWT assinado é armazenado em
output.jwt
.Para mais detalhes, consulte Fornecer as permissões necessárias e o guia da linha de comando
gcloud
na documentação do Google Cloud.Use
curl
para 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 deve imprimir o nome do veículo como saída. Se o texto a seguir aparecer, a configuração foi concluída.
{ "name": "providers/PROJECT_ID/vehicles/VEHICLE_ID" }
Tarefas agendadas
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
Esse comando precisa exibir o nome do veículo de entrega como saída. Se o texto a seguir aparecer, a configuração foi concluída.
{ "name": "providers/PROJECT_ID/deliveryVehicles/DELIVERY_VEHICLE_ID" }