* fix anomalous name * add gather worker * fix encoding of binary storage * store results back to job * now parsing mbis report to translate * fix the broken report parser * rename gather to snapshot * implement walk code copied from SNMP::Info * can now bulkwalk and parse mibs report and store resolved walk in cache * add func/glob aliasing broken * better aliasing * implement aliasing from globals and funcs * fix regexp for matching netdisco-mibs report * fake cache entry for all ND2 methods called, add comments * also save to logs/snapshots/IP * add doc for netdisco-do * add is_pseudo column to device table * support for loading cache for pseudo devices * check for hrSystemUptime as well as sysUpTime for snmp connect * display pseudo devices with yellow pill for name * color all cells for layers for pseudo * no need to b64 encode binary data in scalars as we b64 whole thing after * tweaked uptime check * store snapshot to database instead of Job * expose snapshots in device details tab * small ux improvements on snap download * fixes for errors in subnet mask searching * hide snapshot management for pseudo devices * update to use new netdisco-mibs object cache * update for new format oids file * start of work on loading walk into db for browsing * store values and meta * add auto increment col and oid index to browser * start web plugin for browser * add virtual search for oid children * have all oid in separte table (60 seconds load on my laptop) * rename table and add relation * store oid as int array * fix sql for children * make jstree start working * working very slow tree expand * fix to work when first displaying tree * store both oid and oid_parts * simplify SQL to speed up (more complicated perl) * fix sql bug, add better index, prettify tree * render the snmp node detail * add node template, make scrollable, pretty print data values (insecure) * store munge hint * some dubious code to munge the data * make sure to filter by IP on device_browser * make safer the rendering of value data (but need to come back to key ordering) * fix sorting on object values * limit the opening of child nodes to keep response good and unclutter * factor out the munge and make safer * reject unknown mungers * show the munger and option (not working) to change * additional js for munge select * complete custom munge * change so that saving to database is only at CLI and on request * hide snmp tab if no browser rows in the db * add helpful message when no browser rows for the device * stub handler for search and add recurse control * working search * minor ui fixes * implement typeahead for leaf search * limit rows in typeahead * make sure device_browser is visited in delete and renumber * add requirements for this branch * update manifest * make sure node search and typeahead are restricted to current device only
		
			
				
	
	
		
			142 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Perl
		
	
	
	
	
	
			
		
		
	
	
			142 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			Perl
		
	
	
	
	
	
| use strict;
 | |
| use warnings;
 | |
| use Module::Build;
 | |
| 
 | |
