ConfigDoc.Fields[6].Description="Optional custom endpoint (DNS name) for the Constellation API server.\nThis can be used to point a custom dns name at the Constellation API server\nand is added to the Subject Alternative Name (SAN) field of the TLS certificate used by the API server.\nA fallback to DNS name is always available."
ConfigDoc.Fields[6].Comments[encoder.LineComment]="Optional custom endpoint (DNS name) for the Constellation API server."
ConfigDoc.Fields[7].Description="Flag to enable/disable the internal load balancer. If enabled, the Constellation is only accessible from within the VPC."
ConfigDoc.Fields[7].Comments[encoder.LineComment]="Flag to enable/disable the internal load balancer. If enabled, the Constellation is only accessible from within the VPC."
ConfigDoc.Fields[9].Description="Node groups to be created in the cluster."
ConfigDoc.Fields[9].Comments[encoder.LineComment]="Node groups to be created in the cluster."
ConfigDoc.Fields[10].Name="attestation"
ConfigDoc.Fields[10].Type="AttestationConfig"
ConfigDoc.Fields[10].Note=""
ConfigDoc.Fields[10].Description="Configuration for attestation validation. This configuration provides sensible defaults for the Constellation version it was created for.\nSee the docs for an overview on attestation: https://docs.edgeless.systems/constellation/architecture/attestation"
ConfigDoc.Fields[10].Comments[encoder.LineComment]="Configuration for attestation validation. This configuration provides sensible defaults for the Constellation version it was created for.\nSee the docs for an overview on attestation: https://docs.edgeless.systems/constellation/architecture/attestation"
ProviderConfigDoc.Description="ProviderConfig are cloud-provider specific configuration values used by the CLI.\nFields should remain pointer-types so custom specific configs can nil them\nif not required.\n"
AWSConfigDoc.Fields[0].Description="AWS data center region. See: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions"
AWSConfigDoc.Fields[0].Comments[encoder.LineComment]="AWS data center region. See: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions"
AWSConfigDoc.Fields[1].Name="zone"
AWSConfigDoc.Fields[1].Type="string"
AWSConfigDoc.Fields[1].Note=""
AWSConfigDoc.Fields[1].Description="AWS data center zone name in defined region. See: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-availability-zones"
AWSConfigDoc.Fields[1].Comments[encoder.LineComment]="AWS data center zone name in defined region. See: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-availability-zones"
AWSConfigDoc.Fields[4].Description="Deploy Persistent Disk CSI driver with on-node encryption. For details see: https://docs.edgeless.systems/constellation/architecture/encrypted-storage"
AWSConfigDoc.Fields[4].Comments[encoder.LineComment]="Deploy Persistent Disk CSI driver with on-node encryption. For details see: https://docs.edgeless.systems/constellation/architecture/encrypted-storage"
AzureConfigDoc.Fields[0].Description="Subscription ID of the used Azure account. See: https://docs.microsoft.com/en-us/azure/azure-portal/get-subscription-tenant-id#find-your-azure-subscription"
AzureConfigDoc.Fields[0].Comments[encoder.LineComment]="Subscription ID of the used Azure account. See: https://docs.microsoft.com/en-us/azure/azure-portal/get-subscription-tenant-id#find-your-azure-subscription"
AzureConfigDoc.Fields[1].Name="tenant"
AzureConfigDoc.Fields[1].Type="string"
AzureConfigDoc.Fields[1].Note=""
AzureConfigDoc.Fields[1].Description="Tenant ID of the used Azure account. See: https://docs.microsoft.com/en-us/azure/azure-portal/get-subscription-tenant-id#find-your-azure-ad-tenant"
AzureConfigDoc.Fields[1].Comments[encoder.LineComment]="Tenant ID of the used Azure account. See: https://docs.microsoft.com/en-us/azure/azure-portal/get-subscription-tenant-id#find-your-azure-ad-tenant"
AzureConfigDoc.Fields[2].Name="location"
AzureConfigDoc.Fields[2].Type="string"
AzureConfigDoc.Fields[2].Note=""
AzureConfigDoc.Fields[2].Description="Azure datacenter region to be used. See: https://docs.microsoft.com/en-us/azure/availability-zones/az-overview#azure-regions-with-availability-zones"
AzureConfigDoc.Fields[2].Comments[encoder.LineComment]="Azure datacenter region to be used. See: https://docs.microsoft.com/en-us/azure/availability-zones/az-overview#azure-regions-with-availability-zones"
AzureConfigDoc.Fields[5].Description="Deploy Azure Disk CSI driver with on-node encryption. For details see: https://docs.edgeless.systems/constellation/architecture/encrypted-storage"
AzureConfigDoc.Fields[5].Comments[encoder.LineComment]="Deploy Azure Disk CSI driver with on-node encryption. For details see: https://docs.edgeless.systems/constellation/architecture/encrypted-storage"
AzureConfigDoc.Fields[6].Description="Enable secure boot for VMs. If enabled, the OS image has to include a virtual machine guest state (VMGS) blob."
AzureConfigDoc.Fields[6].Comments[encoder.LineComment]="Enable secure boot for VMs. If enabled, the OS image has to include a virtual machine guest state (VMGS) blob."
GCPConfigDoc.Fields[3].Description="Path of service account key file. For required service account roles, see https://docs.edgeless.systems/constellation/getting-started/install#authorization"
GCPConfigDoc.Fields[3].Comments[encoder.LineComment]="Path of service account key file. For required service account roles, see https://docs.edgeless.systems/constellation/getting-started/install#authorization"
GCPConfigDoc.Fields[4].Description="Deploy Persistent Disk CSI driver with on-node encryption. For details see: https://docs.edgeless.systems/constellation/architecture/encrypted-storage"
GCPConfigDoc.Fields[4].Comments[encoder.LineComment]="Deploy Persistent Disk CSI driver with on-node encryption. For details see: https://docs.edgeless.systems/constellation/architecture/encrypted-storage"
OpenStackConfigDoc.Fields[0].Description="OpenStack cloud name to select from \"clouds.yaml\". Only required if config file for OpenStack is used. Fallback authentication uses environment variables. For details see: https://docs.openstack.org/openstacksdk/latest/user/config/configuration.html."
OpenStackConfigDoc.Fields[0].Comments[encoder.LineComment]="OpenStack cloud name to select from \"clouds.yaml\". Only required if config file for OpenStack is used. Fallback authentication uses environment variables. For details see: https://docs.openstack.org/openstacksdk/latest/user/config/configuration.html."
OpenStackConfigDoc.Fields[1].Description="Availability zone to place the VMs in. For details see: https://docs.openstack.org/nova/latest/admin/availability-zones.html"
OpenStackConfigDoc.Fields[1].Comments[encoder.LineComment]="Availability zone to place the VMs in. For details see: https://docs.openstack.org/nova/latest/admin/availability-zones.html"
OpenStackConfigDoc.Fields[2].Description="Floating IP pool to use for the VMs. For details see: https://docs.openstack.org/ocata/user-guide/cli-manage-ip-addresses.html"
OpenStackConfigDoc.Fields[2].Comments[encoder.LineComment]="Floating IP pool to use for the VMs. For details see: https://docs.openstack.org/ocata/user-guide/cli-manage-ip-addresses.html"
OpenStackConfigDoc.Fields[10].Description="Password to use inside the cluster. You can instead use the environment variable \"CONSTELL_OS_PASSWORD\"."
OpenStackConfigDoc.Fields[10].Comments[encoder.LineComment]="Password to use inside the cluster. You can instead use the environment variable \"CONSTELL_OS_PASSWORD\"."
OpenStackConfigDoc.Fields[11].Description="If enabled, downloads OS image directly from source URL to OpenStack. Otherwise, downloads image to local machine and uploads to OpenStack."
OpenStackConfigDoc.Fields[11].Comments[encoder.LineComment]="If enabled, downloads OS image directly from source URL to OpenStack. Otherwise, downloads image to local machine and uploads to OpenStack."
OpenStackConfigDoc.Fields[13].Description="OpenStack OS image used by the yawollet. For details see: https://github.com/stackitcloud/yawol"
OpenStackConfigDoc.Fields[13].Comments[encoder.LineComment]="OpenStack OS image used by the yawollet. For details see: https://github.com/stackitcloud/yawol"
OpenStackConfigDoc.Fields[14].Description="OpenStack flavor id used for yawollets. For details see: https://github.com/stackitcloud/yawol"
OpenStackConfigDoc.Fields[14].Comments[encoder.LineComment]="OpenStack flavor id used for yawollets. For details see: https://github.com/stackitcloud/yawol"
QEMUConfigDoc.Fields[5].Description="Container image to use for launching a containerized libvirt daemon. Only relevant if `libvirtSocket = \"\"`."
QEMUConfigDoc.Fields[5].Comments[encoder.LineComment]="Container image to use for launching a containerized libvirt daemon. Only relevant if `libvirtSocket = \"\"`."
QEMUConfigDoc.Fields[6].Description="NVRAM template to be used for secure boot. Can be sentinel value \"production\", \"testing\" or a path to a custom NVRAM template"
QEMUConfigDoc.Fields[6].Comments[encoder.LineComment]="NVRAM template to be used for secure boot. Can be sentinel value \"production\", \"testing\" or a path to a custom NVRAM template"
AttestationConfigDoc.Comments[encoder.LineComment]="AttestationConfig configuration values used for attestation."
AttestationConfigDoc.Description="AttestationConfig configuration values used for attestation.\nFields should remain pointer-types so custom specific configs can nil them\nif not required.\n"
AttestationConfigDoc.Fields[0].Description="AWS SEV-SNP attestation. WARNING: Attestation temporarily relies on AWS nitroTPM. See https://docs.edgeless.systems/constellation/workflows/config#choosing-a-vm-type for more information."
AttestationConfigDoc.Fields[0].Comments[encoder.LineComment]="AWS SEV-SNP attestation. WARNING: Attestation temporarily relies on AWS nitroTPM. See https://docs.edgeless.systems/constellation/workflows/config#choosing-a-vm-type for more information."
NodeGroupDoc.Comments[encoder.LineComment]="NodeGroup defines a group of nodes with the same role and configuration."
NodeGroupDoc.Description="NodeGroup defines a group of nodes with the same role and configuration.\nCloud providers use scaling groups to manage nodes of a group.\n"
NodeGroupDoc.AppearsIn=[]encoder.Appearance{
{
TypeName:"Config",
FieldName:"nodeGroups",
},
}
NodeGroupDoc.Fields=make([]encoder.Doc,6)
NodeGroupDoc.Fields[0].Name="role"
NodeGroupDoc.Fields[0].Type="string"
NodeGroupDoc.Fields[0].Note=""
NodeGroupDoc.Fields[0].Description="Role of the nodes in this group. Valid values are \"control-plane\" and \"worker\"."
NodeGroupDoc.Fields[0].Comments[encoder.LineComment]="Role of the nodes in this group. Valid values are \"control-plane\" and \"worker\"."
NodeGroupDoc.Fields[1].Name="zone"
NodeGroupDoc.Fields[1].Type="string"
NodeGroupDoc.Fields[1].Note=""
NodeGroupDoc.Fields[1].Description="Availability zone to place the VMs in."
NodeGroupDoc.Fields[1].Comments[encoder.LineComment]="Availability zone to place the VMs in."
NodeGroupDoc.Fields[2].Name="instanceType"
NodeGroupDoc.Fields[2].Type="string"
NodeGroupDoc.Fields[2].Note=""
NodeGroupDoc.Fields[2].Description="VM instance type to use for the nodes."
NodeGroupDoc.Fields[2].Comments[encoder.LineComment]="VM instance type to use for the nodes."
NodeGroupDoc.Fields[3].Name="stateDiskSizeGB"
NodeGroupDoc.Fields[3].Type="int"
NodeGroupDoc.Fields[3].Note=""
NodeGroupDoc.Fields[3].Description="Size (in GB) of a node's disk to store the non-volatile state."
NodeGroupDoc.Fields[3].Comments[encoder.LineComment]="Size (in GB) of a node's disk to store the non-volatile state."
NodeGroupDoc.Fields[4].Name="stateDiskType"
NodeGroupDoc.Fields[4].Type="string"
NodeGroupDoc.Fields[4].Note=""
NodeGroupDoc.Fields[4].Description="Type of a node's state disk. The type influences boot time and I/O performance."
NodeGroupDoc.Fields[4].Comments[encoder.LineComment]="Type of a node's state disk. The type influences boot time and I/O performance."
NodeGroupDoc.Fields[5].Name="initialCount"
NodeGroupDoc.Fields[5].Type="int"
NodeGroupDoc.Fields[5].Note=""
NodeGroupDoc.Fields[5].Description="Number of nodes to be initially created."
NodeGroupDoc.Fields[5].Comments[encoder.LineComment]="Number of nodes to be initially created."
UnsupportedAppRegistrationErrorDoc.Comments[encoder.LineComment]="UnsupportedAppRegistrationError is returned when the config contains configuration related to now unsupported app registrations."
UnsupportedAppRegistrationErrorDoc.Description="UnsupportedAppRegistrationError is returned when the config contains configuration related to now unsupported app registrations."
SNPFirmwareSignerConfigDoc.Fields[0].Description="List of accepted values for the firmware signing key digest.\nValues are enforced according to the 'enforcementPolicy'\n - 'equal' : Error if the reported signing key digest does not match any of the values in 'acceptedKeyDigests'\n - 'maaFallback' : Use 'equal' checking for validation, but fallback to using Microsoft Azure Attestation (MAA) for validation if the reported digest does not match any of the values in 'acceptedKeyDigests'. See the Azure docs for more details: https://learn.microsoft.com/en-us/azure/attestation/overview#amd-sev-snp-attestation\n - 'warnOnly' : Same as 'equal', but only prints a warning instead of returning an error if no match is found"
SNPFirmwareSignerConfigDoc.Fields[0].Comments[encoder.LineComment]="List of accepted values for the firmware signing key digest.\nValues are enforced according to the 'enforcementPolicy'\n - 'equal' : Error if the reported signing key digest does not match any of the values in 'acceptedKeyDigests'\n - 'maaFallback' : Use 'equal' checking for validation, but fallback to using Microsoft Azure Attestation (MAA) for validation if the reported digest does not match any of the values in 'acceptedKeyDigests'. See the Azure docs for more details: https://learn.microsoft.com/en-us/azure/attestation/overview#amd-sev-snp-attestation\n - 'warnOnly' : Same as 'equal', but only prints a warning instead of returning an error if no match is found"
SNPFirmwareSignerConfigDoc.Fields[2].Description="URL of the Microsoft Azure Attestation (MAA) instance to use for fallback validation. Only used if 'enforcementPolicy' is set to 'maaFallback'."
SNPFirmwareSignerConfigDoc.Fields[2].Comments[encoder.LineComment]="URL of the Microsoft Azure Attestation (MAA) instance to use for fallback validation. Only used if 'enforcementPolicy' is set to 'maaFallback'."
GCPSEVESDoc.Type="GCPSEVES"
GCPSEVESDoc.Comments[encoder.LineComment]="GCPSEVES is the configuration for GCP SEV-ES attestation."
GCPSEVESDoc.Description="GCPSEVES is the configuration for GCP SEV-ES attestation."
Description:"Definitions for Constellation's user config file.\n\nThe config file is used by the CLI to create and manage a Constellation cluster.\n\nAll config relevant definitions, parsing and validation functions should go here.\n",