- 02 Jan, 2006 1 commit
-
-
Timothy Stack authored
an inner emulab.
-
- 29 Dec, 2005 1 commit
-
-
Timothy Stack authored
scheduler can startup.
-
- 22 Dec, 2005 1 commit
-
-
Timothy Stack authored
and a few other tweaks. Also bumped parallelism from 10 to 25 rsyncs at a time.
-
- 13 Dec, 2005 1 commit
-
-
Timothy Stack authored
can run.
-
- 01 Dec, 2005 1 commit
-
-
Timothy Stack authored
number.
-
- 28 Nov, 2005 1 commit
-
-
Timothy Stack authored
Make the netlab client applet available to locals. * configure, configure.in: Add xmlrpcpipe.php3. * xmlrpc/emulabserver.py.in: Add missing virtual_tables. Add getareas call to get the list of robot areas. Add node.getlist and node.typeinfo methods for getting information about the nodes. Add a "nic" argument to node.available to get the count of wireless nodes. Add "exclude" argument to experiment.virtual_topology so we don't have to download the massive route table, also delete the 'pid'/'eid' fields for the same reason. Don't return string output of virtual_topology, it's huge. Return some more info in experiment.getlist(). * www/GNUmakefile.in: Add xmlrpcpipe.php3. * www/beginexp_form.php3, www/modifyexp.php3: Add links to the client gui. * www/netlab-client.jar: The client binary.
-
- 04 Nov, 2005 1 commit
-
-
Leigh Stoller authored
-
- 08 Sep, 2005 1 commit
-
-
Mike Hibler authored
-
- 30 Aug, 2005 2 commits
-
-
Leigh Stoller authored
info to admin users.
-
Leigh Stoller authored
tipacl data. Sends it to stdout.
-
- 26 Jul, 2005 1 commit
-
-
Timothy Stack authored
experiment.nsfile methods. Prune some more fields out of the metadata return value.
-
- 19 Jul, 2005 1 commit
-
-
Timothy Stack authored
experiment.
-
- 24 Jun, 2005 2 commits
-
-
Timothy Stack authored
Add a minor feature to loghole to support network link trace files. * utils/loghole.in, utils/loghole.1: Create a directory for traced network links that contains symbolic links to the pcap files. * www/tutorial/advanced.html: Fix the link to the loghole doc. * xmlrpc/emulabserver.py.in: Add a 'traces' aspect to the experiment.info method (used by loghole).
-
Timothy Stack authored
-
- 21 Jun, 2005 1 commit
-
-
Timothy Stack authored
-
- 17 Jun, 2005 1 commit
-
-
Timothy Stack authored
Event system documentation and tweaks: * event/sched/event-sched.c: The snapshot event got left out of the list of events that send back a complete event. If a top level sequence stops with an error, automatically send a report. * event/sched/group-agent.c, event/sched/timeline-agent.c: When handling a complete event, return true if the event was consumed. * event/sched/node-agent.cc: Clean the "/local/logs" loghole on the node before taking a snapshot of the disk image. * event/sched/simulator-agent.cc, event/sched/simulator-agent.h: Made send_report non-static so it can be called when a sequence errors out. Actually check the clear flag when dumping report data. * lib/libtb/tbdefs.c: Add a comment about updating the event scheduler when a new object type is added. * tbsetup/ns2ir/sim.tcl.in: Check the OSIDs passed to the "reload" and "snapshot-to" events. * utils/loghole.1: Mention early and often the directories that gets sync'd. Document the 'change' action and new options for 'clean'. * utils/loghole.in: Use rsync's '--include-from' option so we don't have to run rsync separately for each directory. Add a 'change' action that lets people mess with the metadata of an existing archive. Make the 'clean' action also remove log files on the nodes. Only rsync node's whose OS's support ssh. Grab logs from delay nodes. * www/tutorial/advanced.html: Update the program agent examples to use the new form. * www/tutorial/eventsystem.html: First cut at an event system reference manual that includes sequences, timelines, and other new features. * www/tutorial/loghole.html: Just a pointer to the man page on ops for now. * www/tutorial/nscommands.html: Add a section about capturing parameters from the 'opt' array. * xmlrpc/emulabserver.py.in: Add an osid.info() method that returns information about a single OSID.
-
- 25 May, 2005 1 commit
-
-
Leigh Stoller authored
experiments can be auto fired during swapin.
-
- 24 May, 2005 1 commit
-
-
Robert Ricci authored
the latter gives us one big argument with spaces, etc. escaped.
-
- 16 May, 2005 1 commit
-
-
Timothy Stack authored
admins.
-
- 27 Apr, 2005 1 commit
-
-
Leigh Stoller authored
work inside ElabInElab. The crux of this is to emulate what switchmac does when incorporating nodes into the testbed. Rather then using snmpit to ask the switches for MAC info, we can just ask outer emulab via the proxy to get that same info from the DB. Note, there are no changes to the newnode MFS; it will boot and happily report it after launching teachswitch, but those packets are harmless to the situation. Another wrinkle is that we need the outer emulab to tell us which interfaces are control and which are experimental, since inside there is no real way to determine that. I did this by overloading the final field in the return from switchmac, and using that to override the "role" setting that utils/newnode would normally choose on its own. There is another new routine in the XMLRPC server that is intended to be used for bypassing the newnode path. This is not hooked into anything yet, but the intent is that rather then using the web interface to "add" nodes, we just return everything needed to seed the new_nodes and new_interfaces table, and then run newnodes directly.
-
- 04 Apr, 2005 1 commit
-
-
Timothy Stack authored
Mote and robot related stuff. The main thing is the addition of relay capabilities to capture and related things. * GNUmakefile.in: Add the capture and tip subdirectories to the client and client-install targets. * configure, configure.in, config.h.in: Detect srandomdev() for capture and add "mote/newmote" script. * capture/GNUmakefile.in, capture/capture.c: Add "relay" capabilities to capture. * capture/capquery.c: Query the capserver for the relay receiver's port number. * capture/capserver.c: Small hack to return the port number for a node. * db/libdb.pm.in, db/xmlconvert.in: Add virt_tiptunnels table. * event/program-agent/program-agent.c: Change log file names to something a little more user-friendly. Add a "MODIFY" event handler that lets the user set agent attributes (command, tag, timeout) without having to run a program. * event/sched/GNUmakefile.in, event/sched/console-agent.cc, event/sched/console-agent.h, event/sched/event-sched.c: Add console agents that can be used to snapshot a section of the capture log file. * event/sched/node-agent.cc: Some minor cleanup. * event/sched/simulator-agent.cc, event/sched/simulator-agent.h: Add the config data to the report mail. Add a "RESET" event handler that runs "loghole clean". Save the report mail in a file so it gets archived with the rest of the logs. * lib/libtb/tbdefs.h: Add CONSOLE object type. * mote/GNUmakefile.in, mote/newmote: Add newmote script, just a quick hack to add motes to the DB. * mote/tbuisp.in: Add another backend for loading motes through their relay capture server. * robots/mtp/mtp_dump.c: Dump the min/max values for x and y, handy for figuring out the bounds of the camera. * sql/database-fill.sql: Change the RELOAD-MOTE/SHUTDOWN -> ALWAYSUP/SHUTDOWN mode transition to ALWAYSUP/ISUP since stated doesn't seem to run triggers after a state change by a mode transition. * tbsetup/tbreport.in: Change the ordering of the eventlist so it displays event-sequences appropriately. * tbsetup/ns2ir/GNUmakefile.in, tbsetup/ns2ir/console.tcl, tbsetup/ns2ir/node.tcl, tbsetup/ns2ir/parse.tcl.in, tbsetup/ns2ir/sim.tcl.in: Add a "console" agent that represents the serial console for a node. * tbsetup/ns2ir/sequence.tcl: Add an "append" method so it is easier to build sequences dynamically. * tbsetup/ns2ir/topography.tcl: Make checkdest available to regular users. * tip/GNUmakefile.in, tip/tiptunnel.c: Add support for uploading a file to a relay version of capture and exporting the end connection as a pty. * tmcd/decls.h, tmcd/common/libsetup.pm: Bump version number since the dosubnodelist change is not backwards compatible. * tmcd/tmcd.c: Make dosubnodelist and dosubconfig callable even when a node isn't allocated. Add dotiptunnels command that returns which serial consoles are to be mounted on a node. Add mote version of subconfig that returns information needed to startup the relay version of capture. * tmcd/common/bootsubnodes: For motes, startup the relay version of capture (XXX stargate specific). * tmcd/common/libsetup.pm, tmcd/common/libtmcc.pm, tmcd/common/config/rc.config, tmcd/common/config/rc.tiptunnels: Client side changes for mounting another nodes serial line. * tmcd/common/rc.bootsetup: Always boot the subnodes, even when free. This is used for motes since their capture needs to be up for reloading at the time. * tmcd/linux/ixpboot: Shuffle some code around so the script doesn't fail if the ixp isn't allocated. * utils/loghole.in: Add "digest.out" and "report.mail" as global logs to be saved in archives and display the "report.mail" file when showing a loghole archive. * xmlrpc/emulabserver.py.in: Scrub more of the return values to get rid of "None"s.
-
- 22 Mar, 2005 1 commit
-
-
Leigh Stoller authored
script_wrapper. expwait [-t timeout] -e pid,eid state expwait [-t timeout] pid eid state where: -e - Project and Experiment ID -t - Maximum time to wait (in seconds).
-
- 08 Mar, 2005 1 commit
-
-
Timothy Stack authored
Fix a couple of things I missed in my last checkin. * event/program-agent/program-agent.c: Setup of the user environment variables wasn't ordered correctly. * event/sched/event-sched.c, event/sched/rpc.h, event/sched/rpc.cc: Setup the expected user environment variables, just like in program-agent. * event/sched/simulator-agent.cc: Rename the old feedback data so we don't lose it in case the vnode remapping modify fails. * xmlrpc/emulabserver.py.in: Add virt_user_environment table data to the result of the experiment.metadata method, so the event-scheduler can get it.
-
- 07 Mar, 2005 1 commit
-
-
Timothy Stack authored
Checkin some changes related to experiment automation and vnode feedback: * configure, configure.in: Add sensors/canaryd/feedbacklogs template. * db/libdb.pm.in, db/xmlconvert.in: Add "virt_user_environment" table that holds environment variable names and values. * event/lib/event.c: Allocate memory of the right size for event_notifications. * event/program-agent/GNUmakefile.in: Add version.c file and add install targets for the man page. * event/program-agent/program-agent.8: Man page describing the program-agent daemon. * event/program-agent/program-agent.c: Add a bunch of convenience features: let the user specify the working directory for commands; save output to separate files on every invocation of an agent; let the user specify a timeout for a command; make the set of environment variables sane and add vars given in the NS file in the opt array; a "status" file containing process information is written out when children are collected. Internal changes: child processes are collected immediately, instead of waiting for the next START event, so we can send back COMPLETE events; the daemon now runs with a real-time priority, to increase the chances of receiving events. * event/proxy/evproxy.c: Made it bidirectional so the program-agent's COMPLETE events make it back to the scheduler. * event/sched/error-record.c: Change the default log directory. * event/sched/event-sched.h, event/sched/event-sched.c: Setup an environment similar to a program-agent to run the user's log digester. * event/sched/node-agent.cc: Add a handler for the SNAPSHOT event that runs create_image for the node. * event/sched/simulator-agent.h, event/sched/simulator-agent.cc: Let the user specify a "DIGESTER" script that digests the log files into a summary of the results. Add event handler for remapping a vnode experiment. * event/sched/timeline-agent.c: Accept the RUN event as well as the START event. * os/GNUmakefile.in: Install the install-tarfile.1 man page. * os/install-tarfile: Automatically chown/chgrp any files that do not have valid user or group IDs, the new owner will be the user that swapped in the experiment. Include the install directory in the DB file. Add a "list" mode that just dumps what files have been installed and where. Add a "force" option so the user can forcefully install the file, even though the DB says its already there. * os/install-tarfile.1: Man page describing the install-tarfile tool. * os/syncd/GNUmakefile.in: Install man pages on ops. * sensors/canaryd/GNUmakefile.in: Link canaryd statically and install "feedbacklogs" tool. * sensors/canaryd/canaryd.c: Dump dummynet pipe data. * sensors/canaryd/canarydEvents.c: Log errors. * sensors/canaryd/feedbacklogs.in: Tool used to generate feedback data from canaryd log files. * sensors/slothd/GNUmakefile.in: Install digest-slothd on ops. * sensors/slothd/digest-slothd: Fix some bugs and write out an "alert" file with all the nodes/links that were overloaded. * tbsetup/os_load.in, tbsetup/libosload.pm.in: Add "waitmode" argument that lets you specify that you want to wait for the disk to finish loading and/or wait for the node to come back up in the new OS. * tbsetup/power.in: Remove debugging printf. * tbsetup/ns2ir/node.tcl, tbsetup/ns2ir/program.tcl, tbsetup/ns2ir/sequence.tcl, tbsetup/ns2ir/sim.tcl.in: Fix some quoting problems with event-sequences. Add -expected-exit-code and -tag options to the "$program run" event. Add -digester to the "$ns report" event that lets the user specify a program to run to digest the log files. * tbsetup/ns2ir/tb_compat.tcl.in: Change the initial scaling factor for feedback nodes to 1%, instead of 100%. * tmcd/tmcd.c, tmcd/common/libtmcc.pm: Add "userenv" command that returns the values in "virt_user_environment". Return new program agent fields: dir, timeout, and expected_exit_code. * tmcd/common/GNUmakefile.in: Install rc.canaryd. * tmcd/common/bootvnodes: Add hack to boost the program-agents to a real-time priority, they can't do it from inside the jail. * tmcd/common/rc.canaryd: Rc script for canaryd. * tmcd/common/watchdog: Don't fail outright if there is a bad line in the battery.log * tmcd/common/rc.progagent: Append "userenv" data to the program-agent config file. * utils/GNUmakefile.in: Install loghole and its man page on ops. * utils/loghole.1: Document "clean" command and the change in loghole directories. * utils/loghole.in: Add "clean" command and parallelization. * xmlrpc/emulabserver.py.in: Add "virt_user_environment" table. Order the eventlist by "idx" and time, needed for sequences. And removed unnecessary nologin checks.
-
- 18 Feb, 2005 1 commit
-
-
Leigh Stoller authored
-
- 10 Feb, 2005 1 commit
-
-
Timothy Stack authored
-
- 09 Feb, 2005 1 commit
-
-
Timothy Stack authored
Robot-related improvements based on feedback from Sid: * event/sched/event-sched.h, event/sched/event-sched.c, event/sched/rpc.h, event/sched/rpc.cc: Send a notification of the start of event time and timelines. Add a '-r' option that forces it to use the default rpc path (so dan can use a custom scheduler/rmcd/etc on ops). * robots/GNUmakefile.in, robots/emc/GNUmakefile.in, robots/mtp/GNUmakefile.in, robots/primotion/GNUmakefile.in, robots/rmcd/GNUmakefile.in, robots/vmcd/GNUmakefile.in, robots/tbsetdest/tbsetdest.cc: Add a control-install target. * robots/primotion/garcia-pilot.cc: Take out some experimental code. * robots/primotion/dashboard.hh, robots/primotion/dashboard.cc, robots/primotion/pilotClient.cc, robots/primotion/wheelManager.hh, robots/primotion/wheelManager.cc: When doing a COMMAND_STOP, make sure we only send one update packet, an idle or an abort. Also send back the actual distance travelled/pivoted. * robots/tbsetdest/tbsetdest.cc: Don't output setdest event's with a speed of zero. * tbsetup/eventsys_control.in: When replaying/stopping, clear the start of event time for the experiment. * tbsetup/power_mail.pm.in: Decrease the threshold used to tell if a node has been power cycled "recently". * tbsetup/ns2ir/node.tcl, tbsetup/ns2ir/sim.tcl.in: Bah, backout last change, orientation is supposed to be in degrees at these points. Also, when automatically picking the sync server, don't use nodes that are subnodes. * tmcd/common/bootsubnodes: Send an ISUP for motes. * www/moteleds.php3: Show the mote node names instead of the robots. * www/powertime.php3: Add option to mark nodes as powered off. * www/robotmap.php3: Display the elapsed time for the overall event time and for each active timeline. * www/showexp.php3: Only display the blinky lights menu item when there are motes. * www/shownode.php3: Change "Update Power Time" -> "Update Power State". * www/tutorial/mobilewireless.php3: Fix some nits. * xmlrpc/emulabserver.py.in: Add event_time_start method for storing/getting/clearing the start of event time for an experiment/timeline.
-
- 04 Feb, 2005 1 commit
-
-
Timothy Stack authored
Some more robot integration. * event/lib/event.h, event/lib/event.c: Add some event_notification creation functions that get used in event-sched. * event/sched/event-sched.c, event/sched/rpc.h, event/sched/rpc.cc: Sync the start of event time with the robots reaching their initial positions. This is done by creating a master event-sequence that takes care of sending the SETDEST events and then starting the Simulator timeline. * mote/tbuisp.in: Use node_reboot instead of ssh'ing in. * robots/GNUmakefile.in: Don't build tbsetdest if ulsshxmlrpcpp is not available. * robots/emc/loclistener.in: Clear the destination values for a node when it reaches its destination. * robots/primotion/garcia-pilot.cc, robots/primotion/pilotClient.cc: Some cleanup and debugging. * robots/primotion/wheelManager.cc: Check the rear sensors for obstructions and then decide which way to pivot. * robots/rmcd/pilotConnection.h, robots/rmcd/pilotConnection.c, robots/rmcd/rclip.h: Even more tweaking. * robots/tbsetdest/tbsetdest.cc: Don't generate points that are outside the camera bounds or inside an obstacle. * robots/vmcd/visionTrack.c, robots/vmcd/vmcd.h, robots/vmcd/vmcd.c: Add more debugging output. * tbsetup/os_setup.in: Removed the robot hack used when deciding which nodes to reconfig/reboot. Added a robot hack to avoid rebooting a robot whose mote is being os_load'd, since it would interrupt tbuisp which does the reboot anyways. Also fixed a small typo. * tbsetup/ns2ir/node.tcl, tbsetup/ns2ir/sim.tcl.in: Oops, forgot to convert degrees to radians. * tbsetup/ns2ir/topography.tcl: When checking for node destination points in obstacles, include the implicit exclusion zone. * tmcd/common/bootsubnodes: Add empty "mote" case. * tmcd/linux-sg/GNUmakefile.in: Make some of the /etc subdirs when doing the install. * tmcd/linux-sg/rc.stargate: Start garcia-pilot. * vis/floormap.in: Add options for showing the camera bounds, obstacle exclusion zones, and displaying vnames instead of pnames. * www/ledpipe.php3: Finally figured out how to use a socket instead of popening a perl script. * www/robotmap.php3: Add checkboxes for displaying/not displaying the camera bounds and obstacle exclusion zones. Add a legend showing what actual vs. destination points are. Pass pid/eid through to vis/floormap if it is given. * www/showexp.php3: Add a "Robot Map" link to experiments that have allocated garcias. * www/floormap/map_legend_node.gif, www/floormap/map_legend_node_dst.gif: Icons used by the robot map legend. * www/floormap/robots-4.jpg: Added an obstacle around the entryway so people are slightly less likely to trip over the robots. Added a coordinate system legend to the top left corner. * www/tutorial/mobilewireless.php3: Add links to David's movie of the robot making its way around the pillar. * www/tutorial/robot_anim.gif: A nifty gifanim clip of the robot movie. * xmlrpc/emulabserver.py.in: Pull the camera data from the DB, instead of returning hardcoded stuff.
-
- 17 Jan, 2005 2 commits
-
-
Timothy Stack authored
More robot tweaks: * event/sched/event-sched.c: Start rmcd, then vmcd. * event/sched/rpc.cc: Add camera dimensions to the config file. * robots/emc/emcd.c: Add camera dimensions to the config file and destroy vmc's position_list when it disconnects. * robots/mtp/mtp.x, robots/mtp/mtp.c: Add dimensions to the camera config and add a command_id field to the update_position packet. * robots/primotion/garcia-pilot.cc: Move the decl of the acpGarcia object below daemon(3) since it doesn't seem to like it when the parent process dies and fix the log file creation. * robots/primotion/pilotClient.cc: Pass the command_id back in any update_position packets. * robots/rmcd/rmcd.c: Use the command-id to distinguish between STOPs for the sake of a GOTO and a wiggle. * robots/vmcd/visionTrack.h, robots/vmcd/visionTrack.c: Only coalesce packets from different cameras (duh) and mess with the tolerances a little more. * xmlrpc/emulabserver.py.in: Add some rough camera dimensions.
-
Timothy Stack authored
More robot integration and some event system updates. * configure, configure.in: Detect rsync for loghole and add utils/loghole to the list of template files. * db/libdb.pm.in, db/xmlconvert.in: Add virt_node_startloc to the list of virtual tables. * event/lib/event.h, event/lib/event.c, event/lib/tbevent.py.tail: Add event_stop_main function to break out of the event_main() loop. Add timeline to the address tuple. * event/sched/GNUmakefile.in, event/sched/error-record.h, event/sched/error-record.c, event/sched/event-sched.8, event/sched/event-sched.h, event/sched/event-sched.c, event/sched/group-agent.h, event/sched/group-agent.c, event/sched/listNode.h, event/sched/listNode.c, event/sched/local-agent.h, event/sched/local-agent.c, event/sched/node-agent.h, event/sched/node-agent.cc, event/sched/queue.c, event/sched/rpc.h, event/sched/rpc.cc, event/sched/simulator-agent.h, event/sched/simulator-agent.c, event/sched/timeline-agent.h, event/sched/timeline-agent.c: Updated event scheduler, not completely finished, but well enough along for the robots. * lib/libtb/GNUmakefile.in, lib/libtb/popenf.h, lib/libtb/popenf.c, lib/libtb/systemf.h, lib/libtb/systemf.c: Add some handy versions of system/popen that take format arguments. * lib/libtb/tbdefs.h, lib/libtb/tbdefs.c: Add some more event and object types. * tbsetup/assign_wrapper.in: Add the virt_node_startloc building to desires string for a node. * tbsetup/ptopgen.in: Add a node's location to the feature list. * tbsetup/tbreport.in: Display the timeline/sequence an event is a part of. * tbsetup/ns2ir/GNUmakefile.in: Add timeline, sequence, and topography files. * tbsetup/ns2ir/node.tcl: Add initial position for nodes and allow them to be attached to "topographys". * tbsetup/ns2ir/parse-ns.in: Make a hwtype_class array with a node_type's class. Make an 'areas' array that holds the buildings where nodes are located. Make an 'obstacles' table with any obstacles in the building. * tbsetup/ns2ir/parse.tcl.in: Move named-args function from tb_compat.tcl to here. Add reltime-to-secs function that converts time given in a format like "10h2m1s" to a seconds value, used in "$ns at" so its easier to write time values. Add "K", "Kb", and "Kbps" as possible units for bandwidth (only the lowercase versions were available before). * tbsetup/ns2ir/program.tcl: Add "dir" and "timeout" attributes, although they don't go anywhere at the moment. * tbsetup/ns2ir/sequence.tcl, tbsetup/ns2ir/timeline.tcl, tbsetup/ns2ir/topography.tcl: Initial versions. * tbsetup/ns2ir/sim.tcl.in: Add support for timelines and sequences. Add 'node-config' method to change the default configuration for nodes produced by the Simulator object. Send an initial MODIFY event to any trafgen objects so their configuration gets through, even when there are no start/stop events. Move event parsing to the 'make_event' method. * utils/loghole.1, utils/loghole.in: Loghole utility, used for retrieving logs from experimental nodes and creating archives of the logs. * xmlrpc/emulabclient.py.in: Escape any strange characters in the output field. * xmlrpc/emulabserver.py.in: Add virt_node_startloc to the list of virtual_tables. Add emulab.vision_config and emulab.obstacle_config methods for getting information pertaining to the robots. Change the OSID listing to include more fields. Add a "physical" aspect to experiment.info to get information about the physical nodes. Add parent field to the events in the array returned by eventlist. Add sshdescription to get extra information needed to log into a vnode. Add node.statewait so you can wait for nodes to come up.
-
- 21 Dec, 2004 1 commit
-
-
Leigh Stoller authored
but never made use of. Moved to its own file (www/xmlrpc.php3.in) and made to be more like the perl library I did a couple of months ago, that presents an interface to an sslxmlrpc server, via the sslxmlrpc client program operating in "raw" mode (takes raw xml on stdin, and returns raw xml on stdout). Added ELABINELAB code to nodetipacl.php3 so that you can click on console icon on an inner emulab web page, and it will ask the outer emulab sslxmlrpc server for the stuff it needs, and return that to the user.
-
- 20 Dec, 2004 2 commits
-
-
Leigh Stoller authored
the inner web interface can return the stuff that tiptunnel needs. Tim already had a node.console routine that does this, so I just invoke it from the elabinelab class, after elabinelab permission checks.
-
Leigh Stoller authored
loading emulabserver.py from the main tree.
-
- 10 Dec, 2004 1 commit
-
-
Robert Ricci authored
desktops, nodes, etc. Thanks to Tim for actually writing most of this code.
-
- 06 Dec, 2004 1 commit
-
-
Leigh Stoller authored
of virt_nodes table.
-
- 29 Nov, 2004 3 commits
-
-
Timothy Stack authored
sending the request, otherwise two connections are made (doh).
-
Timothy Stack authored
-
Timothy Stack authored
bit in the exception message.
-
- 16 Nov, 2004 1 commit
-
-
Leigh Stoller authored
download images from the outer emulab. This script is invoked from frisbeelauncher when ELABINELAB=1 and the filename does not exist (thus attempting to get the image file before bailing). The frisbeeimage script uses a new method in the RPC server to fire up a frisbeed (using frisbeelauncher on the outer Emulab), subject to the usual permission checks against creator of the elabinelab experiment (I assume that the creator will have access to any outer images that are used inside the inner emulab). If outer frisbeelauncher succeeds, its return value is the load_address (IP:port), which is used to fire up a frisbee client to get the image file and write it out (using Mike's new -N option that just dumps the raw data to file). Once the image is downloaded, control returns to inner frisbeelauncher and proceeds as normal. I whacked this together pretty quickly. Under heavy usage it might hit a race condition or two, but I do not expect that to happen in an inner elab for a while.
-
- 15 Nov, 2004 1 commit
-
-
Timothy Stack authored
Minor improvement to the node.available() method so you can get the number of free nodes of a particular type (e.g. pc850). * xmlrpc/GNUmakefile.in: Add node_avail symlink. * xmlrpc/emulabserver.in: Add some optional parameters to node.available() so you can specify the class/type of nodes as well as project credentials. * xmlrpc/script_wrapper.py.in: Add node_avail class that calls node.available() with the given parameters.
-