Skip to content
This repository has been archived by the owner on Jan 13, 2021. It is now read-only.

OpenBenchmark - continuous delivery benchmarking for 6TiSCH

Notifications You must be signed in to change notification settings

openwsn-berkeley/openbenchmark

Repository files navigation

Branch Build Status
master Build Status
develop Build Status

About

This repository contains the code of the 6TiSCH benchmarking platform that automates the experimentation on different testbeds.

Supported testbeds:

IoTLAB - Saclay

Supported 6TiSCH firmware:

OpenWSN

Architecture

Prerequisites

  1. Vagrant
  2. An IoT-LAB account

Getting started

  1. Start up Vagrant VM:
vagrant up
  1. SSH into the server and run bootstrap.sh script:
vagrant ssh
./openbenchmark/bootstrap.sh
  1. Upon the completion of the process, you will be given a public SSH key which is to be copied and pasted into your IoT-LAB account configuration

  2. Run bootstrap_webdev.sh script:

./openbenchmark/bootstrap_webdev.sh -mysql
  1. Write your IoT-LAB username into the experiment configuration file: ~/openbenchmark/conf.txt
[iotlab-config]
user = YOUR_USER_NAME
broker = broker.mqttdashboard.com
  1. To start the GUI, open a web browser and go to 127.0.0.1:8081. Alternatively, you can start an experiment from the console.

Starting an experiment via console

Workflow:

  1. Resource provisioning:
python openbenchmark.py --action=reserve --scenario=YOUR_SCENARIO --testbed=YOUR_TESTBED
  1. Firmware flashing:
python openbenchmark.py --action=flash --firmware=YOUR_FIRMWARE/REPO_URL --testbed=YOUR_TESTBED [--branch=REPO_BRANCH]

If --firmware is not specified, Provisioner will assume the default OpenWSN firmware If parameter --branch is specified along with --firmware, Provisioner will treat the value of --firmware parameter as a URL of a Git repository, clone the repository, compile the source code and flash that firmware onto the nodes of the selected testbed

  1. SUT start:
python openbenchmark.py --action=sut-start --scenario=YOUR_SCENARIO --testbed=YOUR_TESTBED

Additional actions:

  • Independent Orchestrator startup:
python openbenchmark.py --action=orchestrator
  • Independent OpenVisualizer startup:
python openbenchmark.py --action=ov --scenario=YOUR_SCENARIO --testbed=YOUR_TESTBED

If --scenario and --testbed parameters are not provided they will assume the default value of demo-scenario and iotlab, respectively

Development

  1. Run continuous rsync process on the host machine:
vagrant rsync-auto
  1. Run Laravel Mix on the guest machine:
vagrant ssh
cd ~/openbenchmark/web
npm run watch

About

OpenBenchmark - continuous delivery benchmarking for 6TiSCH

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •