com.pulumi.azure.stack.outputs.HciDeploymentSettingScaleUnitHostNetwork Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure Show documentation
Show all versions of azure Show documentation
A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.
// *** 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.azure.stack.outputs;
import com.pulumi.azure.stack.outputs.HciDeploymentSettingScaleUnitHostNetworkIntent;
import com.pulumi.azure.stack.outputs.HciDeploymentSettingScaleUnitHostNetworkStorageNetwork;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class HciDeploymentSettingScaleUnitHostNetwork {
/**
* @return One or more `intent` blocks as defined below. Changing this forces a new Stack HCI Deployment Setting to be created.
*
*/
private List intents;
/**
* @return Whether allows users to specify IPs and Mask for Storage NICs when Network ATC is not assigning the IPs for storage automatically. Optional parameter required only for [3 nodes switchless deployments](https://learn.microsoft.com/azure-stack/hci/concepts/physical-network-requirements?tabs=overview%2C23H2reqs#using-switchless). Possible values are `true` and `false`. Defaults to `true`. Changing this forces a new Stack HCI Deployment Setting to be created.
*
*/
private @Nullable Boolean storageAutoIpEnabled;
/**
* @return Defines how the storage adapters between nodes are connected either switch or switch less. Possible values are `true` and `false`. Defaults to `false`. Changing this forces a new Stack HCI Deployment Setting to be created.
*
*/
private @Nullable Boolean storageConnectivitySwitchlessEnabled;
/**
* @return One or more `storage_network` blocks as defined below. Changing this forces a new Stack HCI Deployment Setting to be created.
*
*/
private List storageNetworks;
private HciDeploymentSettingScaleUnitHostNetwork() {}
/**
* @return One or more `intent` blocks as defined below. Changing this forces a new Stack HCI Deployment Setting to be created.
*
*/
public List intents() {
return this.intents;
}
/**
* @return Whether allows users to specify IPs and Mask for Storage NICs when Network ATC is not assigning the IPs for storage automatically. Optional parameter required only for [3 nodes switchless deployments](https://learn.microsoft.com/azure-stack/hci/concepts/physical-network-requirements?tabs=overview%2C23H2reqs#using-switchless). Possible values are `true` and `false`. Defaults to `true`. Changing this forces a new Stack HCI Deployment Setting to be created.
*
*/
public Optional storageAutoIpEnabled() {
return Optional.ofNullable(this.storageAutoIpEnabled);
}
/**
* @return Defines how the storage adapters between nodes are connected either switch or switch less. Possible values are `true` and `false`. Defaults to `false`. Changing this forces a new Stack HCI Deployment Setting to be created.
*
*/
public Optional storageConnectivitySwitchlessEnabled() {
return Optional.ofNullable(this.storageConnectivitySwitchlessEnabled);
}
/**
* @return One or more `storage_network` blocks as defined below. Changing this forces a new Stack HCI Deployment Setting to be created.
*
*/
public List storageNetworks() {
return this.storageNetworks;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(HciDeploymentSettingScaleUnitHostNetwork defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private List intents;
private @Nullable Boolean storageAutoIpEnabled;
private @Nullable Boolean storageConnectivitySwitchlessEnabled;
private List storageNetworks;
public Builder() {}
public Builder(HciDeploymentSettingScaleUnitHostNetwork defaults) {
Objects.requireNonNull(defaults);
this.intents = defaults.intents;
this.storageAutoIpEnabled = defaults.storageAutoIpEnabled;
this.storageConnectivitySwitchlessEnabled = defaults.storageConnectivitySwitchlessEnabled;
this.storageNetworks = defaults.storageNetworks;
}
@CustomType.Setter
public Builder intents(List intents) {
if (intents == null) {
throw new MissingRequiredPropertyException("HciDeploymentSettingScaleUnitHostNetwork", "intents");
}
this.intents = intents;
return this;
}
public Builder intents(HciDeploymentSettingScaleUnitHostNetworkIntent... intents) {
return intents(List.of(intents));
}
@CustomType.Setter
public Builder storageAutoIpEnabled(@Nullable Boolean storageAutoIpEnabled) {
this.storageAutoIpEnabled = storageAutoIpEnabled;
return this;
}
@CustomType.Setter
public Builder storageConnectivitySwitchlessEnabled(@Nullable Boolean storageConnectivitySwitchlessEnabled) {
this.storageConnectivitySwitchlessEnabled = storageConnectivitySwitchlessEnabled;
return this;
}
@CustomType.Setter
public Builder storageNetworks(List storageNetworks) {
if (storageNetworks == null) {
throw new MissingRequiredPropertyException("HciDeploymentSettingScaleUnitHostNetwork", "storageNetworks");
}
this.storageNetworks = storageNetworks;
return this;
}
public Builder storageNetworks(HciDeploymentSettingScaleUnitHostNetworkStorageNetwork... storageNetworks) {
return storageNetworks(List.of(storageNetworks));
}
public HciDeploymentSettingScaleUnitHostNetwork build() {
final var _resultValue = new HciDeploymentSettingScaleUnitHostNetwork();
_resultValue.intents = intents;
_resultValue.storageAutoIpEnabled = storageAutoIpEnabled;
_resultValue.storageConnectivitySwitchlessEnabled = storageConnectivitySwitchlessEnabled;
_resultValue.storageNetworks = storageNetworks;
return _resultValue;
}
}
}