Testing against OpenStack can be aided by running DevStack, a documented shell script to build complete OpenStack development environments. Once you have DevStack installed and configure you can run the jclouds' live tests against it.
One example of getting DevStack up and running easily can be found at the Deploying a DevStack environment guide.
The following changes have to be made to the neutron policy.json (/opt/stack/neutron/etc/policy.json):
create_network:router:external get_network:provider:network_type create_network:provider:network_type update_network:provider:network_type |
should not be be rule:admin_only (leave empty instead). Alternatively, run using the devstack admin login.
mvn clean install -Plive "-Dtest.openstack-neutron-legacy.endpoint=http://my.ip.v4.address:5000/v2.0" "-Dtest.openstack-neutron.endpoint=http://localhost:5000/v2.0" "-Dtest.openstack-neutron.identity=demo:demo" "-Dtest.openstack-neutron-legacy.identity=demo:demo" "-Dtest.openstack-neutron.credential=devstack" "-Dtest.openstack-neutron-legacy.credential=devstack" |
Run these commands inside the DevStack instance itself to clean up any resources left over from failed tests.
source openrc demo demo neutron port-list | awk '{print $2}' | xargs -I{} neutron port-delete "{}" neutron subnet-list | awk '{print $2}' | xargs -I{} neutron subnet-delete "{}" neutron net-list | awk '{print $2}' | xargs -I{} neutron net-delete "{}" |
mvn clean install -Plive -Dtest.openstack-heat.identity=<username> -Dtest.openstack-heat.credential=<password> -Dtest.openstack-heat.endpoint=<endpoint> |