| Module::Build->new(
 | |
|   module_name => 'App::Netdisco',
 | |
|   license     => 'bsd',
 | |
|   dynamic_config => 1,
 | |
|   configure_requires => {
 | |
|     'DBIx::Class' => '0.082810',
 | |
|     'Module::Build' => '0.42',
 | |
|   },
 | |
|   build_requires => {
 | |
|     'ExtUtils::Config' => '0',
 | |
|     'ExtUtils::Helpers' => '0',
 | |
|     'ExtUtils::InstallPaths' => '0',
 | |
|   },
 | |
|   requires => {
 | |
|     'aliased' => '0',
 | |
|     'autovivification' => '0',
 | |
|     'namespace::clean' => '0.24',
 | |
|     'version' => '0.9902',
 | |
|     'Algorithm::Cron' => '0.07',
 | |
|     'AnyEvent' => '7.05',
 | |
|     'AnyEvent::DNS::EtcHosts' => '0',
 | |
|     'App::cpanminus' => '1.6108',
 | |
|     'App::local::lib::helper' => '0.07',
 | |
|     'Archive::Extract' => '0',
 | |
|     'Authen::Radius' => '0',
 | |
|     'Authen::TacacsPlus' => '0',
 | |
|     'CGI::Expand' => '2.05',
 | |
|     'Command::Runner' => 0,
 | |
|     'Data::Printer' => '0',
 | |
|     'Data::Visitor::Tiny' => '0',
 | |
|     'DBD::Pg' => '0',
 | |
|     'DBIx::Class' => '0.082841',
 | |
|     'DBIx::Class::Helpers' => '2.033004',
 | |
|     'Daemon::Control' => '0.001006',
 | |
|     'Dancer' => '1.3132',
 | |
|     'Dancer::Plugin::Auth::Extensible' => '0.30',
 | |
|     'Dancer::Plugin::DBIC' => '0.2001',
 | |
|     'Dancer::Plugin::Passphrase' => '2.0.1',
 | |
|     'Dancer::Plugin::Swagger' => '0',
 | |
|     'Dancer::Session::Cookie' => '0.27',
 | |
|     'Expect' => '0',
 | |
|     'File::Path' => '0',
 | |
|     'File::Spec::Functions' => '0',
 | |
|     'File::ShareDir' => '1.03',
 | |
|     'File::Slurper' => '0.009',
 | |
|     'Guard' => '1.022',
 | |
|     'HTML::Parser' => '3.70',
 | |
|     'HTTP::Tiny' => '0.029',
 | |
|     'IO::Socket::INET6' => '2.72',
 | |
|     'IO::Socket::SSL' => '2.048',
 | |
|     'JSON' => '2.90',
 | |
|     'JSON::PP' => '0',
 | |
|     'JSON::XS' => '3.01',
 | |
|     'List::Util' => '1.49',
 | |
|     'List::MoreUtils' => '0.428',
 | |
|     'MIME::Base64' => '3.13',
 | |
|     'Module::Load' => '0.32',
 | |
|     'Moo' => '1.001000',
 | |
|     'MCE' => '1.866',
 | |
|     'Net::Domain' => '1.23',
 | |
|     'Net::DNS' => '0.72',
 | |
|     'Net::LDAP' => '0',
 | |
|     'Net::OpenSSH' => '0',
 | |
|     'NetAddr::MAC' => '0.93',
 | |
|     'NetAddr::IP' => '4.068',
 | |
|     'Opcode' => '1.07',
 | |
|     'Package::DeprecationManager' => '0',
 | |
|     'Path::Class' => '0.32',
 | |
|     'Plack' => '1.0023',
 | |
|     'Plack::Handler::Twiggy' => '0',
 | |
|     'Plack::Middleware::Debug' => '0',
 | |
|     'Plack::Middleware::Expires' => '0.03',
 | |
|     'Plack::Middleware::Headers' => '0',
 | |
|     'Plack::Middleware::ReverseProxy' => '0.15',
 | |
|     'Pod::Usage' => 0,
 | |
|     'Regexp::Common' => 2017060201,
 | |
|     'Role::Tiny' => '1.002005',
 | |
|     'Scope::Guard' => 0,
 | |
|     'Sereal' => '0',
 | |
|     'Session::Storage::Secure' => '1.000',
 | |
|     'Socket6' => '0.23',
 | |
|     'Starman' => '0.4008',
 | |
|     'Storable' => '0',
 | |
|     'Sys::SigAction' => '0',
 | |
|     'SNMP::Info' => '3.81',
 | |
|     'SQL::Abstract' => '1.85',
 | |
|     'SQL::Translator' => '0.11024',
 | |
|     'Sub::Util' => '1.40',
 | |
|     'Template' => '2.24',
 | |
|     'Template::AutoFilter' => '0',
 | |
|     'Template::Plugin::CSV' => '0.04',
 | |
|     'Template::Plugin::Number::Format' => '1.02',
 | |
|     'Term::ReadLine' => '0',
 | |
|     'Term::UI' => '0',
 | |
|     'Try::Tiny' => '0',
 | |
|     'URI' => '0',
 | |
|     'URI::Based' => '0',
 | |
|     'URL::Encode' => '0.03',
 | |
|     'URL::Encode::XS' => '0',
 | |
|     'YAML' => '0.84',
 | |
|     'YAML::XS' => '0.41',
 | |
|   },
 | |
|   recommends => {
 | |
|     'Graph' => '0',
 | |
|     'GraphViz' => '0',
 | |
|   },
 | |
|   test_requires => {
 | |
|     'Test::More' => '1.302083',
 | |
|     'Env::Path'  => '0',
 | |
|     'Test::Compile' => '0',
 | |
|     'Test::File::ShareDir::Dist' => '0',
 | |
|   },
 | |
|   script_files => [
 | |
|     'bin/nd-import-topology',
 | |
|     'bin/netdisco-db-deploy',
 | |
|     'bin/netdisco-deploy',
 | |
|     'bin/netdisco-do',
 | |
|     'bin/netdisco-backend-fg',
 | |
|     'bin/netdisco-backend',
 | |
|     'bin/netdisco-daemon-fg',
 | |
|     'bin/netdisco-daemon',
 | |
|     'bin/netdisco-web-fg',
 | |
|     'bin/netdisco-web',
 | |
|     'bin/netdisco-rancid-export',
 | |
|     'bin/netdisco-sshcollector',
 | |
|   ],
 | |
|   share_dir => 'share',
 | |
|   meta_merge => {
 | |
|     resources => {
 | |
|       homepage => 'http://netdisco.org/',
 | |
|       bugtracker => 'https://github.com/netdisco/netdisco/issues',
 | |
|       repository => 'https://github.com/netdisco/netdisco',
 | |
|       MailingList => 'https://lists.sourceforge.net/lists/listinfo/netdisco-users',
 | |
|       IRC => 'irc://irc.libera.chat/#netdisco',
 | |
|     },
 | |
|   },
 | |
| )->create_build_script;
 |