Jarrod Johnson
b4b733a573
Fix attribute sort with python 3
...
For attributes without a sortid, sort was failing with python3
2020-01-22 14:24:10 -05:00
Jarrod Johnson
c441739f68
Try a less jarring exit strategy
...
Have client not provide a developer looking trace on abort.
2019-10-23 14:41:57 -04:00
Jarrod Johnson
a43361bb98
Amend the prompt for single node prompting
...
Remove the trailing slash
2019-10-23 14:38:45 -04:00
Jarrod Johnson
620263db3e
Add maxnodes argument to potentially risky commands
...
This uses the client maxnodes check to double check. Useful
for clients that want to sanity check unexpectedly large numbers of
nodes.
2019-10-23 14:20:40 -04:00
Jarrod Johnson
dd096104cc
Provide mechanism to prompt on large noderanges
...
Some commands can add options to prompt, and can have that option be
only activated on noderanges over a
certain size.
2019-10-22 15:49:09 -04:00
Jarrod Johnson
74f18d5571
Client side py3 changes
2019-10-04 10:37:48 -04:00
Jarrod Johnson
65629548c9
Add support for new BMC config capabilities
...
This enables nodeconfig -r bmc and nodeconfig bmc.<attr> function.
2019-08-27 14:56:19 -04:00
Jarrod Johnson
48fa74e7a9
Explicitly use utf8 when encode error encountered
...
Some platforms do not naturally do utf-8. This is
pretty much always the answer, so try it if the default
encoding of a platform fails.
2019-08-22 08:57:47 -04:00
Jarrod Johnson
ba113d6445
Fix various python2-isms
...
This is far from a complete python3 support, but it lets a significant volume
of remote commands run under python3
2019-06-27 15:28:59 -04:00
Jarrod Johnson
e09c2ed8eb
Support more convoluted detail
...
Some uefi settings details contain
more tricky detail information.
2019-06-03 15:30:32 -04:00
Jarrod Johnson
cd5366e73f
Fix nodeconfig for non-ascii choices
2019-05-31 14:47:07 -04:00
Jarrod Johnson
907d25164f
Replace the network error with a local error
...
This is a bit more clear about the cause when local commands fail.
2019-03-28 11:03:57 -04:00
Jarrod Johnson
161cf37f46
Fix nodediscover order and csv together
2019-02-26 13:57:11 -05:00
Jarrod Johnson
996fd82920
Provide quality output on list output/default
...
The output is better than default python treatment of list formatting.
2019-02-12 10:09:07 -05:00
Jarrod Johnson
6fc305d6a0
Add ordering by field to nodediscover list
...
This provides single column sort for more managable listing of
nodediscover items.
2018-11-06 16:34:22 -05:00
Jarrod Johnson
96df7871cb
Convert nodediscover to use Tabulator
...
This opens the path to more customized output and have the appropriate
formatting. Also revise the Tabulator code to more closely match
the original nodediscover list output.
2018-11-06 15:28:27 -05:00
Jarrod Johnson
115a6e9dd1
Add helper for tabular output
...
Provide a quick class for auto-sizing tabular output.
2018-10-30 16:23:34 -04:00
Jarrod Johnson
38228ebc9b
Fix the prompting code changes
2018-09-04 11:09:26 -04:00
Jarrod Johnson
f92b1ed4a3
Implement ability to prompt for nodeattrib options.
...
For certain attributes, notably passwords, it is sometimes desirable
to prompt interactively to help facilitate keeping such data out of
bash_history, screen sharing, and ps output. -e enables this if the
user is aware of how to use 'read', -p is a quicker way to enable this.
2018-09-04 09:38:01 -04:00
Jarrod Johnson
368087fb51
Have nodeattrib and nodeconfig accept wildcard to select values
2018-08-30 10:14:03 -04:00
Jarrod Johnson
fab177e077
Fix node[group][attrib|define] handling of =
...
Attributes with = in the value were not handled correctly,
fix by only doing one split.
2018-07-20 09:54:17 -04:00
Jarrod Johnson
5c12dc2cba
Do not require exactly TLSv1.0
...
This was breaking TLSv1.2.
2018-06-08 10:15:38 -04:00
Jarrod Johnson
a7a4ede580
Fix confusing nodeconfig error handling
...
Properly react to error conditions
2018-06-01 16:48:19 -04:00
Jarrod Johnson
22049002bb
Fix exitcode references before use
2018-05-17 11:11:11 -04:00
Jarrod Johnson
6cba560f6a
Fix nodeconfig handling of general errors
...
nodeconfig was not handling errors in results well, fix this by
refactoring the nodefirmware facility into it.
2018-05-16 11:21:26 -04:00
Jarrod Johnson
0f60fc6df7
Fix uninitialized self._prevdict
...
self._prevdict was referenced without initialization.
2018-03-07 10:21:35 -05:00
Amanda Duffy
b49531dfa5
Add previous option to nodepower command
2018-03-05 15:41:28 -05:00
Jarrod Johnson
d473d23725
Add ability to specify attribs from environment
...
This is of particular use for passing passwords safely
into nodeattrib/nodegroupattrib.
2018-02-22 09:55:46 -05:00
Jarrod Johnson
2bfa890faf
Actually enable ^=
...
It was inadvertently omitted.
2018-02-08 19:50:19 -05:00
Jarrod Johnson
cc16aed27a
Add ,= and ^= to group management
...
This greatly simplifies a common group membership task.
2018-02-08 19:30:06 -05:00
Jarrod Johnson
414572f626
Fix nodeattrib
...
nodeattrib was broken by the nodeconfig changes
2018-02-08 13:45:17 -05:00
Jarrod Johnson
7dbdf2a6aa
Add ability to exclude settings
...
This permits nodeconfig to prune out less interesting pieces of data
2018-02-07 15:46:08 -05:00
Jarrod Johnson
d7322f013b
Correct typo
2018-02-06 17:00:45 -05:00
Jarrod Johnson
024d37d633
Add support to show settings detail in nodeconfig
...
settings have lots of text, provide access through '-d' argument
2018-02-06 16:52:13 -05:00
Jarrod Johnson
8ef90a457a
Add comparedefault to nodeconfig command
...
This allows gathering relevant settings that differ from default
2018-02-06 16:31:20 -05:00
Jarrod Johnson
0afd9beeac
Fix nodeconfig error handling
...
Additionally, make more strong effort to sort the data.
2018-02-05 15:23:13 -05:00
Jarrod Johnson
b37ef7e90c
Implement nodeconfig access to system settings
...
First draft
2018-02-02 17:17:02 -05:00
Jarrod Johnson
d69cca46d0
Rework check_globbing to reduce false positives
...
First, globbing can only be the cause of a mess up if the given
noderange is a file that matches.
With this we still have:
for node in $(nodelist compute); do nodepower $node; done
As a potential false positive if any node is a range.
For this, offer suggestion of changing directories.
Also, if it had been:
for NODE in $(nodelist compute); do export NODE; nodepower $NODE; done
Another clause can detect that, which has been added.
2017-11-27 10:04:23 -05:00
Jarrod Johnson
78dea26d06
Switch glob suppression to detection
...
The suppression was unable to be accomplished for bash without
somehow otherwise breaking the shell. zsh and csh could be better at
one-off glob disabling though.
2017-11-13 11:49:40 -05:00
Jarrod Johnson
9f3fe01a49
Evolve the concept, it does not currently work
2017-11-02 17:07:44 -04:00
Jarrod Johnson
de6ecdab38
Start work on nodeconfig command
...
This reworks the client to reuse some bits of nodeattrib, and has
nodeconfig able to read values.
2017-11-01 16:48:17 -04:00
Jarrod Johnson
02018da187
Add aliases to the client library
...
Replicate for the sake of retrieving values by aliased names.
2017-11-01 13:33:57 -04:00
Jarrod Johnson
8694eca40b
Error out a whole noderange if global error occurs
...
For example, nodeboot with invalid argument failed and then proceeded
to 'boot' phase.
2017-10-13 09:08:12 -04:00
Jarrod Johnson
a571faa215
Implement collate command
...
Also adjust output to be less buffered for sake of '-w' and other
pipe commands.
2017-08-09 17:08:52 -04:00
Jarrod Johnson
a922de2ed6
Have nodeboot continue on non-failed nodes
...
If even one of a noderange failed to complete the
set boot device step, none would progress. Change
the behavior so that exit code still happens and
processing does stop on timed out nodes, but go
ahead and reboot those that were fine.
2017-07-18 14:17:46 -04:00
Jarrod Johnson
e0cc67f57a
Implement Lenovo Thinksystem and discovery support
2017-06-20 14:56:24 -04:00
Allen Lin37
db15992894
Adding nodegroupattrib to update nodegroups
2017-04-12 10:36:27 -04:00
Allen Lin37
cfd8ac4c75
refactoring nodelist and nodeattrib to use common code
2017-04-06 11:30:08 -04:00
Jarrod Johnson
236d889d5d
Fix error on 'isset' data
...
isset data is to be redacted. This handles that
situation, and also provides a repr if all else fails.
2017-03-05 09:20:50 -05:00
Jarrod Johnson
f3cfe4ee26
Change strategy for stale data protection
...
Rather than assuming a global state, have the generator react to
GeneratorExit and clean itself up.
2017-02-15 10:58:08 -05:00