public Cluster configureServices(ClusterSpec clusterSpec, Cluster cluster,
Set<String> targetRoles, Set<String> targetInstanceIds)
throws IOException, InterruptedException {
LoadingCache<String, ClusterActionHandler> handlerMap = handlerMapFactory
.create();
ClusterAction configurer = new ByonClusterAction(CONFIGURE_ACTION,
getCompute(), handlerMap);
cluster = configurer.execute(clusterSpec, cluster);
getClusterStateStore(clusterSpec).save(cluster);
return cluster;
}