UNPKG

n8n-nodes-proxmox

Version:

n8n community node for Proxmox Virtual Environment (VE) API integration with VM, container, storage, and cluster management capabilities

156 lines (155 loc) 4.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.clusterFields = exports.clusterOperations = void 0; const baseProperties_1 = require("./baseProperties"); exports.clusterOperations = { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['cluster'], }, }, options: [ { name: 'Get Version', value: 'getVersion', description: 'Get ProxMox VE version information (no special permissions required)', action: 'Get version', }, { name: 'Get Status', value: 'getStatus', description: 'Get cluster status information (requires Sys.Audit permission)', action: 'Get cluster status', }, { name: 'Get Resources', value: 'getResources', description: 'List all cluster resources', action: 'Get cluster resources', }, { name: 'Get Nodes', value: 'getNodes', description: 'List all cluster nodes', action: 'Get cluster nodes', }, { name: 'Get Tasks', value: 'getTasks', description: 'List cluster tasks', action: 'Get cluster tasks', }, { name: 'Get Config', value: 'getConfig', description: 'Get cluster configuration', action: 'Get cluster configuration', }, ], default: 'getVersion', }; exports.clusterFields = [ // Get Resources fields { displayName: 'Resource Type', name: 'resourceType', type: 'options', options: [ { name: 'All', value: '' }, { name: 'VM', value: 'vm' }, { name: 'Storage', value: 'storage' }, { name: 'Node', value: 'node' }, ], default: '', description: 'Filter resources by type', displayOptions: { show: { resource: ['cluster'], operation: ['getResources'], }, }, }, { displayName: baseProperties_1.returnAllOption.displayName, name: baseProperties_1.returnAllOption.name, type: baseProperties_1.returnAllOption.type, default: baseProperties_1.returnAllOption.default, description: baseProperties_1.returnAllOption.description, displayOptions: { show: { resource: ['cluster'], operation: ['getResources', 'getTasks', 'getNodes'], }, }, }, { displayName: baseProperties_1.limitOption.displayName, name: baseProperties_1.limitOption.name, type: baseProperties_1.limitOption.type, typeOptions: baseProperties_1.limitOption.typeOptions, default: baseProperties_1.limitOption.default, description: baseProperties_1.limitOption.description, displayOptions: { show: { resource: ['cluster'], operation: ['getResources', 'getTasks', 'getNodes'], returnAll: [false], }, }, }, // Get Tasks fields { displayName: 'Running Only', name: 'runningOnly', type: 'boolean', default: false, description: 'Show only running tasks', displayOptions: { show: { resource: ['cluster'], operation: ['getTasks'], }, }, }, // Additional options for various operations { displayName: 'Additional Fields', name: 'additionalFields', type: 'collection', placeholder: 'Add Field', default: {}, displayOptions: { show: { resource: ['cluster'], operation: ['getTasks', 'getResources'], }, }, options: [ { displayName: 'Node', name: 'node', type: 'string', default: '', description: 'Filter by specific node', }, { displayName: 'VM ID', name: 'vmid', type: 'number', default: '', description: 'Filter by specific VM/Container ID', }, { displayName: 'User', name: 'user', type: 'string', default: '', description: 'Filter by user who started the task', }, ], }, ];