Les bibliothèques clientes Google Cloud pour Rust utilisent les clients comme principale abstraction pour l'interface avec des services spécifiques. Les clients sont implémentés sous forme de structs Rust, avec des méthodes correspondant à chaque RPC proposé par le service. Pour utiliser un serviceGoogle Cloud avec les bibliothèques clientes Rust, vous devez d'abord initialiser un client.
Dans ce guide, vous allez initialiser un client, puis l'utiliser pour effectuer un RPC à l'aide de l'API Secret Manager. La même structure s'applique à tous les autres services de Google Cloud.
Avant de suivre ce guide, vous devez effectuer les opérations suivantes :
- Suivez l'un des guides de démarrage de Secret Manager, par exemple celui qui explique comment créer un secret. Ces guides couvrent plus en détail les concepts spécifiques aux services et fournissent des conseils détaillés sur les prérequis des projets.
- Suivez les instructions du guide d'authentification pour l'utilisation des bibliothèques clientes. Ce guide vous explique comment vous connecter pour configurer les identifiants par défaut de l'application utilisés dans ce guide.
Dépendances
Avec Rust, vous devez déclarer la dépendance dans votre fichier Cargo.toml :
$ cargo add google-cloud-secretmanager-v1
Pour initialiser un client, vous devez d'abord appeler Client::builder() pour obtenir un ClientBuilder approprié, puis appeler build() sur ce compilateur pour créer un client.
Le code suivant crée un client avec la configuration par défaut, qui est conçue pour répondre aux exigences de la plupart des cas d'utilisation.
let client = SecretManagerService::builder().build().await?;
Une fois le client correctement initialisé, vous pouvez l'utiliser pour effectuer des RPC :
use google_cloud_gax::paginator::Paginator as _;
let mut items = client
.list_locations()
.set_name(format!("projects/{project_id}"))
.by_page();
while let Some(page) = items.next().await {
let page = page?;
for location in page.locations {
println!("{}", location.name);
}
}
Cet exemple montre un appel à list_locations, qui renvoie des informations sur les emplacements compatibles avec le service (Secret Manager dans ce cas).
Le résultat de l'exemple devrait ressembler à ceci :
projects/123456789012/locations/europe-west8
projects/123456789012/locations/europe-west9
projects/123456789012/locations/us-east5