1##########################################################################
2# Copyright (c) 2009, ETH Zurich.
3# All rights reserved.
4#
5# This file is distributed under the terms in the attached LICENSE file.
6# If you do not find this file, copies can be found by writing to:
7# ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
8##########################################################################
9
10import getpass
11import siteconfig
12
13LOADGEN_HOSTS = []
14
15class MSRC(siteconfig.BaseSite):
16    # site-specific configuration variables for ETH
17    WEBSERVER_NFS_HOST = 'barrelfish-4'
18    WEBSERVER_NFS_PATH = '/home/netos/notexist'
19    WEBSERVER_LOCAL_PATH = WEBSERVER_NFS_PATH
20    HTTPERF_PATH = 'httperf.notexist'
21    HTTPERF_MAXCLIENTS = len(LOADGEN_HOSTS * 2) # max number of load generators
22    #IPBENCH_PATH = '/home/netos/tools/ipbench/bin/ipbench.py'
23    #IPBENCHD_PATH = '/home/netos/tools/ipbench/bin/ipbenchd.py'
24    #SSH_ARGS='-x -o StrictHostKeyChecking=no -o ControlPath=none'
25    HAGFISH_LOCATION=''
26
27    def __init__(self):
28        self._loadgen_hosts = LOADGEN_HOSTS
29
30    def get_load_generator(self):
31        # take the first host, but put it on the back in case we
32        # need more clients than available hosts (ie. rotate the list)
33        host = self._loadgen_hosts.pop(0)
34        self._loadgen_hosts.append(host)
35        return getpass.getuser(), host
36
37siteconfig.site = MSRC()
38
39# also cause the MSRC machines to be loaded/initialised
40import machines.msrc
41