gateway-api 0.21.0

Kubernetes Gateway API bindings in Rust
Documentation
use gateway_api::gatewayclasses::{GatewayClass, GatewayClassSpec};
use kube::{Api, api::PostParams, core::ObjectMeta};

use crate::common;

#[ignore]
#[tokio::test]
async fn crud() {
    let client = common::client().await;

    let gwc = GatewayClass {
        metadata: ObjectMeta {
            name: Some("test-gateway-class".into()),
            ..Default::default()
        },
        spec: GatewayClassSpec {
            controller_name: "test-controller".into(),
            description: None,
            parameters_ref: None,
        },
        status: None,
    };

    let created = Api::all(client.clone())
        .create(&PostParams::default(), &gwc)
        .await
        .expect("failed to create GatewayClass");

    assert!(created.metadata.name.is_some());
    assert!(created.metadata.uid.is_some());
}