bindy/reconcilers/bind9instance/
types.rs

1// Copyright (c) 2025 Erick Bourgeois, firestoned
2// SPDX-License-Identifier: MIT
3
4//! Shared types and imports for `Bind9Instance` reconciliation.
5//!
6//! This module provides common type re-exports and shared utilities
7//! used across the bind9instance reconciliation modules.
8
9#![allow(clippy::wildcard_imports)]
10
11// Re-export commonly used types from parent modules
12pub use crate::context::Context;
13pub use crate::crd::{
14    Bind9Cluster, Bind9Instance, Bind9InstanceStatus, ClusterReference, Condition, ZoneReference,
15};
16pub use crate::labels::{BINDY_MANAGED_BY_LABEL, FINALIZER_BIND9_INSTANCE};
17pub use crate::status_reasons::{
18    pod_condition_type, CONDITION_TYPE_READY, REASON_ALL_READY, REASON_NOT_READY,
19    REASON_PARTIALLY_READY, REASON_READY,
20};
21
22// Re-export commonly used Kubernetes types
23pub use k8s_openapi::api::{
24    apps::v1::Deployment,
25    core::v1::{ConfigMap, Pod, Secret, Service, ServiceAccount},
26};
27pub use k8s_openapi::apimachinery::pkg::apis::meta::v1::OwnerReference;
28
29// Re-export kube-rs types
30pub use kube::{
31    api::{ListParams, Patch, PatchParams, PostParams},
32    client::Client,
33    Api, ResourceExt,
34};
35
36// Re-export common utilities
37pub use anyhow::Result;
38pub use chrono::Utc;
39pub use serde_json::json;
40pub use std::sync::Arc;
41pub use tracing::{debug, error, info, warn};