• Leigh B. Stoller's avatar
    The bulk of the event system changes. · 9aa6b5ca
    Leigh B. Stoller authored
    * The per-experiment event scheduler now runs on ops instead of boss.
      Boss still runs elvind and uses events internally, but the user part
      of the event system has moved.
    * Part of the guts of eventsys_control moved to new script, eventsys.proxy,
      which runs on ops and fires off the event scheduler. The only tricky part
      of this is that the scheduler runs as the user, but killing it has to be
      done as root since a different person might swap out the experiment. So,
      the proxy is a perl wrapper invoked from a root ssh from boss, which
      forks, writes the pid file into /var/run/emulab/evsched/$pid_$eid.pid,
      then flips to the user and execs the event scheduler (which is careful
      not to fork). Obviously, if the kill is done as root, the pid file has to
      be stored someplace the user is not allowed to write.
    * The event scheduler has been rewritten to use Tim's C++ interface to the
      sshxmlrpc server on boss. Actually, I reorg'ed the scheduler so that it
      can ...