Thanks for taking care of this @jasdeep-hundal! To add it to the compute service api, what I'd do is to extend the [TemplateOptions](https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/options/TemplateOptions.java) class by adding a method that accepts a list of [Volumes](https://github.com/jclouds/jclouds/blob/master/compute/src/main/java/org/jclouds/compute/domain/Volume.java). Then you can modify the [NovaComputeServiceAdapter](https://github.com/jclouds/jclouds/blob/master/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/compute/NovaComputeServiceAdapter.java) to read the volumes from the template options, transform them to `BlockDevices` and build the `CreateServerOptions` accordingly.
This approach will open the door to do the same for other providers such as AWS or GCE. --- Reply to this email directly or view it on GitHub: https://github.com/jclouds/jclouds/pull/326#issuecomment-38629376