Cloud Shell은 작은 예와 테스트를 실행하기에 적합한 환경입니다. 이 가이드에서는 Rust를 구성하고 Cloud Shell에 Cloud 클라이언트 라이브러리 중 하나를 설치하는 방법을 보여줍니다.
Cloud Shell 시작
- Google Cloud 콘솔의 프로젝트 선택기에서 프로젝트를 선택합니다.
https://shell.cloud.google.com을 열어 새 셸을 시작합니다.Google Cloud API 호출에 사용자 인증 정보를 사용하도록 Cloud Shell을 승인하라는 메시지가 표시될 수 있습니다.
Rust 구성
Cloud Shell에는
rustup이 사전 설치되어 있습니다. 이를 사용하여 기본 버전의 Rust를 설치하고 구성할 수 있습니다.rustup default stableRust의 최신 버전이 설치되어 있는지 확인합니다.
cargo --version
Cloud Shell에 Rust 클라이언트 라이브러리 설치
새 Rust 프로젝트를 만듭니다.
cargo new my-project디렉터리를 새 프로젝트로 변경합니다.
cd my-project새 프로젝트에 Secret Manager 클라이언트 라이브러리를 추가합니다.
cargo add google-cloud-secretmanager-v1google-cloud-gax crate를 새 프로젝트에 추가합니다.
cargo add google-cloud-gax새 프로젝트에 tokio crate를 추가합니다.
cargo add tokio --features macrosSecret Manager 클라이언트 라이브러리를 사용하도록 프로젝트에서
src/main.rs를 수정합니다.#[tokio::main] async fn main() -> Result<(), Box<dyn std::error::Error>> { use google_cloud_gax::paginator::ItemPaginator as _; use google_cloud_secretmanager_v1::client::SecretManagerService; let project_id = std::env::args().nth(1).unwrap(); let client = SecretManagerService::builder().build().await?; let mut items = client .list_secrets() .set_parent(format!("projects/{project_id}")) .by_item(); while let Some(item) = items.next().await { println!("{}", item?.name); } Ok(()) }프로그램을 실행하고 Google Cloud 프로젝트 ID를 제공합니다.
PROJECT_ID=$(gcloud config get project) cargo run ${PROJECT_ID}프로그램에서 프로젝트 ID와 연결된 보안 비밀을 출력합니다. 보안 비밀이 표시되지 않으면 Secret Manager에 보안 비밀이 없는 것일 수 있습니다. 보안 비밀을 만들고 프로그램을 다시 실행하면 출력에 보안 비밀이 출력됩니다.