# Driver Development Guide

The goal of this document is to explain how to develop a new kind of Cyborg accelerator driver.

Note

Make sure you have installed Openstack environment using devstack before development.

## Derive a new driver class

Imply the necessary interface, the list of interfaces is as follows:

    class NewCyborgDriver(object):
        """Cyborg new accelerator driver.
        """

        def discover(self):
            """Discover specific accelerator
            :return: list of cyborg.objects.driver_objects.driver_device.
                     DriverDevice
            """
            pass

## Modify setup.cfg

Add the new driver map into file `cyborg/setup.cfg`:

    [entry_points]
    cyborg.accelerator.driver =
        intel_fpga_driver = cyborg.accelerator.drivers.fpga.intel.driver:IntelFPGADriver
        new_driver_name = cyborg.accelerator.drivers.example.driver:NewCyborgDriver

## Reinstall and Test

Reinstall cyborg:

    $ python setup.py develop

Restart cyborg-agent:

    $ sudo systemctl restart devstack@cyborg-agent

this page last updated: 2026-04-13 10:25:58

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.

found an error? report a bug