Ignore:
Timestamp:
Oct 11, 2011 10:38:17 AM (13 years ago)
Author:
Ted Faber <faber@…>
Branches:
compt_changes, info-ops, master
Children:
8cb269a
Parents:
451fb96
Message:

Restore mnemonic names and allow seer_master experiments in groups. NB:
all existing experiments that are reused on DETER get deleted now.
Don't save anything in there.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • fedd/federation/local_emulab_segment.py

    r451fb96 rc167378  
    6363        Start a sub-experiment on a federant.
    6464
    65         Get the current state, modify or create as appropriate, ship data
     65        Get the current state, and terminate the experiment if it exists. The
     66        group membership of the experiment is difficult to determine or change,
     67        so start with a clean slate.  Create a new one and ship data
    6668        and configs and start the experiment.  There are small ordering
    6769        differences based on the initial state of the sub-experiment.
     
    7072        state = self.get_state(pid, eid)
    7173
    72         if state == 'none':
    73             if not self.make_null_experiment(pid, eid, tmpdir, gid):
    74                 return False
     74        if state != 'none':
     75            self.terminate_exp(pid, eid)
     76
     77        if not self.make_null_experiment(pid, eid, tmpdir, gid):
     78            return False
    7579
    7680        if not self.set_up_experiment_filespace(pid, eid, tmpdir):
     
    8488            return False
    8589       
    86         # Stage the new configuration (active experiments will stay swapped
    87         # in now)
     90        # Stage the new configuration
    8891        if not self.modify_exp(pid, eid, tcl):
    8992            self.log.error("modify failed")
    9093            return False
    91         # Active experiments are still swapped, this swaps the others in.
    92         if state != 'active':
    93             if not self.swap_exp(pid, eid, 'in'):
    94                 return False
     94
     95        if not self.swap_exp(pid, eid, 'in'):
     96            self.log.error("swap in failed")
     97            return False
    9598        # Everything has gone OK.
    9699        self.get_mapping(pid,eid)
Note: See TracChangeset for help on using the changeset viewer.