Iterate over voevent models / dbrows and write to bz'd tarball.

    Args:
        voevents (iterable): An iterable (e.g. list) of e.g. Voevent db-rows,
            with access to the 'ivorn' and 'xml' attributes.
        filepath (string): Path to the new tarball to create. Typically of form
            '/path/to/foo.tar.bz2'
    Returns
        packet_count (int): Number of packets written to tarball

def write_tarball(voevents, filepath):
    """
    Iterate over voevent models / dbrows and write to bz'd tarball.

    Args:
        voevents (iterable): An iterable (e.g. list) of e.g. Voevent db-rows,
            with access to the 'ivorn' and 'xml' attributes.
        filepath (string): Path to the new tarball to create. Typically of form
            '/path/to/foo.tar.bz2'
    Returns
        packet_count (int): Number of packets written to tarball
    """
    tuple_gen = ( (v.ivorn, v.xml) for v in voevents)
    return write_tarball_from_ivorn_xml_tuples(tuple_gen,
                                               filepath)