Omitir vínculos de navegación | |
Salir de la Vista de impresión | |
![]() |
Guía de administración de Oracle® ZFS Storage Appliance, versión 2013.1.3.0 |
Acerca de Oracle ZFS Storage Appliance
Configuración de Oracle ZFS Storage Appliance
Mantenimiento de Oracle ZFS Storage Appliance
Trabajar con flujos de trabajo de mantenimiento
Descripción de flujos de trabajo
Descripción de los parámetros de flujos de trabajo
Parámetros restringidos de flujos de trabajo
Parámetros de flujo de trabajo opcionales
Manejo de errores de flujo de trabajo
Auditoría y generación de informes de ejecución de flujos de trabajo
Descripción de control de versiones de flujos de trabajo
Uso de los flujos de trabajo para acciones de alerta
Uso de flujos de trabajo programados
Uso de flujo de trabajo programado
Codificación de programas de flujo de trabajo
Crear una hoja de trabajo basada en un tipo de unidad especificado
Carga de flujos de trabajo con la BUI
Descarga de flujos de trabajo mediante el uso de la CLI
Mostrar flujos de trabajo mediante el uso de la CLI
Ejecución de flujos de trabajo con la CLI
Trabajo con recursos compartidos
Integración de aplicaciones con Oracle ZFS Storage Appliance
Los flujos de trabajo pueden, de manera opcional, validar la entrada que reciben; para ello, agregan un miembro validate que toma como parámetro un objeto que contiene los parámetros del flujo de trabajo como miembros. La función validate debe devolver un objeto en el que cada miembro tenga el nombre del parámetro que falló la validación y el valor de cada miembro sea el mensaje de fallo de validación que se debe mostrar al usuario.
Ejemplo 4-6 Validación de entradas de flujo de trabajoPara ampliar nuestro ejemplo a fin de generar un error claro si el usuario intenta crear un recurso compartido existente:
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 + '"'); } };