Skip Navigation Links | |
Exit Print View | |
![]() |
Oracle® ZFS Storage Appliance Customer Service Manual For ZS3-x, 7x20 Controllers, and DE2-24, Sun Disk Shelves |
Chapter 2 Hardware Maintenance
Managing Support Bundles Using the BUI
Generating and Uploading a Support Bundle Using the BUI
Managing Support Bundles Using the CLI
Scheduling Software Notification Using the BUI
Scheduling Software Notification Using the CLI
Checking for Updates Using the BUI
Checking for Updates Using the CLI
Troubleshooting Update Health Check Failures
Actions to Take to Resolve Health Check Alerts
Steps for Resolving Health Check Alerts
Performing the Cluster Upgrade
Applying Deferred Updates (CLI)
Triple-Parity RAID Deferred Update
Data Deduplication Deferred Update
Received Properties Deferred Update
Snapshot Deletion Deferred Update
Recursive Snapshots Deferred Update
Multiple Initiator Groups per LUN
Managing Configuration Backups Using the BUI
Restore from a Saved Configuration
Managing Configuration Backups Using the CLI
Restore from a Saved Configuration
Alert Action Execution Context
Workflows may optionally validate their input by adding a validate member that takes as a parameter an object that contains the workflow parameters as members. The validate function should return an object where each member is named with the parameter that failed validation, and each member's value is the validation failure message to be displayed to the user. To extend our example to give a crisp error if the user attempts to create an extant share:
var workflow = { name: 'Create share', description: 'Creates a new share in a business unit', parameters: { name: { label: 'Name of new share', type: 'String' }, unit: { label: 'Business unit', type: 'ChooseOne', options: [ 'development', 'finance', 'qa', 'sales' ], optionlabels: [ 'Development', 'Finance', 'Quality Assurance', 'Sales/Administrative' ], } }, validate: function (params) { try { run('shares select ' + params.unit); run('select ' + params.name); } catch (err) { if (err.code == EAKSH_ENTITY_BADSELECT) return; } return ({ name: 'share already exists' }); }, execute: function (params) { try { run('shares select ' + params.unit); } catch (err) { if (err.code != EAKSH_ENTITY_BADSELECT) throw (err); /* * We haven't yet created a project that corresponds to * this business unit; create it now. */ run('shares project ' + params.unit); set('mountpoint', '/export/' + params.unit); run('commit'); run('shares select ' + params.unit); } run('filesystem ' + params.name); run('commit'); return ('Created new share "' + params.name + '"'); } };