summaryrefslogtreecommitdiff
path: root/lib/oxidized/node.rb
AgeCommit message (Collapse)Author
2018-06-08We should resolve model firstSaku Ytti
So that input/output can be configured under model
2018-06-07Fix IP address assingmentSaku Ytti
Unsure what problem was being solved here originally, wish I had tests for expected behaviour :)
2018-04-27Merge remote-tracking branch 'upstream/no-resolve' into resolve-dnsWild Kat
2018-04-21the great makeover - standardize layout, alignment, indentationWild Kat
2017-09-13Fix issue where "email" JSON field is not being passed through from RESTZachary Puls
API to worker. This allows for Gitlab (or another Git UI) to properly display the commit author.
2017-08-15create `worker_done` eventDanilo Sousa
trigger a event when a full cycle was completed
2017-05-03Added support for model specific credentialsCyril LAVIER
2017-04-12Add new output GitCryptClement Parisot
Signed-off-by: Clement Parisot <clement.parisot@uni.lu>
2017-02-04give option to stop resolving name to IPSaku Ytti
With ssh proxy you might want to have far-end resolve
2017-02-03Updated split to be more efficient, thanks ytti!Richard Mayhew
2017-02-03feature: support IP Addressed provided with a netmaskRichard Mayhew
2016-10-17Use variable vars(:ssh_keys) for private key authenticationDenver Abrey
2016-10-13Add key authentication to ssh inputDenver Abrey
2016-08-25quote debuggingSaku Ytti
2016-08-25typo fixSaku Ytti
2016-08-25add debugging to key resolutionSaku Ytti
2016-08-25fix symbol conversion to stringSaku Ytti
2016-08-25refactor node resolutionSaku Ytti
two primary goals - username and password can come from different sources (Global PW, per group username) - model can come from group
2016-07-26only resolve the repository path when the output is `git` fixes #512Danilo Sousa
2016-07-22Merge pull request #503 from danilopopeye/ds-fixes-and-refactorsytti
fix repository path resolution
2016-07-20fix the Node#repo path resolutionDanilo Sousa
this correctly respects the repo declaration as Hash or String
2016-07-09puts should not be used for debugging - use Oxidized.logger.debug instead.Nick Hilliard
2016-06-02more debug stratementsElvin Efendi
2016-02-22follow the hook remotes config also for groups repositoriesDanilo Sousa
ref.: https://github.com/ytti/oxidized/pull/326/files#r53557892
2016-02-18`Node#repo` should return the node group repositoryDanilo Sousa
2016-01-04Merge remote-tracking branch 'upstream/master' into merge-upstreamElvin Efendi
2015-12-27expose git repo name and commit oid in hook mechanism and environment variablesNick Hilliard
2015-12-13refactor and fix bugs introduced with new changesElvin Efendi
2015-11-13better test framework, more specs and Travis CIElvin Efendi
2015-11-03Revert crash logging on fqdn - seems to crash oxidized...Marno van der Molen
2015-11-03Log crashes on node name instead of ip to ease troubleshootingMarno van der Molen
2015-11-03Adds optional debug output when loading hosts (resolving DNS)Marno van der Molen
2015-08-20Added support for Zyxel ZynOSSaku Ytti
Model: SAM1316-22 STU-C ZyNOS version: V3.53(BVE.2)
2015-02-26Resolves #81Florian Hibler
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
2014-07-24return false when crash in model/nodeSaku Ytti
Without this, config gets 'true' value, which is not string, and git output will barf.
2014-07-11reset retry count on successSaku Ytti
2014-07-11add support for retrying failed attemptsSaku Ytti
Looks like this in syslog: Jul 11 21:05:53 ytti oxidized[9820]: 10.10.10.10 raised Errno::ENETUNREACH with msg "Network is unreachable - connect(2) for "10.10.10.10" port 22" Jul 11 21:05:53 ytti oxidized[9820]: 10.10.10.10 raised Errno::ENETUNREACH with msg "Network is unreachable - connect(2) for "10.10.10.10" port 23" Jul 11 21:05:54 ytti oxidized[9820]: 10.10.10.10 status no_connection, retry attempt 1 Jul 11 21:05:54 ytti oxidized[9820]: 10.10.10.10 raised Errno::ENETUNREACH with msg "Network is unreachable - connect(2) for "10.10.10.10" port 22" Jul 11 21:05:54 ytti oxidized[9820]: 10.10.10.10 raised Errno::ENETUNREACH with msg "Network is unreachable - connect(2) for "10.10.10.10" port 23" Jul 11 21:05:55 ytti oxidized[9820]: 10.10.10.10 status no_connection, retry attempt 2 Jul 11 21:05:55 ytti oxidized[9820]: 10.10.10.10 raised Errno::ENETUNREACH with msg "Network is unreachable - connect(2) for "10.10.10.10" port 22" Jul 11 21:05:55 ytti oxidized[9820]: 10.10.10.10 raised Errno::ENETUNREACH with msg "Network is unreachable - connect(2) for "10.10.10.10" port 23" Jul 11 21:05:56 ytti oxidized[9820]: 10.10.10.10 status no_connection, retry attempt 3 Jul 11 21:05:56 ytti oxidized[9820]: 10.10.10.10 raised Errno::ENETUNREACH with msg "Network is unreachable - connect(2) for "10.10.10.10" port 22" Jul 11 21:05:56 ytti oxidized[9820]: 10.10.10.10 raised Errno::ENETUNREACH with msg "Network is unreachable - connect(2) for "10.10.10.10" port 23" Jul 11 21:05:57 ytti oxidized[9820]: 10.10.10.10 status no_connection, retries exhausted, giving up
2014-07-09Require OpenStructSaku Ytti
How this works in ruby2.0 normally? What component has loaded this implicitly? Thanks to @RichiH for spotting.
2014-06-06fix: node#last= didn't handle nilAnton Aksola
temporary fix. Maybe node#last should check the type or we shouldn't use last for the nodes#next in the first place
2014-05-16don't store error Node raisedSaku Ytti
We may need this in future, but as we don't need this in oxidized-script now after all, I don't want something to be implemented just-in-case
2014-05-16store error node#run raisedSaku Ytti
2014-05-07Stats for nodeSaku Ytti
So that we can easily check last time node failed/succceded etc
2014-05-05missing editsAnton Aksola
2014-05-05Introduce node and group level varsAnton Aksola
Variables can now be fed to model from multiple locations. In order of preference: 1) node (from source) 2) group 3) global In a model vars should be accessed via 'vars' helper method though it is not required. Helper method ignores nil values so care needs to taken when designing model behaviour. Support for node level vars is currently available on sql source via 'vars_map' configuration. Following example populates node vars 'enable' and 'somevariable' from sql columns 'var_enable' and 'var_somevariable' sql: adapter: sqlite file: /home/aakso/.config/oxidized/sqrouter.db table: nodes map: name: hostname model: model group: node_group username: username password: password vars_map: enable: var_enablepw somevariable: var_somevariable
2014-05-02Introduce group level configuration for authAnton Aksola
For rancid-like behaviour one can now set username and password for node groups. These parameters are considered in the following order: 1) node parameters (from source) 2) group level parameters 3) global level parameters example configuration for group 'testlab' groups: testlab: username: testuser password: testpassword
2014-04-14Use 'asetus' for configuration filesSaku Ytti
Main benefits a) we get support for system wide configs b) we don't use symbols in config file, they're confusing to non-rubyist
2014-04-13Subclass all errors from OxidizedErrorSaku Ytti
2014-03-02Change dynamic loadingSaku Ytti
If we use assignment method (#method=) we don't get return value, so we never know that manager fails to load. Also we do not want to rescue failures of input/output/source loading, they are catastrophic and should fail whole process, loading of model is not catastrophic.
2014-02-28Rescue all StandardError from modulesSaku Ytti
If module crashes with unexpected error class, rescue it, and write it backtrace Also log if unknown model is attempted instead of crash