Skip to main content

Python support for using the FlockLab 2 testbed (flocklab CLI, creating flocklab xml, visualization).

Project description

FlockLab Tools

This Python package provides tools for working with the FlockLab testbed.

Features:

  • Python API for managing FlockLab tests
  • Command-line interface (CLI) for Interfacing with FlockLab
  • Programmatic creation of FlockLab test xml files (in python)
  • Visualization of FlockLab test results

PyPi Webpage
Source Code
Changelog

Installation

Dependencies:

  • python3.6+
  • setuptools, pkg_resources, pip, wheel (usually pre-installed when using a virtual environment)
  • rocketlogger (optional, required if flocklab-tools is used to visualize test results containing powerprofiling data in the rld file format)

Install with

python -m pip install flocklab-tools

or

pip install flocklab-tools

Uninstall

python3 -m pip uninstall flocklab-tools

Usage

Command Line Interface (CLI)

System wide command:

flocklab -h

Alternative (using the python module):

python -m flocklab -h

Command Line Options:

-h, --help            show this help message and exit
-v <testconfig.xml>, --validate <testconfig.xml>
                      validate test config
-c <testconfig.xml>, --create <testconfig.xml>
                      create / schedule new test
-a <testid>, --abort <testid>
                      abort test
-d <testid>, --delete <testid>
                      delete test
-g <testid>, --get <testid>
                      get test results (via https)
-f <testid>, --fetch <testid>
                      fetch test results (via webdav) [NOT IMPLEMENTED YET!]
-o <platform>, --observers <platform>
                      get a list of the currently available (online)
                      observers
-p, --platforms       get a list of the available platforms
-x <result directory>, --visualize <result directory>
                      Visualize FlockLab result data

Visualization of FlockLab Results

flocklab -x <result directory>

Python Support

Example

from flocklab import Flocklab as fl
from flocklab import *

testId = 0
fl.getResults(testId)

fc = FlocklabXmlConfig()
fc.generalConf.name = 'Example Test'
fc.generalConf.description = 'Description of example test'
fc.generalConf.duration = 60 # duration in seconds
# ...

Development

Bug Reports / Feature Requests

Please send bug reports and feature requests to rtrueb@ethz.ch.

Installation for Development

Clone this repository and run the following from inside the root folder of the project (where setup.py is located):

python -m pip install -e .

You can edit the source files and the module will reflect the changes automatically (the -e option which means editable install).

License & Copyright

This project is licensed under the BSD-3-Clause license. For details, see the LICENSE file.

Copyright (c) 2020, ETH Zurich, Computer Engineering Group (TEC)

List of Contributors

  • Roman Trub
  • Matthias Meyer
  • Reto Da Forno

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flocklab-tools-0.2.5.tar.gz (22.9 kB view hashes)

Uploaded Source

Built Distribution

flocklab_tools-0.2.5-py3-none-any.whl (24.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page