def __init__(self, uid, host, port, boss_port): self.uid = uid self.boss_port = boss_port self.host = host self.port = port self.boss_api_handler = BossClient(host, boss_port).boss_access if in_parent_process(): save_pid_file('pretenders-mock-{0}.pid'.format(uid))
class Pretender(object): def __init__(self, uid, host, port, boss_port): self.uid = uid self.boss_port = boss_port self.host = host self.port = port self.boss_api_handler = BossClient(host, boss_port).boss_access if in_parent_process(): save_pid_file('pretenders-mock-{0}.pid'.format(uid)) def run(self): raise NotImplementedError( "run() not defined in {0}".format(self.__class__)) @classmethod def start(cls): server = cls.from_command_line_args() try: server.run() except socket.error: LOGGER.info("QUITTING") import sys sys.exit(RETURN_CODE_PORT_IN_USE) @classmethod def from_command_line_args(cls): """Default parser for mock server scripts. Parse command line args and return the parsed object. """ parser = argparse.ArgumentParser(description='Start the server') parser.add_argument( '-H', '--host', dest='host', default='localhost', help='host/IP to run the server on (default: localhost)') parser.add_argument( '-p', '--port', dest='port', type=int, default=8001, help=('port number to run the ' 'server on (default: 8001)')) parser.add_argument( '-b', '--boss', dest='boss_port', default='8000', help="port for accessing the Boss server.") parser.add_argument( '-d', '--debug', dest="debug", default=False, action="store_true", help='start a build right after creation') parser.add_argument('-i', '--uid', dest='uid') args = parser.parse_args() return cls(uid=args.uid, host=args.host, port=args.port, boss_port=args.boss_port) def store_history_retrieve_preset(self, body): return self.boss_api_handler.http( 'POST', url="/replay/{0}".format(self.uid), body=body )
def run(host, port): """ Run the maintainer. Which regularly triggers the boss to delete stale Mock servers. """ boss_client = BossClient(host, port) while True: time.sleep(STALE_DELETE_FREQUENCY) boss_client.boss_access.http('DELETE', url='/smtp?stale=1') boss_client.boss_access.http('DELETE', url='/http?stale=1')
class Pretender(object): def __init__(self, uid, host, port, boss_port): self.uid = uid self.boss_port = boss_port self.host = host self.port = port self.boss_api_handler = BossClient(host, boss_port).boss_access if in_parent_process(): save_pid_file('pretenders-mock-{0}.pid'.format(uid)) def run(self): raise NotImplementedError("run() not defined in " "{0}".format(self.__class__)) @classmethod def start(cls): server = cls.from_command_line_args() try: server.run() except socket.error: LOGGER.info("QUITTING") import sys sys.exit(RETURN_CODE_PORT_IN_USE) @classmethod def from_command_line_args(cls): """Default parser for mock server scripts. Parse command line args and return the parsed object. """ parser = argparse.ArgumentParser(description='Start the server') parser.add_argument( '-H', '--host', dest='host', default='localhost', help='host/IP to run the server on (default: localhost)') parser.add_argument('-p', '--port', dest='port', type=int, default=8001, help=('port number to run the ' 'server on (default: 8001)')) parser.add_argument('-b', '--boss', dest='boss_port', default='8000', help="port for accessing the Boss server.") parser.add_argument('-d', '--debug', dest="debug", default=False, action="store_true", help='start a build right after creation') parser.add_argument('-i', '--uid', dest='uid') args = parser.parse_args() return cls(uid=args.uid, host=args.host, port=args.port, boss_port=args.boss_port) def store_history_retrieve_preset(self, body): return self.boss_api_handler.http('POST', url="/replay/{0}".format(self.uid), body=body)