New Features in 0.3.0
- All
CommandProtocol
drivers support the poll_until_success method. - The new
FileDigitalOutputDriver
respresents a digital signal with a file. - The new
GpioDigitalOutputDriver
controls the state of a GPIO via the sysfs interface. - Crossbar and autobahn have been updated to 19.3.3 and 19.3.5 respectively.
- The InfoDriver was removed. The functions have been integrated into the
labgridhelper library, please use the library for the old functionality. - labgrid-client
write-image
subcommand: labgrid client now has a
write-image
command to write images onto block devices. labgrid-client ssh
now also uses port from NetworkService resource if
available- The
PLACE
andSTATE
variables used by labgrid-client are replaced by
LG_PLACE
andLG_STATE
, the old variables are still supported for the
time being. - The SSHDriver's keyfile attribute is now specified relative to the config
file just like the images are. - The ShellDriver's keyfile attribute is now specified relative to the config
file just like the images are. labgrid-client -P <PROXY>
and theLG_PROXY
enviroment variable can be
used to access the coordinator and network resources via that SSH proxy host.
Drivers which run commands via SSH to the exporter still connect directly,
allowing custom configuration in the user's.ssh/config
as needed.
Note that not all drivers have been updated to use the ProxyManager yet.- Deditec RELAIS8 devices are now supported by the
DeditecRelaisDriver
. - The
RKUSBDriver
was added to support the rockchip serial download mode. - The
USBStorageDriver
gained support for BMAP. - Flashrom support added, by hard-wiring e.g. an exporter to the DUT, the ROM
on the DUT can be written directly. The flashrom driver implements the
bootstrap protocol. - AndroidFastbootDriver now supports 'getvar' and 'oem getenv' subcommands.
- The coordinator now updates the resource acquired state at the exporter.
Accordingly, the exporter now starts ser2net only when a resources is
aquired. Furthermore, resource conflicts between places are now detected. - Labgrid now uses the
ProcessWrapper
for externally called processes. This
should include output from these calls better inside the test runs. - The binding dictionary can now supports type name strings in addition to the
types themselves, avoiding the need to import a specific protocol or driver
in some cases. - The remote infrastructure gained support for place reservations, for further
information check the section in the documentation. - The
SigrokDriver
gained support for the Manson HCS-2302, it allows enabling
and disabling channels, measurement and setting the current and voltage limit. labgrid-client write-image
gained new arguments:--partition
,
--skip
,--seek
.- Support for Sentry PDUs has been added.
- Strategies now implement a
force
method, toforce
a strategy state
irrespective of the current state. - SSH Connections can now be proxied over the exporter, used by adding a device
suffix to theNetworkService
address. - UBootDriver now allows overriding of default boot command (
run bootcmd
)
via newboot_command
argument. - The config file supports per-target options, in addition to global options.
- Add power driver to support GEMBIRD SiS-PM implementing SiSPMPowerDriver.
- A cleanup of the cleanup functions was performed, labgrid should now clean up
after itself and throws an error if the user needs to handle it himself. labgrid-client
now respects theLG_HOSTNAME
andLG_USERNAME
environment variables to set the hostname and username when accessing
resources.- PyVISA support added, allowing to use PyVISA controlled test equipment from
Labgrid. labgrid-client write-image
gained a new argument--mode
to specify
which tool should be used to write the image (eitherdd
orbmaptool
)- Exporter configuration file
exporter.yaml
now allows use of environment
variables.
Breaking changes in 0.3.0
ManagedFile
now saves the files in a different directory on the exporter.
Previously/tmp
was used, labgrid now uses/var/cache/labgrid
.
A tmpfiles example configuration for systemd is provided in the/contrib
directory.
It is also highly recommended to enablefs.protected_regular=1
and
fs.protected_fifos=1
for kernels>=4.19.
This requires user intervention after the upgrade to create the directory and
setup the cleanup job.@attr.s(cmp=False)
is deprecated and all classes have been moved to
@attr.s(eq=False)
, this release requires attrs version 19.2.0- Coordinator work dir is now set to the same dir as the crossbar configuration
dir. Hence coordinator specific files likeplaces.yaml
and
resources.yaml
are now also stored in the crossbar configuration folder.
Previously it would use..
. - The
HawkbitTestClient
andUSBStick
classes have been removed - The original USBStorageDriver was removed,
NetworkUSBStorageDriver
was
renamed toUSBStorageDriver
.
A deprecatedNetworkUSBStorageDriver
exists temporarily for compatibility
reasons.
Known issues in 0.3.0
- There are several reports of
sshpass
used within the SSHDriver not working
in call cases or only on the first connection. - Some client commands return 0 even if the command failed.
- Currently empty passwords are not well supported by the ShellDriver