Exemple #1
0
def _get_desktops_in_use():
    """List which desktops are currently in use."""

    # https://github.com/ocf/ocflib/blob/90f9268a89ac9d53c089ab819c1aa95bdc38823d/ocflib/lab/ocfstats.sql#L70
    # we don't use users_in_lab_count_public because we're looking for
    # desktops in use, and the view does COUNT(DISTINCT users)
    with get_connection() as c:
        c.execute('SELECT * FROM `desktops_in_use_public`;', )

    return {hostname_from_domain(session['host']) for session in c}
Exemple #2
0
async def lab_desktops():
    public_desktops = list_desktops(public_only=True)

    with get_connection() as c:
        c.execute("SELECT * FROM `desktops_in_use_public`;", )
    desktops_in_use = {hostname_from_domain(session["host"]) for session in c}

    return {
        "public_desktops_in_use":
        desktops_in_use.intersection(public_desktops),
        "public_desktops_num": len(public_desktops),
    }
Exemple #3
0
def test_hostname_from_domain(fqdn, expected):
    assert hostname_from_domain(fqdn) == expected