'disables CG replication'

@proxy._trace_time
def disable_replication(self, context, group, volumes):

    group_specs = group_types.get_group_type_specs(group.group_type_id)
    if (not group_specs):
        msg = 'No    group    specs    inside    group    type'
        LOG.error(msg)
        raise self.meta['exception'].VolumeBackendAPIException(data=msg)
    replication_info = self._get_replication_info(group_specs)
    updated_volumes = []
    if utils.is_group_a_cg_snapshot_type(group):
        group_name = self._cg_name_from_group(group)
        repl.GroupReplication(self).delete_replication(group_name, replication_info)
        for volume in volumes:
            try:
                self.ibm_storage_cli.cmd.vol_unlock(vol=volume.name)
            except errors.XCLIError as e:
                details = self._get_code_and_status_or_message(e)
                msg = ('Failed    to    unlock    volumes    %(details)s' % {'details': details})
                LOG.error(msg)
                raise self.meta['exception'].VolumeBackendAPIException(data=msg)
            updated_volumes.append({'id': volume.id, 'replication_status': fields.ReplicationStatus.DISABLED})
    else:
        updated_volumes = []
        for volume in volumes:
            repl.VolumeReplication(self).delete_replication(volume.name, replication_info)
        for volume in volumes:
            updated_volumes.append({'id': volume['id'], 'replication_status': fields.ReplicationStatus.DISABLED})
    return ({'replication_status': fields.ReplicationStatus.DISABLED}, updated_volumes)
