* New report:devices command
Print out a list of devices with user specified fields, optionally in csv format
* Polish
* Apply fixes from StyleCI
* Use spaces instead of tab for none type
* Fix method call
* other commands use whereDeviceSpec
* Apply fixes from StyleCI
* update command help and back to tab for separator
---------
Co-authored-by: StyleCI Bot <bot@styleci.io>
* Agent: Packages fixes
Don't try to save invalid packages, probably due to script failure on device.
Add pacman support
* Apply fixes from StyleCI
* Add version
* cast to number
* Update includes/polling/unix-agent/packages.inc.php
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
---------
Co-authored-by: StyleCI Bot <bot@styleci.io>
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Vmware vminfo
Remove legacy file and migrate to OS discovery
* tighter
* ios_stp-vlans working correctly now
* Make vmwVmGuestOS nullable
* Discover os info too
* VM Info module
* Apply fixes from StyleCI
* Fix log severity
* Fix log severity (more)
* VM Info module
* Poll with ESXi too because it is lightweight
add test data
* poller data now too
---------
Co-authored-by: StyleCI Bot <bot@styleci.io>
* Refactor poller to allow modules to run even if the device is down
Include core in config (but not webui) to avoid silly shenanigans
Inject datastore into polling
* Needed to split datastore interface
* Cleanup some data_udpate() references
* Apply fixes from StyleCI
* Fix legacy poller :D
* Output to the correct stream
* Fix lint issues
* Apply fixes from StyleCI
* Fix discovery not including core and submodule handling
* Use whereRaw
---------
Co-authored-by: StyleCI Bot <bot@styleci.io>
* Fix alerting find owner contacts on old SQL server versions
Older SQL server versions had a bug where they didn't accept parenthesis around the first query of a union statement.
It was difficult to remove these parenthesis, so use whereHas instead.
* Fix style
* add the softdeletes migrations for applications
* add working migration file
* add deleted_at to db schema.yaml for applications
* update includes/html/forms/application-update.inc.php to work with softdeletes
* update includes/html/pages/device/edit/apps.inc.php for softdelete
* update includes/discovery/applications.inc.php to work with softdelete
* minor updates to application-update.inc.php for disabling
* style cleanup
* set discovered when running discovery
* update application tests to include deleted_at
* add deleted_at to a missed test
* a few more tweaks for opensips
* add a missing deleted_at for linux_suricata_extract-v1
* fix fillable for Application model
* massive cleanup of the application update widget thingy
* improve the code for discovery and using Laravel
* add a missing line to app/Models/Application
* add a missing include to app/Models/Application.php
* record includes for Application model
* remove apps from the applications table when a device is deleted
* revert to using upcert and where for discovery to fix CI
* make discovered fillable and set it when running discovery... convert back to firstOrNew
* clean up application discovery a bit and use observer
* style fix
* spelling fix... disablaed -> disabled
* rever removal to just use where
* cleanup app removal on delete
* add restored to ModuleModelObserver
* delete -> forcedelete fix
* apply the suggested changes
* use murrants other suggestion
* style fix
* Install bouncer
* Seeder and level migration
* Display and edit roles
* remove unused deluser page
* Update Radius and SSO to assign roles
* update AlertUtil direct level check to use roles instead
* rewrite ircbot auth handling
* Remove legacy auth getUserlist and getUserlevel methods, add getRoles
Set roles in LegacyUserProvider
* Small cleanups
* centralize role sync code
show roles on user preferences page
* VueSelect component WIP and a little docs
* WIP
* SelectControllers id and text fields.
* LibrenmsSelect component extracted from SettingSelectDynamic
* Handle multiple selections
* allow type coercion
* full width settings
* final style adjustments
* Final compiled assets update
* Style fixes
* Fix SSO tests
* Lint cleanups
* small style fix
* don't use json yet
* Update baseline for usptream package issues
* Change schema, not 100% sure it is correct
not sure why xor doesn't work
* Added empty string check
* replaced tabs with spaces
replaced tabs with spaces
* Removed '(', ')' and enlarged if clause
* Added one space and removed an empty row
* removed is_null
Removed is_null check as static code analysis says that this variable cannot be null at this time
* compact form
* handle spaces
In case the sysName is " " (one space). Good to trim anyway.
---------
Co-authored-by: PipoCanaja <38363551+PipoCanaja@users.noreply.github.com>
* Add no_proxy and other proxy related settings
Set user agent on all http client requests
Unify http client usage
* Style fixes
* Remove useless use statements
* Correct variable, good job phpstan
* Add tests
fix https_proxy bug
add tcp:// to the config settings format
* style and lint fixes
* Remove guzzle from the direct dependencies
* Use built in Laravel testing functionality
* update baseline
* Move `resources/lang` folder
* Shift registered middleware
* Remove `fruitcake/laravel-cors` dependency
* Streamline `$commands` property
* Upgrade to Flysystem 3.0
* Shift core files
* Convert `optional()` to nullsafe operator
* Remove unnecessary `$model` property
* Convert route options to fluent methods
Laravel 8 adopts the tuple syntax for controller actions. Since the old options array is incompatible with this syntax, Shift converted them to use modern, fluent methods.
* Convert deprecated `$dates` property to `$casts`
* Shift config files
* Default config files
In an effort to make upgrading the constantly changing config files
easier, Shift defaulted them and merged your true customizations -
where ENV variables may not be used.
* Bump Laravel dependencies
* Use `<env>` tags for configuration
`<env>` tags have a lower precedence than system environment variables making it easier to overwrite PHPUnit configuration values in additional environments, such a CI.
Review this blog post for more details on configuration precedence when testing Laravel: https://jasonmccreary.me/articles/laravel-testing-configuration-precedence/
* Fix error provider
* Match new symfony syntax
* Match upstream syntax
* Fix route syntax
* generate composer.lock
* Sync back configs
* routes
* composer
* Fix more flare
* fix cors
* sync lang
* Apply fixes from StyleCI (#14517)
Co-authored-by: StyleCI Bot <bot@styleci.io>
* bump larastan
* update packages
* wip
* Temporarily lower phpstan level
* Update phpstan.neon
* wip
* wip
* wip
* Apply fixes from StyleCI (#14592)
Co-authored-by: StyleCI Bot <bot@styleci.io>
* test
* Update CiHelper.php
* Update test.yml
* Update CiHelper.php
* Update CiHelper.php
* Apply fixes from StyleCI (#14616)
Co-authored-by: StyleCI Bot <bot@styleci.io>
* test?
* fix phpstan problems
* dont run snmpsim on github ci
* Fix whitespace
* More whitespace
* More whitespace ???
* I think the space broke it
* fix the reset of the whitespace
* hard code auth guard
---------
Co-authored-by: Shift <shift@laravelshift.com>
Co-authored-by: StyleCI Bot <bot@styleci.io>
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Solves error discovering services module
* Removing trailing spaces
* Allow in device group scopes to accept an array
* Fix and optimize queries a little
---------
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Ignore everyting inside () during GEO lookup
I location info is: "1100 Congress Ave, Austin, TX 78701 (3rd floor meeting room)" then the GEO locator will look up "1100 Congress Ave, Austin, TX 78701"
* update info
* small typo
* typo fix
* getting verify
* style fix
* commitment issues
* updating wiki
* tweaking the document format
* more tweaks
* Im starting to hate md
* cleanup
PHP 5.5.9 adds the new static `class` property which provides the fully qualified class name. This is preferred over using strings for class names since the `class` property references are checked by PHP.
Co-authored-by: Shift <shift@laravelshift.com>
* fix VRP not cleaning BGP peers properly
* fix missing field in BgpPeer model
* Update includes/discovery/bgp-peers/vrp.inc.php
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Eloquent for 2 requests
* Eloquent for 1 request
* a few in Dell
* Model
* and more with timos
* and more with timos
* and firebrick
* firebrick
* one query instead of many
* Should use collection get
* Update timos.inc.php
* Update dell-os10.inc.php
* avoid changing timos as it breaks something
* new try with timos
* deps for BGP
* revert deps for BGP
* style
* style
* deps for BGP, 2nd try
* typo
* revert aos7
* fix create
* firebricktests
* firebrick
* firebrick
* cipsec-fix
* cipsec
* timos fix 100th time :)
* ./scripts/save-test-data.php -m os,ports,processors,mempools,vrf,sensors,bgp-peers,mpls,ospf -o timos -v 7705
* remove timos from this PR
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Disable plugins that have errors
Disable plugin if a hook throws an error and set a notification
Move notification code to class, so we can access it
Clear notification when plugin is attempted to be enabled again
* fix style and lint fixes
* another lint fix and handle if property is missing
* use component to discover if xDSL polling is needed
use component to discover if xDSL polling is needed
* Components OK, Polling in correct files, no DB for VDSL
* GUI
GUI_suite
* per port as well
* rename
* interface listing
* draytek_snmpsim
* fix arraymerge
fix names and max value
* schema
schema
style
* remove one dbFetchRows
remove 2x dbFetchCell
style
style
remove Legacy dbFetchRow
tests
tests
eloquent
more eloquent
more eloquent
one more gone
* fix properties access
eloquent_insert_update
style
tests
tests
tests
tests
* tests
tests
tests
* adslLineCoding
* Models
* fix not nullable cols in DB from code
default values
typo
rename
typo
schema
fix
fix
vdsl fix now
typo
typo
fix size
fix size
* Power values for VDSL
Power values for VDSL
Power values for VDSL
DB
* cleanup
* Rrd::checkRrdExists
* always enable DSL discovery
style
* xdsl module
* cleanup and move to Module
cleanup and move to Module
cleanup and move to Module
cleanup and move to Module
* Fix display
* fix polling and tenth
* remove legacy poller
* Style and Cosmetics
Cosmetics
Cleanup
* Translations
Translations
* exists
exists
* add test support for xdsl
* remove last component call
unused
* translations
* remove non standard onclick event on xdsl line
* Update Discovery Support.md
Update Poller Support.md
toner_gone
* Notification for removal of lnms config:set enable_ports_adsl true
* enable on devices with potential DSL interfaces
* tests are working now
fix teldat tests
* os_schema
* teldat
* move to new module structure
* move to new module structure
* wrong dump function
* wrong dump function
* laravel_through_key hidden
* Update notifications.rss
* Update notifications.rss
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Error reporting
* Move code to ErrorReportingProvider
Enable reporting of error (and warning) messages.
report module exceptions
* Restore flare key
Not needed to set late anymore. We set up filtering before it is initialized.
* Remove unnecessary and maybe double Flare report
* lint
* Cannot use typed properties yet, use phpdoc
* fix handleError return type
* Filter both exceptions and reports (so we don't miss any)
Consolidate the check if reporting should be enabled
* Cache reportingEnabled check for the runtime
* Split out middleware to improve readability
Logging of why reporting is disabled
Fix reportingEnabled cache
* Style
* Return some user data
* Change to class based middleware, it looks nicer
* Fix error page error id report, add url.
* also rewrite intended url
* remove link
* Move ignition to production and update flare-client
Co-authored-by: Tony Murray <murraytony@gmail.com>
* Correct logic for recurring alert rules that span UTC days. Evaluate the day of week in local time.
* Enable previously broken test cases
* Update TestScheduledMaintenance.php
Co-authored-by: Tony Murray <murraytony@gmail.com>
* New Poller validations
Seperated poller and distributed poller validations to make poller validations generally available
One auto fixer added
Translatable strings
* lint and style fixes
* and style
* and style
* Update LibreNMS/Validations/Poller/CheckLocking.php
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>
* Update CheckPythonWrapper.php
* Try to check if cron is even installed before warning about not being able to read the cron files.
Likely most systems they won't be readable, but also, it is very unlikely we hit the cron check and it is meaningfully different than the first Poller::exists() check.
* Work on poller validation
Remove errors/warnings when at least one poller of the other type is active.
* style fixes
Co-authored-by: Jellyfrog <Jellyfrog@users.noreply.github.com>