com.pulumi.kubernetes.networking.v1alpha1.outputs.ClusterCIDRSpecPatch Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of kubernetes Show documentation
Show all versions of kubernetes Show documentation
A Pulumi package for creating and managing Kubernetes resources.
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.kubernetes.networking.v1alpha1.outputs;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.kubernetes.core.v1.outputs.NodeSelectorPatch;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class ClusterCIDRSpecPatch {
/**
* @return IPv4 defines an IPv4 IP block in CIDR notation(e.g. "10.0.0.0/8"). At least one of IPv4 and IPv6 must be specified. This field is immutable.
*
*/
private @Nullable String ipv4;
/**
* @return IPv6 defines an IPv6 IP block in CIDR notation(e.g. "2001:db8::/64"). At least one of IPv4 and IPv6 must be specified. This field is immutable.
*
*/
private @Nullable String ipv6;
/**
* @return NodeSelector defines which nodes the config is applicable to. An empty or nil NodeSelector selects all nodes. This field is immutable.
*
*/
private @Nullable NodeSelectorPatch nodeSelector;
/**
* @return PerNodeHostBits defines the number of host bits to be configured per node. A subnet mask determines how much of the address is used for network bits and host bits. For example an IPv4 address of 192.168.0.0/24, splits the address into 24 bits for the network portion and 8 bits for the host portion. To allocate 256 IPs, set this field to 8 (a /24 mask for IPv4 or a /120 for IPv6). Minimum value is 4 (16 IPs). This field is immutable.
*
*/
private @Nullable Integer perNodeHostBits;
private ClusterCIDRSpecPatch() {}
/**
* @return IPv4 defines an IPv4 IP block in CIDR notation(e.g. "10.0.0.0/8"). At least one of IPv4 and IPv6 must be specified. This field is immutable.
*
*/
public Optional ipv4() {
return Optional.ofNullable(this.ipv4);
}
/**
* @return IPv6 defines an IPv6 IP block in CIDR notation(e.g. "2001:db8::/64"). At least one of IPv4 and IPv6 must be specified. This field is immutable.
*
*/
public Optional ipv6() {
return Optional.ofNullable(this.ipv6);
}
/**
* @return NodeSelector defines which nodes the config is applicable to. An empty or nil NodeSelector selects all nodes. This field is immutable.
*
*/
public Optional nodeSelector() {
return Optional.ofNullable(this.nodeSelector);
}
/**
* @return PerNodeHostBits defines the number of host bits to be configured per node. A subnet mask determines how much of the address is used for network bits and host bits. For example an IPv4 address of 192.168.0.0/24, splits the address into 24 bits for the network portion and 8 bits for the host portion. To allocate 256 IPs, set this field to 8 (a /24 mask for IPv4 or a /120 for IPv6). Minimum value is 4 (16 IPs). This field is immutable.
*
*/
public Optional perNodeHostBits() {
return Optional.ofNullable(this.perNodeHostBits);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ClusterCIDRSpecPatch defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable String ipv4;
private @Nullable String ipv6;
private @Nullable NodeSelectorPatch nodeSelector;
private @Nullable Integer perNodeHostBits;
public Builder() {}
public Builder(ClusterCIDRSpecPatch defaults) {
Objects.requireNonNull(defaults);
this.ipv4 = defaults.ipv4;
this.ipv6 = defaults.ipv6;
this.nodeSelector = defaults.nodeSelector;
this.perNodeHostBits = defaults.perNodeHostBits;
}
@CustomType.Setter
public Builder ipv4(@Nullable String ipv4) {
this.ipv4 = ipv4;
return this;
}
@CustomType.Setter
public Builder ipv6(@Nullable String ipv6) {
this.ipv6 = ipv6;
return this;
}
@CustomType.Setter
public Builder nodeSelector(@Nullable NodeSelectorPatch nodeSelector) {
this.nodeSelector = nodeSelector;
return this;
}
@CustomType.Setter
public Builder perNodeHostBits(@Nullable Integer perNodeHostBits) {
this.perNodeHostBits = perNodeHostBits;
return this;
}
public ClusterCIDRSpecPatch build() {
final var _resultValue = new ClusterCIDRSpecPatch();
_resultValue.ipv4 = ipv4;
_resultValue.ipv6 = ipv6;
_resultValue.nodeSelector = nodeSelector;
_resultValue.perNodeHostBits = perNodeHostBits;
return _resultValue;
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy