Jarrod Johnson
ba0e03d454
Provide a catchall for general certificate mismatch
...
Beyond the special partial cases for firmware/hardware inventory,
provide a catchall for invalid public keys and a message for it.
2018-01-29 14:17:01 -05:00
Jarrod Johnson
e193e92fbf
Make TLS errors in hardware/firmware more consistent
...
Also, place the error near the end where it is more likely to be
noticed, and close to where user would have expected the data to be.
2018-01-29 14:12:34 -05:00
Jarrod Johnson
a7b0a449d6
Put ipmi errors in trace log
...
Put an end to the 'see stderr log'
2018-01-29 13:21:18 -05:00
Jarrod Johnson
2e7a8bee18
Fix nodemedia silent errors
...
For 'databynode' style responses, error data was suppressed.
Make printerror more thorough at handling such errors.
2018-01-29 11:21:46 -05:00
Jarrod Johnson
9e467c5e57
Add check for invalid dotted attribute names in expressions
...
This provides better feedback for typos and mistakes.
2018-01-26 17:00:03 -05:00
Jarrod Johnson
68d469788d
Fix use of multi dot attributes in expressions
...
It was formerly only assuming ability to bisect, now recurse to get the
string out of nested attributes.
2018-01-26 14:29:22 -05:00
Jarrod Johnson
7ea99ecbf5
Improve expression error handling
...
First, refactor the attrname translation to be in a single method.
Recognize if 'None' comes back rather than a dictionary with na 'value'
Add a proper ValueError if an invalid attribute name is used.
Properly catch and transform ValueErrors in the API
2018-01-26 14:16:23 -05:00
Jarrod Johnson
49a444959d
Add line wrap to usage error
...
It mixed output with next prompt, which is ugly
2018-01-24 13:42:13 -05:00
Jarrod Johnson
2628683881
Require minimum pyghmi
...
Many fixes we rely upon are only found in recent pyghmi.
2018-01-24 13:24:44 -05:00
Jarrod Johnson
1cf472470e
Add warning if someone tries attach with a file
...
Rather than bother the server, sort out the problem locally.
2018-01-24 13:23:35 -05:00
Jarrod Johnson
e7a70f390e
Treat blank setting for gateway same as unset
...
It was previously trying to use empty string as gateway in some
contexts.
2018-01-24 10:55:03 -05:00
Jarrod Johnson
4ae32c1219
Merge branch 'master' of github.com:jjohnson42/confluent
2018-01-24 09:58:41 -05:00
Jarrod Johnson
d04f6cc858
Accept '-f' as alias for '-c'
...
In xCAT, '-f' meant 'fanout' and it's harmless for us to support
both.
2018-01-24 09:26:18 -05:00
Jarrod Johnson
03703250e6
Further improve formatting of the discoverystate option
2018-01-23 16:28:07 -05:00
Jarrod Johnson
01dd48ccc2
Fix some man page formatting issues
2018-01-23 16:16:47 -05:00
Jarrod Johnson
91d0c8ed7a
Add flag to request discovered devices by discovery state
...
Also refresh the manpage to reflect the current state of nodediscover
command, and flesh out the discovery states there.
2018-01-23 16:09:17 -05:00
Jarrod Johnson
a2163244db
Correct indentation
2018-01-23 15:19:31 -05:00
Jarrod Johnson
f615232a95
Merge branch 'master' of github.com:jjohnson42/confluent
2018-01-23 15:05:33 -05:00
Jarrod Johnson
e7aeece7f4
Add nodediscover clear
...
Provide means of deleting discovery data, particularly to help rescan.
2018-01-23 15:05:24 -05:00
Jarrod Johnson
19e733f325
Ensure fingerprint variable is initialized
...
During error handling, there were paths where fingerprint was
needed, but not set. Fix this by getting fingerprint before raising
the exceptions.
2018-01-23 14:34:06 -05:00
Jarrod Johnson
924f679f79
Add ability to delete discovery entry
...
This allows a full purge without restarting confluent.
2018-01-23 13:27:20 -05:00
Jarrod Johnson
9baa1f5652
Accommodate XCC firmware behavior
...
It has been observed that a Lenovo XCC can fail to produce the
appropriate attributes in the SLP data. In such a case, and only if we
are in the preconfig path (which means it is a candidate for discovery),
reset the XCC to try to correct the behavior.
2018-01-23 13:07:59 -05:00
Jarrod Johnson
eccc7803a9
Move the (insecure) output to where promised
2018-01-23 10:36:25 -05:00
Jarrod Johnson
cd260a769e
Fix variable name
...
rsp rather than res was used in one place erroneously
2018-01-23 10:32:48 -05:00
Jarrod Johnson
56b6babed6
Provide insecure warning
...
When certificate validation is not occuring in a secure fashion, make
it obvious to user through '(insecure)' flag. Lay the groundwork for
future update to actually provide a secure attach strategy, once the
firmware is willing.
2018-01-23 10:23:56 -05:00
Jarrod Johnson
37f0345553
Format the complex epilog of nodemedia
...
nodemedia has non-option arguments suggesting need for line wraps.
Provide a custom formatter to enable readable usage.
2018-01-22 16:12:29 -05:00
Jarrod Johnson
98a763eb35
Change detach to detachall
...
It is more clear what detach will do this way. Also block more
attempts.
2018-01-22 15:56:59 -05:00
Jarrod Johnson
9b7db2a924
Explain the sort algorithm on collate
...
Provide a more thorough explanation of the sort algorithm
2018-01-22 15:09:19 -05:00
Jarrod Johnson
87696a7b0d
Add man page for nodemedia
...
Documentation to flesh out the nodemedia command
2018-01-22 14:18:03 -05:00
Jarrod Johnson
c2a15fc74d
Fix typo in nodeconfig man page
...
The man page mispelled the command in the SYNOPSIS
2018-01-22 14:16:04 -05:00
Jarrod Johnson
97401e306b
Tolerate disabled IPv4 multicast route
...
Sometimes the IPv4 multicast route isn't playing ball. Tolerate such
a scenario and move on.
2018-01-22 11:53:19 -05:00
Jarrod Johnson
48b9d735f2
Avoid empty hwaddr
...
It has been observed, at least once, for an empty hwaddr to appear.
Take measures to prevent this from occurring and making into the
discovery info.
2018-01-19 10:22:22 -05:00
Jarrod Johnson
6444756b3c
Add list to upload command
...
Have the upload command do list at the end to give affirmation of
what happened.
2018-01-17 10:06:54 -05:00
Jarrod Johnson
af82e868d2
Alter nodemedia command
...
Add the glob protection and have attach do a list after.
2018-01-17 10:06:05 -05:00
Jarrod Johnson
76818135a6
Fix getting nodenames based on enclosure uuid
...
Must listify the output and make sure the previous output is fed into
the second filter.
2018-01-16 13:29:36 -05:00
Jarrod Johnson
0f4940cd7c
Tolerate empty string to be blank snmp user
...
For SNMP password without user, accept '' as a synonym for None
2018-01-16 13:14:13 -05:00
Jarrod Johnson
8226c2bd77
Fix mistakes in the draft discovery code
...
A couple of blatantly obvious mistakes were made that require fixing.
2018-01-16 12:13:34 -05:00
Jarrod Johnson
a80ae622f6
Skip SMMs without a stored certificate
...
If something happens to have the right ip, but no stored certificate
because it's not discovered, it was used as a data source if the
addpolicy was lax. Harden the flow by skipping unverifiable parts
of the chain.
2018-01-16 10:54:42 -05:00
Jarrod Johnson
ea5165d2c5
Fix the TLS verifier to support different fingerprint algos
...
It was hard baked to sha512. Now use sha256 if auto-adding,
and use the stored algo as indicator instead.
2018-01-16 10:30:15 -05:00
Jarrod Johnson
30e24cc768
Fix type compatibility with enclosure.bay
...
enclosure.bay manifests as an int. Use format() to tolerate either
way.
2018-01-16 10:20:28 -05:00
Jarrod Johnson
b1951b3d86
Add error on older XCC firmware
...
When we do hit a problem with the chained configuration and older
XCC, log a message to show why discovery will forever fail.
2018-01-16 09:18:30 -05:00
Jarrod Johnson
c649aa2a40
Avoid traceback on older XCC firmware
...
Older XCC firmware does not provide chassis-uuid.
2018-01-16 09:16:23 -05:00
Jarrod Johnson
e7b97afc3c
Address a number of oversights
...
The null handler case, IPv6 SMM, and SMM cert conversion needed fixes.
2018-01-11 16:48:34 -05:00
Jarrod Johnson
8acb59d967
Fix noderun/nodeshell filehandle exhaustion
...
noderun/nodeshell failed to close filehandles on child
exit.
2018-01-11 12:40:53 -05:00
Jarrod Johnson
a70e3a2e19
Add ability for physical discovery to not root in switch
...
This permits a design where the switch can be omitted, but only the
head enclosure manager needs 'manual' intervention.
2018-01-11 10:46:23 -05:00
Jarrod Johnson
a11a0cd543
Accelerate dependent discovery in D2 enclosures
...
Rather than wait until the next recheck interval, track and trigger
dependent discovery immediately.
2018-01-11 08:41:44 -05:00
Jarrod Johnson
3398acaf52
Match XCC to enclosure in a chained setup
...
Also apply fixes and lay groundwork for eventual 'secure' discovery
policy. As such a policy is too limited to be practical at this point
(SMM only) the full deal is postponed until it would be feasible.
2018-01-10 15:53:49 -05:00
Jarrod Johnson
0c0a450fc2
Implement requisite functions to do chain SMM discovery
...
Hook into the neighbor data and lldp to identify SMMs.
Still need to provide context to the XCCs based on the chassis-uuid
property.
2018-01-09 17:25:31 -05:00
Jarrod Johnson
0337962cd9
Add lenovo-switch to discovery api
...
This does not actually allow config deployment, but it can help in
ascertaining access for manual access to a switch.
A proper 'handler' will come later to add configuration, probably with
an emphasis on CNOS rather than ENOS.
2018-01-09 09:17:39 -05:00
Jarrod Johnson
73f40ecbf8
Add a dir2img command to help with generation of RDOC
...
RDOC requires a valid 'floppy-like' image, this script aids in the
creation of such a thing.
2018-01-04 14:17:27 -05:00