Joshua Boniface
f248d579df
Convert pvc-client-cli into a proper Python module
...
Also fixes up the Debian packaging such that this works how I would
want, with proper module installation while leaving everything else
untouched. Finally implements automatic installation and removal of the
BASH completion for the PVC command.
2021-06-23 05:03:19 -04:00
Joshua Boniface
1ae34c1960
Fix bad messages in volume remove
2021-06-22 04:31:02 -04:00
Joshua Boniface
e6b26745ce
Adjust some help messages in pvc.py
2021-06-22 03:40:21 -04:00
Joshua Boniface
7d2a3b5361
Ensure Macvtap NICs can use a model
...
Defaults to virtio like a bridged NIC. Otherwise performance is abysmal.
2021-06-22 02:38:16 -04:00
Joshua Boniface
1787a970ab
Fix bug in address check format string
2021-06-22 02:21:32 -04:00
Joshua Boniface
b532bc9104
Add missing managed flag for hostdev
2021-06-21 23:22:36 -04:00
Joshua Boniface
eeb83da97d
Add support for SR-IOV NICs to VMs
2021-06-21 23:18:22 -04:00
Joshua Boniface
13cc0f986f
Implement SR-IOV VF config set
...
Also fixes some random bugs, adds proper interface sorting, and assorted
tweaks.
2021-06-21 18:40:11 -04:00
Joshua Boniface
e13baf8bd3
Add initial SR-IOV list/info to CLI
2021-06-21 17:12:53 -04:00
Joshua Boniface
164becd3ef
Fix info and list matching
2021-06-15 02:32:34 -04:00
Joshua Boniface
da48304d4a
Avoid hackery in VNI list and support direct type
2021-06-15 00:31:13 -04:00
Joshua Boniface
ddd3eeedda
Remove needless literal_eval statements
2021-06-14 01:46:30 -04:00
Joshua Boniface
a2205bec13
Allow VM dump to file directly
...
Similar to the cluster backup task.
2021-06-13 22:32:54 -04:00
Joshua Boniface
7727221b59
Correctly use the Click file in backups
2021-06-13 22:17:35 -04:00
Joshua Boniface
a48bf2d71e
More gracefully handle none selectors
...
Allow selection of "none" as the node selector, and handle this by
always using the cluster default instead of writing it in.
2021-06-01 11:13:13 -04:00
Joshua Boniface
a1969eb981
Allow overwrite during init command
2021-05-31 00:12:28 -04:00
Joshua Boniface
3128c8fa70
Correct flawed conditional in some commands
2021-05-25 09:59:20 -04:00
Joshua Boniface
f46c2e7f6a
Implement VM rename functionality
...
Closes #125
2021-05-23 17:21:19 -04:00
Joshua Boniface
1b8b101b64
Fix bugs in log follow command
2021-05-19 16:22:48 -04:00
Joshua Boniface
62c84664fc
Handle restart confirmation for VMs more nicely
...
For the "vm modify", revamp the way confirmations are presented. Do the
edits/load, show changes, verify XML, then prompt to write and the
restart. The previous order didn't make much sense.
For any of these `--restart` triggered VM modifications, also alter how
the confirmation works. If the user declines the restart, do not abort;
instead, just set restart=False and continue with the modification.
2021-04-13 10:35:26 -04:00
Joshua Boniface
66f1ac35ab
Skip an empty local cluster in cluster list
2021-04-13 10:01:49 -04:00
Joshua Boniface
529f99841d
Improve formatting of some help messages
2021-04-12 15:55:59 -04:00
Joshua Boniface
6246b8dfb3
Fix help message output on root command
2021-04-08 14:27:55 -04:00
Joshua Boniface
629cf62385
Add confirmation flag to disruptive VM operations
...
Also add some additional output when --restart is not selected.
Closes #118
2021-04-08 13:33:10 -04:00
Joshua Boniface
dfa3432601
Add unsafe envvar/flag option
...
Allows another way (beyond --yes) to avoid confirming "unsafe"
operations. While there is probably nearly zero usecase for this (at
least to any sane admin), it is provided to allow maximum flexibility.
2021-04-08 12:48:38 -04:00
Joshua Boniface
62213fab99
Add description field to CLI clusters
...
Allow specifying a textual description of the cluster in the client for
ease of management.
2021-04-08 12:28:23 -04:00
Joshua Boniface
0bf276fd51
Update copyright year in headers
2021-03-25 17:01:55 -04:00
Joshua Boniface
f4ec161aa2
Update file copyright header.
...
Remove the option to select a later version of the GPL.
2021-03-25 16:58:02 -04:00
Joshua Boniface
78925be090
Correct bad help string
2021-03-17 13:58:23 -04:00
Joshua Boniface
1b6613c280
Add live VNC information to domain output
...
Sets in the node daemon, returns via the API, and shows in the CLI,
information about the live VNC listen address and port for VNC-enabled
VMs.
Closes #115
2020-12-20 16:00:55 -05:00
Joshua Boniface
37c3b4ef80
Validate provisioner userdata with SafeLoader
...
Given the issues with FullLoader and its eventual deprecation, just use
SafeLoader instead. Any well-formatted Userdata document should conform.
2020-12-15 00:30:20 -05:00
Joshua Boniface
938d67f96b
Make help strings in network modify more detailed
2020-12-04 04:18:06 -05:00
Joshua Boniface
2338aa64f4
Fix bad param for DHCPv4 config
2020-12-04 04:09:23 -05:00
Joshua Boniface
c208898b34
Rename null migration method to any
2020-12-03 17:08:49 -05:00
Joshua Boniface
1d5b9c33b5
Unify handling of API list returns
...
Ensure that every API return is handled appropriately as it is a list
now.
2020-12-02 19:15:33 -05:00
Joshua Boniface
185615e6e8
Don't strip single-element lists
...
This was a dumb decision that complicated handling of single-item
entries.
2020-12-01 03:23:18 -05:00
Joshua Boniface
a5d495cfaf
Update docs name of init command
2020-11-25 10:36:48 -05:00
Joshua Boniface
8f705c9cc2
Add cluster backup + restore functionality
...
Adds cluster backup (JSON dump) and restore functions for use in
disaster recovery.
Further, adds additional confirmation to the initialization (as well as
restore) endpoints to avoid accidental triggering, and also groups the
init, backup, and restore commands in the CLI into a new "task"
subsection.
2020-11-24 02:39:06 -05:00
Joshua Boniface
e8914eabb7
Better handle modifying consoles in templates
...
Before, the default False was problematic and would reset consoles if
the template was otherwise modified. Instead switch the flags to be full
true/false flags, and on modify, adjust the default to be None so they
will not be changed.
2020-11-19 10:28:00 -05:00
Joshua Boniface
0383f31086
Fix linting error
2020-11-17 12:37:33 -05:00
Joshua Boniface
7c520ec00c
Add short pretty health output
2020-11-17 12:32:16 -05:00
Joshua Boniface
f15253210f
Ensure all disk stats default to 0
...
Prevents issues with converting None to integers and such.
2020-11-11 13:13:31 -05:00
Joshua Boniface
1a0aedf01c
Up line count to 500 to be sure
2020-11-10 16:17:13 -05:00
Joshua Boniface
f729a54a2c
Obtain more lines during log follow
2020-11-10 16:14:33 -05:00
Joshua Boniface
a38e65be47
Correct issues if no interfaces/disks are present
2020-11-10 16:06:43 -05:00
Joshua Boniface
569dcd84a4
Implement disk modification on the CLI
...
Adds functions for listing, adding, and removing disks from the CLI,
without editing the XML directly.
References #101
2020-11-08 00:57:13 -05:00
Joshua Boniface
3ae6a469aa
Improve messages in here docs
2020-11-08 00:57:13 -05:00
Joshua Boniface
9c339f4191
Add proper support for cluster networks
...
Supports adding the cluster networks (upstream, cluster, storage) as
valid networks for a VM.
References #101
2020-11-08 00:57:13 -05:00
Joshua Boniface
1ff5d8bf46
Implement network modification on the CLI
...
Adds functions for listing, adding, and removing networks from the CLI,
without editing the XML directly.
References #101
2020-11-08 00:57:13 -05:00
Joshua Boniface
18d3fc8431
Remove serial and VNC console editors
...
References #101
2020-11-08 00:57:13 -05:00
Joshua Boniface
b72c415bf1
Implement memory modification on the CLI
...
Adds functions for listing and setting the memory values from the CLI,
without editing the XML directly.
References #101
2020-11-08 00:57:13 -05:00
Joshua Boniface
03d4be79b7
Implement vCPU modification on the CLI
...
Adds functions for listing and setting the vCPU and topology values from
the CLI, without editing the XML directly.
References #101
2020-11-08 00:57:13 -05:00
Joshua Boniface
5f5f4dd421
Add initial VM modification parent commands
...
References #101
2020-11-08 00:57:13 -05:00
Joshua Boniface
0bf130077c
Lint: W605 invalid escape sequence '<char>'
...
The previous attempt to correct these with character classes failed.
Instead, use the proper `r'blah'` regex formatting.
2020-11-07 17:41:09 -05:00
Joshua Boniface
3ed97d209f
Revert "Lint: W605 invalid escape sequence '\^'"
...
This reverts commit 639937f9c2
.
2020-11-07 17:39:34 -05:00
Joshua Boniface
d37e5a0c0b
Revert "Lint: W605 invalid escape sequence '\+'"
...
This reverts commit f787c4cb14
.
2020-11-07 17:38:03 -05:00
Joshua Boniface
893e7a616c
Revert "Lint: W605 invalid escape sequence '\-'"
...
This reverts commit db9c6eecad
.
2020-11-07 17:38:02 -05:00
Joshua Boniface
6f66b77a00
Lint: E121/E126 continuation line under/over-indented for hanging indent
2020-11-07 15:06:21 -05:00
Joshua Boniface
9dd2a24ce9
Lint: E226 missing whitespace around arithmetic operator
2020-11-07 14:50:57 -05:00
Joshua Boniface
260b39ebf2
Lint: E302 expected 2 blank lines, found X
2020-11-07 14:45:24 -05:00
Joshua Boniface
22355bbec4
Lint: F821 undefined name 're'
2020-11-07 13:19:48 -05:00
Joshua Boniface
0c221be183
Lint: F821 undefined name 'name'
2020-11-07 13:19:38 -05:00
Joshua Boniface
961ebb4c01
Lint: E305 expected 2 blank lines after class or function definition, found X
2020-11-07 13:17:49 -05:00
Joshua Boniface
7932be3948
Lint: E261 at least two spaces before inline comment
2020-11-07 13:11:03 -05:00
Joshua Boniface
d2490419c5
Lint: E202 whitespace before ']'
2020-11-07 13:02:54 -05:00
Joshua Boniface
3f242cd437
Lint: E202 whitespace before '}'
2020-11-07 12:57:42 -05:00
Joshua Boniface
b7daa8e1f6
E201 whitespace after '['
2020-11-07 12:39:59 -05:00
Joshua Boniface
e333f2b935
Lint: E201 whitespace after '{'
2020-11-07 12:38:31 -05:00
Joshua Boniface
292ccdd94e
Lint: E231 missing whitespace after ':'
2020-11-07 12:34:47 -05:00
Joshua Boniface
905b81c47d
Lint: E231 missing whitespace after ','
2020-11-07 12:34:12 -05:00
Joshua Boniface
97f262f5d2
Lint: E221 multiple spaces before operator
2020-11-07 12:19:25 -05:00
Joshua Boniface
4a5d50d0e6
Lint: E225 missing whitespace around operator
2020-11-07 12:16:36 -05:00
Joshua Boniface
6ab261f4cb
Lint: E251 unexpected spaces around keyword / parameter equals
2020-11-07 12:11:53 -05:00
Joshua Boniface
69858788c1
Lint: E227 missing whitespace around bitwise or shift operator
2020-11-06 21:41:10 -05:00
Joshua Boniface
4b47a2424c
Lint: E303 too many blank lines (2)
2020-11-06 21:16:52 -05:00
Joshua Boniface
cb2defbde9
Lint: W391 blank line at end of file
2020-11-06 21:14:19 -05:00
Joshua Boniface
5da314902f
Lint: F841 local variable '<variable>' is assigned to but never used
2020-11-06 21:13:13 -05:00
Joshua Boniface
aecb845d6a
Lint: E713 test for membership should be 'not in'
2020-11-06 20:37:52 -05:00
Joshua Boniface
fde8ea2fea
Lint: W291 trailing whitespace
2020-11-06 19:44:14 -05:00
Joshua Boniface
db9c6eecad
Lint: W605 invalid escape sequence '\-'
2020-11-06 19:40:44 -05:00
Joshua Boniface
f787c4cb14
Lint: W605 invalid escape sequence '\+'
2020-11-06 19:40:29 -05:00
Joshua Boniface
57c51d3234
Lint: E711 comparison to None should be 'if cond is not None:'
2020-11-06 19:37:13 -05:00
Joshua Boniface
ce01b41d81
Lint: E711 comparison to None should be 'if cond is None:'
2020-11-06 19:36:36 -05:00
Joshua Boniface
4d6f36aca0
Lint: E712 comparison to False should be 'if cond is False:' or 'if not cond:'
2020-11-06 19:35:51 -05:00
Joshua Boniface
72ae149cf1
Lint: E712 comparison to True should be 'if cond is True:' or 'if cond:'
2020-11-06 19:35:19 -05:00
Joshua Boniface
fb4aafcea9
Lint: E111 indentation is not a multiple of four
2020-11-06 19:26:22 -05:00
Joshua Boniface
d9e7b7ec15
Lint: F401 <library> imported but unused
2020-11-06 19:22:49 -05:00
Joshua Boniface
ebf254f62d
Lint: W293 blank line contains whitespace
2020-11-06 19:11:07 -05:00
Joshua Boniface
2deee9a329
Lint: E262 inline comment should start with '# '
2020-11-06 19:03:30 -05:00
Joshua Boniface
639937f9c2
Lint: W605 invalid escape sequence '\^'
2020-11-06 18:59:30 -05:00
Joshua Boniface
63f4f9aed7
Lint: E722 do not use bare 'except'
2020-11-06 18:55:10 -05:00
Joshua Boniface
601ab1a181
Add second default too
2020-11-04 23:53:56 -05:00
Joshua Boniface
2266438303
Show fewer lines on a log follow
2020-11-03 11:16:29 -05:00
Joshua Boniface
b783588ee6
Use "none" default instead of "default"
2020-10-29 12:19:07 -04:00
Joshua Boniface
ec0b8acf90
Support per-VM migration type selectors
...
Allow a VM to specify its migration type as a default choice. The valid
options are "default" (i.e. behave as now), "live" which forces a live
migration only, and "shutdown" which forces a shutdown migration only.
The new option is treated as a VM meta option and is set to default if
not found.
2020-10-29 12:01:29 -04:00
Joshua Boniface
7a27503f1b
Allow network-less managed networks
...
Allows the specification of network-less managed networks, acting like
bridged networks but over the VXLAN system instead.
Closes #107
2020-10-18 23:13:12 -04:00
Joshua Boniface
a4b80be5ed
Add provisioned memory to node info
...
Adds a separate field to the node memory, "provisioned", which totals
the amount of memory provisioned to all VMs on the node, regardless of
state, and in contrast to "allocated" which only counts running VMs.
Allows for the detection of potential overprovisioned states when
factoring in non-running VMs.
Includes the supporting code to get this data, since the original
implementation of VM memory selection was dependent on the VM being
running and getting this from libvirt. Now, if the VM is not active, it
gets this from the domain XML instead.
2020-10-18 14:17:15 -04:00
Joshua Boniface
9d7067469a
Correct proper type of uploads
2020-10-16 11:47:09 -04:00
Joshua Boniface
7ce1bfd930
Fix bad integer/string in base convert
2020-08-28 01:08:48 -04:00
Joshua Boniface
423da08f5f
Add colour indication if alloc mem is above total
...
Shows an "overprovisioned" state clearly without adding a hacky
additional domain state to the system.
2020-08-28 00:33:50 -04:00