Resources
Metadata
The metadata plugin allows applications to obtain certain information about their runtime environment.
Usage
Use the resource by annotating your main function with the shuttle_runtime::ShuttleMetadata
attribute.
Example
main.rs
use axum::{routing::get, Router};
use shuttle_runtime::DeploymentMetadata;
#[shuttle_runtime::main]
async fn axum(
#[shuttle_runtime::Metadata] metadata: DeploymentMetadata,
) -> shuttle_axum::ShuttleAxum {
let router = Router::new().route("/", get(format!("{:?}", metadata)));
Ok(router.into())
}
This example has one route which returns the debug print of the DeploymentMetadata
struct:
DeploymentMetadata { env: Local, project_name: "metadata-axum-app", storage_path: ".shuttle-storage" }
The full example can also be found on GitHub.
Was this page helpful?