pub struct ServiceConfig {
pub annotations: Option<BTreeMap<String, String>>,
pub spec: Option<ServiceSpec>,
}Expand description
Service configuration including spec and annotations
Allows customization of both the Kubernetes Service spec and metadata annotations.
Fields§
§annotations: Option<BTreeMap<String, String>>Annotations to apply to the Service metadata
Common use cases:
MetalLBaddress pool selection:metallb.universe.tf/address-pool: my-ip-pool- AWS load balancer configuration:
service.beta.kubernetes.io/aws-load-balancer-type: nlb - External DNS hostname:
external-dns.alpha.kubernetes.io/hostname: dns.example.com
Example:
annotations:
metallb.universe.tf/address-pool: my-ip-pool
external-dns.alpha.kubernetes.io/hostname: ns1.example.comspec: Option<ServiceSpec>Custom Kubernetes Service spec
Allows full customization of the Kubernetes Service created for DNS servers.
This accepts the same fields as the standard Kubernetes Service spec.
Common fields:
type: Service type (ClusterIP,NodePort,LoadBalancer)loadBalancerIP: Specific IP forLoadBalancertypeexternalTrafficPolicy:LocalorClustersessionAffinity:ClientIPorNoneclusterIP: Specific cluster IP (use with caution)
Fields specified here are merged with defaults. Unspecified fields use safe defaults:
type: ClusterIP(if not specified)- Ports 53/TCP and 53/UDP (always set)
- Selector matching the instance labels (always set)
Trait Implementations§
Source§impl Clone for ServiceConfig
impl Clone for ServiceConfig
Source§fn clone(&self) -> ServiceConfig
fn clone(&self) -> ServiceConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ServiceConfig
impl Debug for ServiceConfig
Source§impl Default for ServiceConfig
impl Default for ServiceConfig
Source§fn default() -> ServiceConfig
fn default() -> ServiceConfig
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ServiceConfig
impl<'de> Deserialize<'de> for ServiceConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl JsonSchema for ServiceConfig
impl JsonSchema for ServiceConfig
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreAuto Trait Implementations§
impl Freeze for ServiceConfig
impl RefUnwindSafe for ServiceConfig
impl Send for ServiceConfig
impl Sync for ServiceConfig
impl Unpin for ServiceConfig
impl UnwindSafe for ServiceConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more