Ce guide vous aide à vérifier que la configuration de l'autorisation Fleet Engine est complète et que vous pouvez créer un véhicule d'essai. Ce guide utilise l'utilitaire de ligne de commande gcloud
pour tester la signature des jetons d'autorisation et la création de véhicules.
Pour ce faire :
- Remplacez les champs ci-dessous par les données que vous avez créées lors de la configuration :
Champ | Remplacer par |
---|---|
PROJECT_ID | L'ID de votre projet Cloud. |
SERVICE_ACCOUNT_EMAIL_ADDRESS | Adresse e-mail d'un compte de service que vous avez créé avec le rôle d'administrateur. Pour en savoir plus, consultez Rôles des comptes de service Mobility. |
VEHICLE_ID OR DELIVERY_VEHICLE_ID |
ID aléatoire du véhicule. L'ID ne peut pas comporter plus de 64 caractères. |
Utilisez l'utilitaire
gcloud
pour vous connecter au compte Google Cloud et définir le projet actif sur votre poste de travail :gcloud auth login gcloud config set project PROJECT_ID
Créez une revendication de jeton Web JSON (JWT) pour la création du véhicule :
Trajets à la demande
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
Tâches planifiées
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
Utilisez
gcloud
pour signer ce jeton JWT avec les autorisations IAM appropriées. :gcloud iam service-accounts sign-jwt claim.jwt output.jwt \ --iam-account=SERVICE_ACCOUNT_EMAIL_ADDRESS
Le jeton JWT signé est stocké dans
output.jwt
.Pour en savoir plus, consultez Fournir les autorisations requises et le guide de l'outil de ligne de commande
gcloud
dans la documentation Google Cloud.Utilisez
curl
pour créer un véhicule de test sur Fleet Engine :Trajets à la demande
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"}] }
Cette commande doit afficher le nom du véhicule. Si le texte suivant s'affiche, cela signifie que la configuration a réussi.
{ "name": "providers/PROJECT_ID/vehicles/VEHICLE_ID" }
Tâches planifiées
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
Cette commande doit afficher le nom du véhicule de livraison. Si le texte suivant s'affiche, cela signifie que la configuration a réussi.
{ "name": "providers/PROJECT_ID/deliveryVehicles/DELIVERY_VEHICLE_ID" }