func init()

in component/azstorage/azstorage.go [615:699]


func init() {
	internal.AddComponent(compName, NewazstorageComponent)
	RegisterEnvVariables()

	useHttps := config.AddBoolFlag("use-https", true, "Enables HTTPS communication with Blob storage.")
	config.BindPFlag(compName+".use-https", useHttps)
	useHttps.Hidden = true

	blockListSecFlag := config.AddInt32Flag("cancel-list-on-mount-seconds", 0, "Number of seconds list call is blocked post mount")
	config.BindPFlag(compName+".block-list-on-mount-sec", blockListSecFlag)
	blockListSecFlag.Hidden = true

	containerNameFlag := config.AddStringFlag("container-name", "", "Configures the name of the container to be mounted")
	config.BindPFlag(compName+".container", containerNameFlag)

	useAdls := config.AddBoolFlag("use-adls", false, "Enables blobfuse to access Azure DataLake storage account.")
	config.BindPFlag(compName+".use-adls", useAdls)
	useAdls.Hidden = true

	maxConcurrency := config.AddUint16Flag("max-concurrency", 32, "Option to override default number of concurrent storage connections")
	config.BindPFlag(compName+".max-concurrency", maxConcurrency)
	maxConcurrency.Hidden = true

	httpProxy := config.AddStringFlag("http-proxy", "", "HTTP Proxy address.")
	config.BindPFlag(compName+".http-proxy", httpProxy)
	httpProxy.Hidden = true

	httpsProxy := config.AddStringFlag("https-proxy", "", "HTTPS Proxy address.")
	config.BindPFlag(compName+".https-proxy", httpsProxy)
	httpsProxy.Hidden = true

	maxRetry := config.AddUint16Flag("max-retry", 3, "Maximum retry count if the failure codes are retryable.")
	config.BindPFlag(compName+".max-retries", maxRetry)
	maxRetry.Hidden = true

	maxRetryInterval := config.AddUint16Flag("max-retry-interval-in-seconds", 3, "Maximum number of seconds between 2 retries.")
	config.BindPFlag(compName+".max-retry-timeout-sec", maxRetryInterval)
	maxRetryInterval.Hidden = true

	retryDelayFactor := config.AddUint16Flag("retry-delay-factor", 1, "Retry delay between two tries")
	config.BindPFlag(compName+".retry-backoff-sec", retryDelayFactor)
	retryDelayFactor.Hidden = true

	setContentType := config.AddBoolFlag("set-content-type", true, "Turns on automatic 'content-type' property based on the file extension.")
	config.BindPFlag(compName+".set-content-type", setContentType)
	setContentType.Hidden = true

	caCertFile := config.AddStringFlag("ca-cert-file", "", "Specifies the proxy pem certificate path if its not in the default path.")
	config.BindPFlag(compName+".ca-cert-file", caCertFile)
	caCertFile.Hidden = true

	debugLibcurl := config.AddStringFlag("debug-libcurl", "", "Flag to allow users to debug libcurl calls.")
	config.BindPFlag(compName+".debug-libcurl", debugLibcurl)
	debugLibcurl.Hidden = true

	virtualDir := config.AddBoolFlag("virtual-directory", false, "Support virtual directories without existence of a special marker blob.")
	config.BindPFlag(compName+".virtual-directory", virtualDir)

	subDirectory := config.AddStringFlag("subdirectory", "", "Mount only this sub-directory from given container.")
	config.BindPFlag(compName+".subdirectory", subDirectory)

	disableCompression := config.AddBoolFlag("disable-compression", false, "Disable transport layer compression.")
	config.BindPFlag(compName+".disable-compression", disableCompression)

	telemetry := config.AddStringFlag("telemetry", "", "Additional telemetry information.")
	config.BindPFlag(compName+".telemetry", telemetry)
	telemetry.Hidden = true

	honourACL := config.AddBoolFlag("honour-acl", false, "Match ObjectID in ACL against the one used for authentication.")
	config.BindPFlag(compName+".honour-acl", honourACL)
	honourACL.Hidden = true

	cpkEnabled := config.AddBoolFlag("cpk-enabled", false, "Enable client provided key.")
	config.BindPFlag(compName+".cpk-enabled", cpkEnabled)

	preserveACL := config.AddBoolFlag("preserve-acl", false, "Preserve ACL and Permissions set on file during updates")
	config.BindPFlag(compName+".preserve-acl", preserveACL)

	blobFilter := config.AddStringFlag("filter", "", "Filter string to match blobs. For details refer [https://github.com/Azure/azure-storage-fuse?tab=readme-ov-file#blob-filter]")
	config.BindPFlag(compName+".filter", blobFilter)

	config.RegisterFlagCompletionFunc("container-name", func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
		return nil, cobra.ShellCompDirectiveNoFileComp
	})
}