File: usage.rst

package info (click to toggle)
lavacli 2.2.0-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,008 kB
  • sloc: python: 15,070; sh: 114; makefile: 27
file content (208 lines) | stat: -rw-r--r-- 4,624 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
.. _usage:

Usage
#####

Here is the list of available commands and sub-commands.

Aliases
=======

LAVA aliases can be managed by:

.. code-block:: shell

    lavacli aliases add <name>
    lavacli aliases delete <name>
    lavacli aliases list
    lavacli aliases show <name>

Device types
============

LAVA device types can be managed by:

.. code-block:: shell

    lavacli device-types add [...]
    lavacli device-types aliases add <name> <alias>
    lavacli device-types aliases delete <name> <alias>
    lavacli device-types aliases list
    lavacli device-types health-check get <name>
    lavacli device-types health-check set <name> <health-check.yaml>
    lavacli device-types list
    lavacli device-types show <name>
    lavacli device-types template get <name>
    lavacli device-types template set <name> <template.jinja2>
    lavacli device-types update [...]

Devices
=======

LAVA devices can be managed by:

.. code-block:: shell

    lavacli devices add [...]
    lavacli devices dict get <hostname>
    lavacli devices dict set <hostname>
    lavacli devices list
    lavacli devices maintenance <hostname>
    lavacli devices show <hostname>
    lavacli devices tags add <hostname> <name>
    lavacli devices tags delete <hostname> <name>
    lavacli devices tags list
    lavacli devices update [...]

Events
======

LAVA events can be used by:

.. code-block:: shell

    lavacli events listen
    lavacli events wait device [...]
    lavacli events wait job [...]
    lavacli events wait worker [...]

Identities
==========

lavacli identities can be managed by:

.. code-block:: shell

    lavacli identities add [...]
    lavacli identities delete <id>
    lavacli identities list
    lavacli identities show <id>

Jobs
====

LAVA jobs can be managed by:

.. code-block:: shell

    lavacli jobs cancel <job_id>
    lavacli jobs config <job_i>
    lavacli jobs definition <job_id>
    lavacli jobs list
    lavacli jobs logs <job_id>
    lavacli jobs queue <device-type>
    lavacli jobs resubmit <job_id>
    lavacli jobs run <definition.yaml>
    lavacli jobs show <job_id>
    lavacli jobs submit <definition.yaml>
    lavacli jobs validate <definition.yaml>
    lavacli jobs wait <job_id>

Lab
===

LAVA lab can be managed by:

.. code-block:: shell

    lavacli lab apply <config>
    lavacli lab import <config>

Results
=======

LAVA results can be managed by:

.. code-block:: shell

    lavacli results <job_id>
    lavacli results <job_id> <suite>
    lavacli results <job_id> <suite> <case>

System
======

LAVA instance can be managed by:

.. code-block:: shell

    lavacli system active
    lavacli system api
    lavacli system export <name>
    lavacli system maintenance
    lavacli system methods list
    lavacli system methods help <method>
    lavacli system methods signature <method>
    lavacli system version
    lavacli system whoami

In order to put a full instance into maintenance, an admin could call **system
maintenance**. This function will:

* set all workers health to *MAINTENANCE*
* wait for all jobs to finish

If the instance should be put into into maintenance immediately, addind **--force** will:

* set all workers health to *MAINTENANCE*
* cancel all running jobs
* wait for all jobs to finish

It also possible to exclude some workers with **--exclude**.

When the maintenance is finished, calling **system active** will move every
worker into *MAINTENANCE* to *ACTIVE*.

Tags
====

LAVA tag can be managed by:

.. code-block:: shell

    lavacli tags add [...]
    lavacli tags delete <tag>
    lavacli tags list
    lavacli tags show <tag>

Utils
=====

Some utilities are available with:

.. code-block:: shell

    lavacli utils logs print <output.yaml>
    lavacli utils templates render <output.yaml>

Printing logs
*************

When working with raw logs, lavacli might help by coloring the logs by levels.

It's also possible to filter the logs by level. To only print the serial output
and the commands sent by LAVA to the board, use:

.. code-block:: shell

    lavacli utils logs print --filter target,input

Available log levels are: exception, error, warning, info, debug, target,
input, feedback, results.

Workers
=======

LAVA workers can be managed by:

.. code-block:: shell

    lavacli workers add [...]
    lavacli workers config get <hostname>
    lavacli workers config set <hostname> <config.yaml>
    lavacli workers env get <hostname>
    lavacli workers env set <hostname> <env.yaml>
    lavacli workers list
    lavacli workers maintenance <hostname>
    lavacli workers update [...]
    lavacli workers show <hostname>