summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-03-16Remove traces of telnet supportEric
2015-03-16Update changelog to reflect previous commitsEric
2015-03-16Added support for Mikrotik RouterOSEric
2015-03-14Merge pull request #91 from emjemj/masterytti
Fix terminal length issues with older powerconnect switches
2015-03-14Also fix logout issue as described in #89Eric
2015-03-14Fix terminal length issues with older powerconnect switches as mentioned in ↵Eric
#89. Fixed by sending both commands and allowing one of them to fail.
2015-03-13default to port 514Saku Ytti
2015-03-13support giving UDP port as argumentSaku Ytti
2015-03-13fix rest_client requireSaku Ytti
2015-03-13More examplesSaku Ytti
From issue #45
2015-03-10Add gem badgeSamer Abdel-Hafez
2015-03-10Bugfixes and bump to 0.4.1Samer Abdel-Hafez
2015-03-08Merge pull request #88 from brandt/interpret_true_as_no_passwordytti
Add back ability to use passwordless enable on EOS
2015-03-08Merge pull request #87 from brandt/return_nil_on_missing_output_fileytti
Fix: Handle missing output file
2015-03-07Add back ability to use passwordless enable on EOSJ. Brandt Buckley
This commit adds the ability to go into Privileged EXEC mode when no password is required by setting `enable: true`. By default, in Arista EOS you aren't prompted for a password when entering Privileged EXEC (or privilege mode 15) mode. In PR #86, oxidized began always expecting a password. An unquoted `true` in YAML is a boolean. So when `var(:enabled)` is `TrueClass`, we interpret this as meaning that the user wishes to go into Privileged EXEC mode and does not require a password.
2015-03-07Fix: Handle missing output fileJ. Brandt Buckley
If no output file is found, return nil. Previously, it would try to find the output file by doing a recursive glob search in the config dir. It would then try to open the file for reading regardless of whether any file was found. I ran into this when I fired up oxidized for the first time and tried to access a switch config on oxidized-web before it had a chance to collect it. In this scenario, you get a stack trace on the switch config page (e.g. `http://oxidized.example.com:8888/node/fetch/switch-001.example.com`): ``` Puma caught this error: undefined method `join' for #<String:0x007f3a3c4283f8> (NoMethodError) /usr/lib64/ruby/gems/2.2.0/gems/sinatra-1.4.5/lib/sinatra/show_exceptions.rb:37:in `rescue in call' /usr/lib64/ruby/gems/2.2.0/gems/sinatra-1.4.5/lib/sinatra/show_exceptions.rb:21:in `call' /usr/lib64/ruby/gems/2.2.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:180:in `call' /usr/lib64/ruby/gems/2.2.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:2014:in `call' /usr/lib64/ruby/gems/2.2.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1478:in `block in call' /usr/lib64/ruby/gems/2.2.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1788:in `synchronize' /usr/lib64/ruby/gems/2.2.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1478:in `call' /usr/lib64/ruby/gems/2.2.0/gems/rack-1.6.0/lib/rack/urlmap.rb:66:in `block in call' /usr/lib64/ruby/gems/2.2.0/gems/rack-1.6.0/lib/rack/urlmap.rb:50:in `each' /usr/lib64/ruby/gems/2.2.0/gems/rack-1.6.0/lib/rack/urlmap.rb:50:in `call' /usr/lib64/ruby/gems/2.2.0/gems/rack-1.6.0/lib/rack/builder.rb:153:in `call' /usr/lib64/ruby/gems/2.2.0/gems/puma-2.11.1/lib/puma/server.rb:507:in `handle_request' /usr/lib64/ruby/gems/2.2.0/gems/puma-2.11.1/lib/puma/server.rb:375:in `process_client' /usr/lib64/ruby/gems/2.2.0/gems/puma-2.11.1/lib/puma/server.rb:262:in `block in run' /usr/lib64/ruby/gems/2.2.0/gems/puma-2.11.1/lib/puma/thread_pool.rb:104:in `call' /usr/lib64/ruby/gems/2.2.0/gems/puma-2.11.1/lib/puma/thread_pool.rb:104:in `block in spawn_thread' ```
2015-03-06Log prompt detection failuresSamer Abdel-Hafez
2015-03-03Merge pull request #86 from rodecker/masternopedial
fixes for EOS switches with enable secret configured
2015-03-03fixes for EOS switches with enable secret configuredMartin Pels
2015-03-03Merge pull request #85 from rodecker/masternopedial
make README match vars_map variable used in csv.rb and sql.rb
2015-03-03make README match vars_map variable used in csv.rb and sql.rbMartin Pels
2015-02-27better prompt for Arista EOSSamer Abdel-Hafez
2015-02-27Minor cosmetic changes and additionsSamer Abdel-Hafez
2015-02-27Merge pull request #75 from funzoneq/masternopedial
Update oxidized.gemspec
2015-02-26Merge pull request #83 from fhibler/masterytti
Resolving #80 and #81
2015-02-26Resolves #81Florian Hibler
2015-02-26Resolves #80Florian Hibler
2015-02-26Merge pull request #82 from fhibler/masterytti
Fixing HUP trap for reloading nodes
2015-02-26Fixing formattingFlorian Hibler
2015-02-26Fixing HUP trapFlorian Hibler
2015-02-26Merge pull request #1 from ytti/masterFlorian Hibler
Merge to latest
2015-02-24kill -hup reloads nodesSaku Ytti
2015-02-24set_cmd can't be nilSaku Ytti
still not sure if this is the right way to guard non-string blocks...
2015-02-23update changelogSaku Ytti
2015-02-23guard against model returning non-stringSaku Ytti
Return empty string instead of what ever model returned. Closes #63
2015-02-22Give more helpful error message from git errorsSaku Ytti
closes #61
2015-02-22refactor HOLB preventionSaku Ytti
Still not sure we want this. But previous one might have caused infinite loop in #work. Consider we have just 1 node all together, and our rotation interval is more than our MAX_INTER_JOB_GAP, then we'd add @want to 2, instead of 1. Now we want more threads than we have nodes, and 'while @jobs.size < @jobs.want' will never be true
2015-02-22run #duration not #new_countSaku Ytti
@duration isn't set before #duration is ran
2015-02-22update changelogSaku Ytti
2015-02-22Allow node to be removed while collectingSaku Ytti
Closes #68 (hopefully at least) Further, our TODO to refactor/redesign the code to move state from memory to disk should help.
2015-02-22add nagios monitoring scriptSaku Ytti
closes #67
2015-02-21changelog updateSaku Ytti
2015-02-21Force new job if too long since last jobSaku Ytti
MAX_INTER_JOB_GAP is now 300s, if latest job was started 300s ago, we add new job. Ratioanele is that if we want n jobs, and all these jobs are taking very very long, or perhaps hanging, then we are blocking everything else too. Consider you have use one job, because it's enough to meet your rotation interval quota. Then some one box is somehow taking tens of minutes or hours, we won't figure out new amount of workers until it finishes, so we're blocking all other jobs from spawning. I'm not super happy about this solution, not really sure what is the right wayt to tackle it.
2015-02-21Increase rolling average viewSaku Ytti
Previously view was 2 nodes, so if average was 7s then some node took 1000s your average would be 503.5s. Now we're looking rolling average of each node, which might not be wise either, perhaps I should limit it to last 100 or 1000 nodes. Since we really don't want another place where we have potentially unbounded amount of state...
2015-02-21allow setting IP from sourceSaku Ytti
sql/csv can now set IP as well as name, useful if you don't have FQDN. If IP is given, then we don't try to resolve name. closes #78
2015-02-19ironware fixSaku Ytti
2015-02-19Merge pull request #77 from fhibler/masterytti
Logout behaviour fixed.
2015-02-19Logout behaviour fixed.fhibler
2015-02-19xos updateSaku Ytti
2015-02-19Merge pull request #76 from fhibler/masterytti
Password detection fixed