Skip to content

Shell variables available to boot hooks

Hook bodies are spliced where these shell variables are already defined. Only the names below are a stable contract, and anything else in a rendered script may change without notice.

Names follow each cloud's script, so they differ per cloud.

Provisioner script (provisioner_hooks):

Variable Holds
region AWS region
deployment_name Deployment unique name (seed for cloud resource names and SSM paths)
cluster_name qfsd cluster name
cluster_version Qumulo Core version
cluster_persistent_bucket_names Comma-separated S3 bucket names
cluster_persistent_bucket_uris Comma-separated S3 bucket URIs
cluster_persistent_storage_type HOT or COLD
cluster_persistent_capacity_limit Soft capacity limit (TB)
node_ips, existing_node_ips, final_node_ips Comma-separated node IPs: operation targets, stable existing nodes, nodes kept after the operation
instance_ids Comma-separated EC2 instance IDs
fault_domain_ids Comma-separated fault-domain IDs
number_azs Availability-zone count
float_ips, max_float_ips Floating IPs and the per-cluster maximum
netmask Node netmask
networking_mode qumulo_managed or host_managed networking mode
s3_region Bucket region
QUMULO_S3_BASE_URL Qumulo Core package registry base URL

Node script (node_hooks), in scope at pre_run:

Variable Holds
TEMPLATE_QUMULO_VERSION Target Qumulo Core version
EXISTING_NODE_IPS Comma-separated existing cluster node IPs (empty on initial create)
NETWORKING_MODE qumulo_managed or host_managed networking mode
AWS_REGION AWS region
DISTRO_ID, DISTRO_TYPE, PKG_FORMAT, PKG_INSTALL_CMD Distro-detection results
QUMULO_S3_BASE_URL Qumulo Core package registry base URL

Provisioner script (provisioner_hooks):

Variable Holds
region Azure location
deployment_name Deployment unique name
cluster_name qfsd cluster name
cluster_version Qumulo Core version
cluster_product_type Qumulo product type
cluster_object_storage_uri Object-storage URI list
cluster_persistent_capacity_limit Soft capacity limit (TB)
container_name Storage container name
az_cloud_environment Azure cloud (AzureCloud, AzureUSGovernment, ...)
managed_identity_client_id Managed-identity client ID
node_ips, existing_node_ips, final_node_ips Comma-separated primary node IPs: operation targets, stable existing nodes, nodes kept after the operation
instance_ids Comma-separated VM IDs
num_azs Availability-zone count
fault_domain_ids Comma-separated fault-domain IDs
new_floating_ips, max_floating_ips Floating IPs and the per-cluster maximum
keyvault_uri Key Vault URI
subnet_id, subnet_cidr, network_security_group_id Network identifiers
networking_mode qumulo_managed or host_managed networking mode
QUMULO_S3_BASE_URL Qumulo Core package registry base URL

Node script (node_hooks), in scope at pre_run:

Variable Holds
TEMPLATE_QUMULO_VERSION Target Qumulo Core version
EXISTING_NODE_IPS Comma-separated existing cluster node IPs (empty on initial create)
NETWORKING_MODE qumulo_managed or host_managed networking mode
DISTRO_ID, DISTRO_TYPE, PKG_FORMAT, PKG_INSTALL_CMD Distro-detection results
QUMULO_S3_BASE_URL Qumulo Core package registry base URL

Provisioner script (provisioner_hooks):

Variable Holds
region GCP region
deployment_name Deployment unique name
cluster_name qfsd cluster name
cluster_persistent_bucket_uris Comma-separated GCS bucket URIs
cluster_persistent_capacity_limit Soft capacity limit (TB)
node_ips, existing_node_ips, final_node_ips Comma-separated node IPs: operation targets, stable existing nodes, nodes kept after the operation
fault_domain_ids Comma-separated fault-domain IDs
number_azs Zone count
float_ips Floating IPs
subnet_cidr Cluster subnet CIDR
networking_mode qumulo_managed or host_managed networking mode
QUMULO_S3_BASE_URL Qumulo Core package registry base URL

Node script (node_hooks), in scope at pre_run:

Variable Holds
TEMPLATE_QUMULO_VERSION Target Qumulo Core version
EXISTING_NODE_IPS Comma-separated existing cluster node IPs (empty on initial create)
NETWORKING_MODE qumulo_managed or host_managed networking mode
DISTRO_ID, DISTRO_TYPE, PKG_FORMAT, PKG_INSTALL_CMD Distro-detection results
QUMULO_S3_BASE_URL Qumulo Core package registry base URL

Not in scope

Value Scope
Cluster admin password Never in scope for a hook. Set after pre_run and unset before post_run on every cloud.
Qumulo Core package download URLs Not in scope at node pre_run. Resolved after live-cluster version detection.