Joshua Boniface
1c12a4c2f9
Fix bugs around userdata
2020-01-04 12:52:30 -05:00
Joshua Boniface
e1c7705c3e
Add missing return value
2020-01-04 11:48:13 -05:00
Joshua Boniface
139672d8c9
Fix bug in function argument order
2020-01-04 11:43:35 -05:00
Joshua Boniface
19ea01e17e
Don't strip down single-element lists
...
This is causing problems, so don't do it.
2020-01-04 11:14:55 -05:00
Joshua Boniface
e4a83bb063
Use different MAC prefixes for MAC templates
2020-01-04 10:42:04 -05:00
Joshua Boniface
a6b6c54422
Use consistent messages and formatting
2020-01-03 13:59:32 -05:00
Joshua Boniface
c9b8355ff0
Fix bad handling of Nonetype
2020-01-03 12:07:32 -05:00
Joshua Boniface
816dbac912
Remove explicit flask.jsonify
2020-01-03 12:00:06 -05:00
Joshua Boniface
7ed6308e80
Correct handling of template arguments
2020-01-03 11:55:41 -05:00
Joshua Boniface
9b8dec8991
Add missing reqargs argument
2020-01-03 11:50:13 -05:00
Joshua Boniface
5d92a4aa62
Ensure zk_conn handling is consistent
2020-01-02 12:13:11 -05:00
Joshua Boniface
e550d4589d
Move userdata from templates
...
This arrangement was driving me somewhat mad; make userdata just like
script in that it is not a "template".
2019-12-30 15:01:28 -05:00
Joshua Boniface
a661fec105
Handle boolean config values properly
2019-12-30 09:34:45 -05:00
Joshua Boniface
6de65378ca
Fix bad metadata documentation
2019-12-29 20:58:02 -05:00
Joshua Boniface
3b08e887f8
Add cluster status to API
2019-12-29 20:52:05 -05:00
Joshua Boniface
e29405c1ed
Add missing argument to net_modify
2019-12-27 12:18:01 -05:00
Joshua Boniface
e82b851643
Don't bother splitting name_servers
2019-12-27 12:15:57 -05:00
Joshua Boniface
bc22c008dd
Split the name_servers in the right place
2019-12-27 12:14:34 -05:00
Joshua Boniface
33e5dcd5e8
Add missing reqargs to network put
2019-12-27 12:12:07 -05:00
Joshua Boniface
1d4e4d178c
Correct bad comma
2019-12-26 18:58:46 -05:00
Joshua Boniface
5e226af4a1
Pass VM argument into function
2019-12-26 18:56:34 -05:00
Joshua Boniface
89f598e429
Fix another instance of selector name
2019-12-26 18:55:01 -05:00
Joshua Boniface
f178436025
Fix selector name in POST
2019-12-26 18:53:35 -05:00
Joshua Boniface
c9fb9600a4
Fix two small bugs and regen docs
2019-12-26 18:45:11 -05:00
Joshua Boniface
e8d8fb161b
Add wait functionality to API domain-state
2019-12-25 20:24:12 -05:00
Joshua Boniface
b1c19a21ba
Move int cast to helper try block
2019-12-25 19:31:51 -05:00
Joshua Boniface
1f77b382ef
Support providing console log lines from API
2019-12-25 19:13:53 -05:00
Joshua Boniface
b92c1876d6
Make sure we return True from init function
2019-12-25 12:18:26 -05:00
Joshua Boniface
9b81a02805
Disable doc endpoint to avoid flask_swagger dep
2019-12-24 11:19:06 -05:00
Joshua Boniface
f48d1e6d40
Add documentation for API_Doc endpoint
2019-12-24 08:59:17 -05:00
Joshua Boniface
914b3d84e1
Fix URL hosts
2019-12-23 21:17:30 -05:00
Joshua Boniface
142e1f186d
Fix in-app host URL
2019-12-23 21:15:26 -05:00
Joshua Boniface
398fb2dfe9
Set URL and information in local swagger.json
2019-12-23 21:09:58 -05:00
Joshua Boniface
57127d2fa8
Move gen-doc helper script
2019-12-23 20:51:44 -05:00
Joshua Boniface
a6683d5b17
Rebuild API using Flask-RESTful and Swagger docs
2019-12-23 20:43:20 -05:00
Joshua Boniface
7901ffb5e3
Handle the list of node_limits even better
2019-12-19 13:22:38 -05:00
Joshua Boniface
796fa4692f
Pass remaining required args to vm_define
2019-12-19 11:53:24 -05:00
Joshua Boniface
78089afb4e
Remove spurious argument to vm_define
2019-12-19 11:43:59 -05:00
Joshua Boniface
a2b30158f8
Move schema file
2019-12-14 16:47:32 -05:00
Joshua Boniface
0727a7f6ed
Move all provisioner API functionality into main
2019-12-14 14:12:55 -05:00
Joshua Boniface
1fb560e996
Add DNS nameservers to networks
2019-12-08 23:55:45 -05:00
Joshua Boniface
45ef7f2a30
Use better layout in entrypoint
2019-10-13 12:15:54 -04:00
Joshua Boniface
ad5f232c03
Update header names
2019-10-13 12:11:23 -04:00
Joshua Boniface
03447d3374
Update copyright string year to include 2019
2019-10-13 12:09:51 -04:00
Joshua Boniface
a9e9198970
Rename API library file
2019-10-13 12:07:57 -04:00
Joshua Boniface
e5393082b6
Use build-in selector and respect limits in client
...
Use the new built-in selector option, as well as respecting node limits,
when performing migrate or move actions on a VM via the clients.
2019-10-12 01:45:44 -04:00
Joshua Boniface
5995353597
Implement VM metadata and use it
...
Implements the storing of three VM metadata attributes:
1. Node limits - allows specifying a list of hosts on which the VM must
run. This limit influences the migration behaviour of VMs.
2. Per-VM node selectors - allows each VM to have its migration
autoselection method specified, to automatically allow different methods
per VM based on the administrator's preferences.
3. VM autorestart - allows a VM to be automatically restarted from a
stopped state, presumably due to a failure to find a target node (either
due to limits or otherwise) during a flush/fence recovery, on the next
node unflush/ready state of its home hypervisor. Useful mostly in
conjunction with limits to ensure that VMs which were shut down due to
there being no valid migration targets are started back up when their
node becomes ready again.
Includes the full client interaction with these metadata options,
including printing, as well as defining a new function to modify this
metadata. For the CLI it is set/modified either on `vm define` or via the
`vm meta` command. For the API it is set/modified either on a POST to
the `/vm` endpoint (during VM definition) or on POST to the `/vm/<vm>`
endpoint. For the API this replaces the previous reserved word for VM
creation from scratch as this will no longer be implemented in-daemon
(see #22 ).
Closes #52
2019-10-12 01:17:39 -04:00
Joshua Boniface
aaf9f5e43b
Add clone volume to API
2019-10-10 14:37:35 -04:00
Joshua Boniface
3b7c1adf71
Implement configurable replcfg (client-side)
...
Implements administrator-selectable replication configurations for new
pools in PVC clusters, overriding the default of copies=3,mincopies=2.
2019-08-23 14:12:15 -04:00
Joshua Boniface
ea2426fa73
Implement additional functions
...
1. VM state
2. VM node
3. Lock flush
2019-08-07 14:46:20 -04:00