* Rewrite smokeping script to be an lnms command
* Add a default number of probes for smokeping
* Formatting fixes
* Refactor to simplify a couple of methods
* Fix a name collision when using more than 60 threads
* Simplify
* First pass at documentation
A few climate fixes too.
I'm a little dubious about the + LibreNMS fix - it could be included
in /etc/smokeping/config if it is really needed, but it sounds like
(looking at git blame) it's needed for if the script generates a broken
configuration file.
I'm thinking we should just not generate broken config.
* Improve testability and add some tests
* Load laravel to make translations available
* Second pass at documentation
* Fix brace
* Extend the device factory to include the type
Also adds a device group fake I created before I realised I didn't need it
* Mimic gen_smokeping.php a little more closely
* Update tests to properly verify old and new behaviour against each other
* Replace gen_smokeping with a wrapper
* Don't double whitespace
Render does this automatically.
Explicitly order by hostname too.
* Make faker less likely to generate duplicates
I tried adding a unique constraint here, but it didn't have the
intended effect.
Extending the hostname like this seems to work fine - I tried
generating 10 million hosts and got no duplicates, compared to
duplicates appearing with as few as 100 hosts without this
change.
A true fix would be to add an 'fqdn' fake upstream.
* Make the tests more robust
* Assorted bug fixes
* Style corrections
* Handle 'generic' devices
* Fix an issue that came up during rebase
Co-authored-by: Tony Murray <murraytony@gmail.com>