Schema

Customized Share Properties

In addition to the standard built in properties, you can configure any
number of additional properties that are available on all shares and projects.
These properties are given basic types for validation purposes, and are inherited like most
other standard properties. The values are never consumed by the software in
any way, and exist solely for end-user consumption. The property schema is
global to the system, across all pools, and is synchronized between cluster peers.

BUI

To define custom properties, access the "Shares -> Schema" navigation item. The current
schema is displayed as a list, and entries can be added or
removed as needed. Each property has the following fields:

Field

Description

NAME

The CLI name
for this property. This must contain only alphanumeric characters or the
characters ".:_\".

DESCRIPTION

The BUI name for this property. This can contain arbitrary
characters and is used in the help section of the CLI

TYPE

The property
type, for validation purposes. This must be one of the types
described below.

The valid types for properties are the following

BUI Type

CLI Type

Description

String

String

Arbitrary
string data. This is the equivalent of no validation.

Integer

Integer

A positive or
negative integer

Positive Integer

PositiveInteger

A positive integer

Boolean

Boolean

A true/false value. In the BUI this
is presented as a checkbox, while in the CLI it must be
one of the values "true" or "false".

Email Address

EmailAddress

An email address. Only
minimal syntactic validation is done.

Hostname or IP

Host

A valid DNS hostname or IP
(v4 or v6) address.

Once defined, the properties are available under the general properties tab, using the
description provided in the property table. Properties are identified by their CLI
name, so renaming a property will have the effect of removing all existing
settings on the system. A property that is removed and later renamed
back to the original name will still refer to the previously set values.
Changing the types of properties, while supported, may have undefined results on
existing properties on the system. Existing properties will retain their current settings,
even if they would be invalid given the new property type.