def _setup_stack(self, ryn='manor'):
        role = self.opts.get('id')
        if not role:
            emsg = ("Missing role(\'id\') required to setup RAETReqChannel.")
            log.error(emsg + "\n")
            raise ValueError(emsg)

        kind = self.opts.get('__role')  # application kind 'master', 'minion', etc
        if kind not in kinds.APPL_KINDS:
            emsg = ("Invalid application kind = '{0}' for RAETReqChannel.".format(kind))
            log.error(emsg + "\n")
            raise ValueError(emsg)
        if kind in [kinds.APPL_KIND_NAMES[kinds.applKinds.master],
                    kinds.APPL_KIND_NAMES[kinds.applKinds.syndic]]:
            lanename = 'master'
        elif 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 RAETReqChannel.".format(kind))
            log.error(emsg + '\n')
            raise ValueError(emsg)

        name = 'channel' + nacling.uuid(size=18)
        stack = LaneStack(name=name,
                          lanename=lanename,
                          sockdirpath=self.opts['sock_dir'])

        stack.Pk = raeting.PackKind.pack
        stack.addRemote(RemoteYard(stack=stack,
                                   name=ryn,
                                   lanename=lanename,
                                   dirpath=self.opts['sock_dir']))
        log.debug("Created Channel Jobber Stack {0}\n".format(stack.name))
        return stack
Searches for the specified element by the given selector. Returns the
dataset/ETHPy150Open saltstack/salt/salt/transport/raet.py/RAETReqChannel._setup_stack--crossover with--dataset/ETHPy150Open mdmintz/SeleniumBase/seleniumbase/fixtures/page_actions.py/wait_for_text_visible