1629 Commits

Author SHA1 Message Date
2df8f5d407 Fix pvcapid config in migrations script 2020-03-15 17:33:27 -04:00
ca65cb66b8 Update Debian changelog 2020-03-15 17:32:12 -04:00
616d7c43ed Add additional info about OVA deployment 2020-03-15 17:31:12 -04:00
4fe3a73980 Reorganize manuals and architecture pages 2020-03-15 17:19:51 -04:00
26084741d0 Update README and index for 0.7 2020-03-15 17:17:17 -04:00
4a52ff56b9 Catch failures in getPoolInformation
Fixes #90
2020-03-15 16:58:13 -04:00
0a367898a0 Don't trigger aggregator fail if fine 2020-03-12 13:22:12 -04:00
ca5327b908 Make strtobool even more robust
If strtobool fails, return False always.
2020-03-09 09:30:16 -04:00
d36d8e0637 Use custom strtobool to handle weird edge cases 2020-03-06 09:40:13 -05:00
36588a3a81 Work around bad RequestArgs handling 2020-03-03 16:48:20 -05:00
c02bc0b46a Correct issues with VM lock freeing
Code was bad and using a depricated feature.
2020-03-02 12:45:12 -05:00
1e4350ca6f Properly handle takeover state in VXNetworks
Most of these actions/conditionals were looking for primary state, but
were failing during node takeover. Update the conditionals to look for
both router states instead.

Also add a wait to lock flushing until a takeover is completed.
2020-03-02 10:41:00 -05:00
b8852e116e Improve handling of root disk in GRUB
Since vdX names become sdX names inside VMs, use the same setup as the
fstab in order to map this onto a static SCSI ID.
2020-03-02 10:02:39 -05:00
9e468d3524 Increase build-and-deploy wait time to 15 2020-02-27 14:32:01 -05:00
11f045f100 Support showing individual userdata and script doc
Closes #89
2020-02-27 14:31:08 -05:00
fd80eb9e22 Ensure profile creation works with empty lists
If we get a 404 code back from the upper function, we should create an
empty list rather than trying to loop through the dictionary.
2020-02-24 09:30:58 -05:00
6ac82d6ce9 Ensure single-element templates are lists
Ensures any list-assuming statements later on hold true even when there
is only a single template entry.
2020-02-21 10:50:28 -05:00
b438b9b4c2 Import gevent for production listener 2020-02-21 09:39:07 -05:00
4417bd374b Add Python requests toolbelt to CLI deps 2020-02-20 23:27:07 -05:00
9d5f50f82a Implement progress bars for file uploads
Provide pretty status bars to indicate upload progress for tasks that
perform large file uploads to the API ('provisioner ova upload' and
'storage volume upload') so the administrator can gauge progress and
estimated time to completion.
2020-02-20 22:42:19 -05:00
56a9e48163 Normalize all return messages
Ensure all API return messages are formated the same: no "error", a
final period except when displaying Exception text, and a regular spaced
out format.
2020-02-20 22:42:19 -05:00
31a117e21c Fix call to config dictionary from pvc_api 2020-02-20 15:11:20 -05:00
57768f2583 Remove an obsolete script 2020-02-19 21:40:23 -05:00
e4e4e336b4 Handle invalid cursor setup cleanly
This seems to happen only during termination, so catch it and continue
so the loop terminates.
2020-02-19 16:29:59 -05:00
0caea03428 Clean up redundant message output 2020-02-19 16:27:14 -05:00
65932b20d2 Handle request failures more gracefully 2020-02-19 16:19:34 -05:00
1b8b32b07c Don't return tuple value on error 2020-02-19 15:47:08 -05:00
39ce704969 Implement wait for node primary/secondary in CLI
Use a different wait method of querying the node status every
half-second during the transition, in order to wait on the transition to
complete if desired.

Closes #72
2020-02-19 14:33:31 -05:00
d2a5fe59c0 Use transitional takeover states for migration
Use a pair of transitional states, "takeover" and "relinquish", when
transitioning between primary and secondary coordinator states. This
provides a clsuter-wide record that the nodes are still working during
their synchronous transition states, and should allow clients to
determine when the node(s) have fully switched over. Also add an
additional 2 seconds of wait at the end of the transition jobs to ensure
everything has had a chance to start before proceeding.

References #72
2020-02-19 14:06:54 -05:00
8678dedfea Revert "Implement wait for node coordinator transition"
This reverts commit 0aefafa7f777157776084db846240dd027b81fe3.

This does not work since the API goes away during the transition.

References #72
2020-02-19 10:50:21 -05:00
0aefafa7f7 Implement wait for node coordinator transition
References #72
2020-02-19 10:50:04 -05:00
6db4df51c0 Remove obsolete follow_console_log function 2020-02-19 10:19:49 -05:00
5ddf72855b Clean up obsolete is_cli flags 2020-02-19 10:18:41 -05:00
0e05ce8b07 Use correct wording of "shut down" 2020-02-19 10:04:58 -05:00
78780039de Add wait support to VM CLI commands
References #72
2020-02-19 10:02:32 -05:00
99f579e41a Add wait support to API commands
References #72
2020-02-19 09:51:42 -05:00
07577a52a9 Implement wait support for various VM commands
Implements wait support for VM restart, shutdown, move, migrate, and
unmigrate commands, similar to node flush/node unflush.

Includes some additional refactoring of the move command to make its
operation identical to migrate, only without recording the previous
node.

References #72
2020-02-19 09:45:31 -05:00
45040a5635 Make wait flag optional on flush functions
References #72
2020-02-19 09:44:38 -05:00
097f0d9be4 Fix bug with script load from database 2020-02-18 20:39:36 -05:00
ca68321be3 Allow modification of system templates
Closes #82
2020-02-18 16:18:27 -05:00
b322841edf Complete integration of OVA provisioner
Finishes a basic form of OVA provisioning within the existing create_vm
function. Future plans should include separating out the functions and
cleaning them up a bit more, but this is sufficient for basic operation.

Closes #71
2020-02-18 14:42:45 -05:00
4c58addead Fix typo'd storage_host entry 2020-02-18 14:42:32 -05:00
e811c5bbfb Fix renamed import for worker 2020-02-18 12:20:42 -05:00
dd44f2f42b Correct formatting error in confirmation 2020-02-17 23:31:03 -05:00
24c86f2c42 Remove obsolete print statement 2020-02-17 23:25:27 -05:00
db558ec91f Complete implementation of OVA handling
Add functions for uploading, listing, and removing OVA images to the API
and CLI interfaces. Includes improved parsing of the OVF and creation of
a system_template and profile for each OVA.

Also modifies some behaviour around profiles, making most components
option at creation to support both profile types (and incomplete
profiles generally).

Implementation part 2/3 - remaining: OVA VM creation

References #71
2020-02-17 23:22:50 -05:00
7c99618752 Correct handling of bare bytes values 2020-02-17 12:32:20 -05:00
59ca296c58 Add basic OVA profile support 2020-02-17 12:00:51 -05:00
c18c76f42c Add alembic script_location field 2020-02-17 11:36:33 -05:00
a7432281a8 Fix script link in postinst message 2020-02-17 11:31:41 -05:00