My test setup works like this:

    make a devenv directory on a system that can run docker

    cd devenv

    git clone git@github.com:openstack/oslo.log.git

    git@github.com:F5Networks/pytest-symbols.git

    git@github.com:F5Networks/f5-openstack-lbaasv2-driver.git

    git@github.com:F5Networks/f5-openstack-test

    git@github.com:F5Networks/f5-openstack-agent.git

    git@github.com:F5Networks/f5-common-python.git

    run docker build -t test_base -f f5-openstack-agent/devtools/Dockerfiles/test_base .

    edit f5-openstack-agent/devtools/common_service_handler_env.json to have the address of your test device

    edit or remove the VOLUME directive from f5-openstack-agent/test/functional/neutronless/CD/Dockerfile to suit your purposes

    edit the last line of f5-openstack-agent/test/functional/neutronless/CD/Dockerfile to customize how the tests will run (e.g. add ::test_loadbalancer_CD to the end of the line to run only that test)

    To change code in any of the related codebases... e.g. f5-common-python, simply change the code on the filesystem, and rerun the tests! The COPY directives in the Dockerfile ensure that local changes are added to the container image...

NOTE: If you change code in the repositories referenced in: f5-openstack-agent/devtools/Dockerfiles/test_base then you'll need to rebuild the test_base image! 

Add docker runner HOWTO to devtools.
Add docker runner HOWTO to devtools.
