pull out volume param creation into factory