* implementation of GET and DELETE for Job Queue API
* implement POST jobs submission to queue via API
* implement GET /queue/backends API endpoint to get backend names
* Add macsuck worker to collect various PortAccessEntity (NAC) attributes
* Incorporate PAE feedback on #937
* missing Result/Device.pm column added
* pae_is... columns instead of pae_capabilities
* moved most code to Util/PortAccessEntity.pm so the update can
be done in discover and macsuck
* Refactor PAE attributes during discover as separate Plugin
* PortAccessEntity: don't use device->dns in log string
* Fix "Experimental keys on scalar is now forbidden" test failure
* Revamp pae_control and add missing attribute
- device.pae_control (text) is now device.pae_is_enabled (bool)
- also store pae_authconfig_port_control (port mode auto/force(un)Auth)
* Fix "Experimental keys on scalar is now forbidden" test failure
- ... again because of botched merge
- at least perlgolfed away a set of curly braces
* Update PortAccessEntity.pm
* Incorporate @ollyg PR feedback
* allow actions without transport to run when there are also no creds
* initial refactor for separate gather, process, store phases for macsuck
* factor out the vlan sanity check
* additional help with log of action workers
* cleanup logic in check macsuck
* refactor to make main phases only
* some fixes
* implement file slurp. amazingly the whole thing works
* remove outdated noop from test
* treat error as critical, use cancel to suppress further drivers
* big refactor to share mac sanity code to both paths
* fix inverted logic on vlan sanity filter
* some code tidy
* fix error in default value
* fix for vlan 0 nodes input from cli
* ensure imported MACs are IEEE format
* add api endpoint, no useful return status yet
* exit status if error from nodes PUT
* suppress other networked workers when direct workers are active
* better log showing worker
* fix status recording to get first error or last done message
* implement arpnip API PUT
* avoid package redeclaration error
* make sure write API methods require admin status
* add doc for passing JSON data to arpnip and macsuck
* update manifest
* remove option to do jobs in web handler; all by queue now
* use job entry timestamp for offline queued jobs
* fix store username and IP on api PUT
* never de-duplicate user-submitted jobs; never reset DeviceSkip for offline jobs
* myworker no longer needed
* make logic cleaner
Co-authored-by: Christian Ramseyer <ramseyer@netnea.com>
* initial v0 creator
* working json api for generic reports
* add require login
* move report swagger into plugin, and set new default layout of noop
* require proper role and also use new util func
* start to tidy authn
* some work on cleaning up web authn
* clean up the authN checks
* fix bug
* fix the auth for api
* fixes to json handling
* set swagger sort order
* enable most reports for api endpoints
* fix doc
* add paramters to reports
* add missed report
* allow api_parameters in reports config
* reorganise api
* add vlan search
* add port search
* make sure to enable layout processing
* add device search
* add v1 to api paths
* add Node Search
* support api_responses
* add device object search; fix spurious ports field in device result class
* handle some plugins just returning undef if search fails
* errors from api seamlessley
* fix error in date range default
* more sensible default for prefix
* change order of endpoints in swagger-ui
* all db row classes can now TO_JSON
* add device_port api endpoint
* add device ports endpoint
* do not expand docs
* add swagger ui json tree formatter
* add all relations from Device table
* add port relations
* add nodes retrieve on device or vlan
* rename to GetAPIKey
* update config for previous commit