Merge branch '8784-dir-listings'
[arvados.git] / doc / api / methods / virtual_machines.html.textile.liquid
1 ---
2 layout: default
3 navsection: api
4 navmenu: API Methods
5 title: "virtual_machines"
6 ...
7 {% comment %}
8 Copyright (C) The Arvados Authors. All rights reserved.
9
10 SPDX-License-Identifier: CC-BY-SA-3.0
11 {% endcomment %}
12
13 API endpoint base: @https://{{ site.arvados_api_host }}/arvados/v1/virtual_machines@
14
15 Object type: @2x53u@
16
17 Example UUID: @zzzzz-2x53u-0123456789abcde@
18
19 h2. Resource
20
21 The virtual_machines resource lists compute resources in the Arvados cluster to which a user may log in to get an interactive shell (via ssh or webshell).
22
23 Each VirtualMachine has, in addition to the "Common resource fields":{{site.baseurl}}/api/resources.html:
24
25 table(table table-bordered table-condensed).
26 |_. Attribute|_. Type|_. Description|_. Example|
27 |hostname|string|||
28
29 h2. Methods
30
31 See "Common resource methods":{{site.baseurl}}/api/methods.html for more information about @create@, @delete@, @get@, @list@, and @update@.
32
33 Required arguments are displayed in %{background:#ccffcc}green%.
34
35 h3. create
36
37 Create a new VirtualMachine.
38
39 Arguments:
40
41 table(table table-bordered table-condensed).
42 |_. Argument |_. Type |_. Description |_. Location |_. Example |
43 |virtual_machine|object||query||
44
45 h3. delete
46
47 Delete an existing VirtualMachine.
48
49 Arguments:
50
51 table(table table-bordered table-condensed).
52 |_. Argument |_. Type |_. Description |_. Location |_. Example |
53 {background:#ccffcc}.|uuid|string|The UUID of the VirtualMachine in question.|path||
54
55 h3. get
56
57 Gets a VirtualMachine's metadata by UUID.
58
59 Arguments:
60
61 table(table table-bordered table-condensed).
62 |_. Argument |_. Type |_. Description |_. Location |_. Example |
63 {background:#ccffcc}.|uuid|string|The UUID of the VirtualMachine in question.|path||
64
65 h3(#logins). logins
66
67 Get a list of SSH keys and account names that should be able to log in to a given virtual machine.
68
69 Arguments:
70
71 table(table table-bordered table-condensed).
72 |_. Argument |_. Type |_. Description |_. Location |_. Example |
73 {background:#ccffcc}.|uuid|string||path||
74
75 The response is an object with the field @items@ containing an array of objects in the following format:
76
77 table(table table-bordered table-condensed).
78 |_. Key|_. Value type|_. Description|_. Example|
79 |username|string|Name of the Unix login account to which the user should be able to log in|@"jsmith"@|
80 |hostname|string|Hostname of the virtual machine|@"shell.xyzzy.arvadosapi.com"@|
81 |public_key|string|SSH public key|@"ssh-rsa AAAAB3NzaC1yc2E..."@|
82 |user_uuid|string|UUID of the user who should be able to log in|@"xyzzy-tpzed-mv4d7dy7n91te11"@|
83 |virtual_machine_uuid|string|UUID of the "virtual machine resource":{{site.baseurl}}/api/methods/virtual_machines.html|@"zzzzz-2x53u-kvszmclnbjuv8xc"@|
84 |authorized_key_uuid|string|UUID of the "authorized key resource":{{site.baseurl}}/api/methods/authorized_keys.html|@"zzzzz-fngyi-v9p0cyfmjxbio64"@|
85
86 h3. get_all_logins
87
88 Get a list of SSH keys and account names that should be able to log in for every virtual machine in the system.
89
90 Arguments: none.
91
92 The response has the same format as the response to the "logins method":#logins above.
93
94 h3. list
95
96 List virtual_machines.
97
98 See "common resource list method.":{{site.baseurl}}/api/methods.html#index
99
100 h3. update
101
102 Update attributes of an existing VirtualMachine.
103
104 Arguments:
105
106 table(table table-bordered table-condensed).
107 |_. Argument |_. Type |_. Description |_. Location |_. Example |
108 {background:#ccffcc}.|uuid|string|The UUID of the VirtualMachine in question.|path||
109 |virtual_machine|object||query||