def _wait_caller(self, opts): ''' Returns when RAET Minion Yard is available ''' yardname = 'manor' dirpath = opts['sock_dir'] role = opts.get('id') if not role: emsg = ("Missing role required to setup RAET SaltCaller.") log.error(emsg + "\n") raise ValueError(emsg) kind = opts.get('__role') # application kind 'master', 'minion', etc if kind not in kinds.APPL_KINDS: emsg = ("Invalid application kind = '{0}' for RAET SaltCaller.".format(kind)) log.error(emsg + "\n") raise ValueError(emsg) if kind in [kinds.APPL_KIND_NAMES[kinds.applKinds.minion], kinds.APPL_KIND_NAMES[kinds.applKinds.caller], ]: lanename = "{0}_{1}".format(role, kind) else: emsg = ("Unsupported application kind '{0}' for RAET SaltCaller.".format(kind)) log.error(emsg + '\n') raise ValueError(emsg) ha, dirpath = Yard.computeHa(dirpath, lanename, yardname) while not ((os.path.exists(ha) and not os.path.isfile(ha) and not os.path.isdir(ha))): time.sleep(0.1) time.sleep(0.5)
def _wait_caller(self, opts): ''' Returns when RAET Minion Yard is available ''' yardname = 'manor' dirpath = opts['sock_dir'] role = opts.get('id') if not role: emsg = ("Missing role required to setup RAET SaltCaller.") log.error(emsg + "\n") raise ValueError(emsg) kind = opts.get('__role') # application kind 'master', 'minion', etc if kind not in kinds.APPL_KINDS: emsg = ("Invalid application kind = '{0}' for RAET SaltCaller.".format(kind)) log.error(emsg + "\n") raise ValueError(emsg) if kind in [kinds.APPL_KIND_NAMES[kinds.applKinds.minion], kinds.APPL_KIND_NAMES[kinds.applKinds.caller], ]: lanename = "{0}_{1}".format(role, kind) else: emsg = ("Unsupported application kind '{0}' for RAET SaltCaller.".format(kind)) log.error(emsg + '\n') raise ValueError(emsg) ha, dirpath = Yard.computeHa(dirpath, lanename, yardname) if is_windows(): # RAET lanes do not use files on Windows. Need to use win32file # API to check for existence. exists = False while not exists: try: f = win32file.CreateFile( ha, win32file.GENERIC_WRITE | win32file.GENERIC_READ, win32file.FILE_SHARE_READ, None, win32file.OPEN_EXISTING, 0, None) win32file.CloseHandle(f) exists = True except win32file.error: time.sleep(0.1) else: while not ((os.path.exists(ha) and not os.path.isfile(ha) and not os.path.isdir(ha))): time.sleep(0.1) time.sleep(0.5)