- 10 Oct, 2007 1 commit
-
-
Russ Fish authored
www/editsitevars.php3 - The reworked PHP page, including a SetSiteVar function bridging to the script via XML. backend/{editsitevars,GNUmakefile}.in configure configure.in - New backend script. sql/database-fill.sql - Add table_regex 'sitevariables' checking patterns.
-
- 09 Oct, 2007 1 commit
-
-
Russ Fish authored
Enumerate the boolean slots of the node_types table in table_regex. Use it in editnodetype.in, plus a little fix for new_type checking.
-
- 08 Oct, 2007 1 commit
-
-
Russ Fish authored
Note: new_node attributes have not yet been converted from names for osid's and imageid's to new-style integer indices. www/editnodetype.php3 - The reworked PHP page, including an EditNodeType function bridging to the script via XML. backend/{editnodetype,GNUmakefile}.in configure configure.in - New backend script, including wildcarding on %xmlfields table entries to handle dynamic attributes. sql/database-fill.sql - Add table_regex 'node_types' checking patterns.
-
- 03 Oct, 2007 1 commit
-
-
Russ Fish authored
www/editimageid.php3 - The reworked PHP page. www/imageid_defs.php - Add an Experiment::EditImageid class method bridging to the script via XML. backend/{editimageid,GNUmakefile}.in configure configure.in - New backend script. db/Image.pm.in - Add an EditImageid worker class method for script arg checking. sql/database-fill.sql - Add to the table_regex 'images' checking patterns.
-
- 29 Sep, 2007 1 commit
-
-
Russ Fish authored
www/editexp.php3 - The reworked PHP page. backend/{editexp,GNUmakefile}.in configure configure.in - New backend script. www/experiment_defs.php - Add an Experiment::EditExp class method bridging to the script via XML. db/Experiment.pm.in - Add an EditExp worker class method for script arg checking, And a missing description method. sql/database-fill.sql - Add to the table_regex 'experiments' checking patterns.
-
- 27 Sep, 2007 1 commit
-
-
Russ Fish authored
www/newmmlist.php3 - The reworked PHP page. backend/{newmmlist,GNUmakefile}.in configure configure.in - New backend script. sql/database-fill.sql - Add table_regex 'mailman_lists' checking patterns.
-
- 26 Sep, 2007 1 commit
-
-
Russ Fish authored
www/newgroup.php3 - The reworked PHP page. www/newgroup_form.php3 - Removed, form merged into newgroup.php3 . www/group_defs.php - Add a Group::Create method bridging to the script via XML. www/showproject.php3 - Link to newgroup.php3, rather than newgroup_form.php3 . configure configure.in - Add the newgroup backend script. backend/{newgroup,GNUmakefile}.in - Add the Perl script. db/Group.pm.in - Update the AccessCheck method to allow TB_PROJECT_LEADGROUP. sql/database-fill.sql - Add table_regex 'groups' checking patterns.
-
- 19 Sep, 2007 1 commit
-
-
Russ Fish authored
GNUmakefile.in configure configure.in - Add the testbed/backend directory. www/moduserinfo.php3 - The reworked PHP page. www/user_defs.php - Add a ModUserInfo method bridging to the script via XML, and remove the ChangeProfile method that is being replaced. backend/{moduserinfo,GNUmakefile}.in - Add the Perl script. db/User.pm.in - Add a ModUserInfo worker class method for script arg checking. Also SetUserInterface, SetWindowsPassword, and AccessCheck methods, and a copy of the escapeshellarg fn. sql/database-fill.sql - Add some to the table_regex 'users' checking patterns. Support stuff: account/tbacct.in - Update the UpdateWindowsPassword() function. db/libdb.pm.in - Add TBDB_USER_INTERFACE_EMULAB and TBDB_USER_INTERFACE_PLAB(). tbsetup/libtestbed.pm.in - Add TB*EMAIL, TBMAIL_* vars (OPS, WWW, AUDIT).
-
- 10 Sep, 2007 1 commit
-
-
Leigh B. Stoller authored
form processing to be done. The gist is that I have moved all of the data checking and DB work to the backend into a new script called utils/newosid. This script does all the field checking that used to be done in php. It takes a simple XML file as input and returns a set of strings to format as errors (if there are any). The overall goal to make a big push to move this code out of PHP and perl. A nice side effect is that many operations that are current only available via the web interface will also become available command line (and also XMLRPC with a little moew work).
-
- 26 Jul, 2007 1 commit
-
-
Leigh B. Stoller authored
-
- 24 Apr, 2007 1 commit
-
-
David Johnson authored
everybody's stuff up.
-
- 16 Feb, 2007 1 commit
-
-
Leigh B. Stoller authored
-
- 16 Jan, 2007 1 commit
-
-
Leigh B. Stoller authored
interface to the backend. There are new scripts that can be called from the command line: newuser xmlfile newproj xmlfile They both run from small xmlfiles that are generated by the web interface from the form data. I also moved user verification to the backend so that we do not have duplicated email functions, but that was a small change. Upon error, the xmlfile is saved and sent to tbops so that we can rerun the command by hand, rather then force user to fill out form again. I also do a better job of putting the form back up intact when there are internal errors. If the user provides an initial public key, that is put into the xml file as well and addpubkey is called from newuser instead of the web interface. A more general change to addpukey is that it is now *always* called as "nobody". This script was a morass of confusion cause of having to call it as nobody before the user actually exists. In fact, another of my ongoing projects is to reduce the number of scripts called as a particular user, but thats a story for another day. Anyway, the script is always called as nobody, but we pass along the implied user in the environment so that it can do permission checks.
-
- 09 Jan, 2007 1 commit
-
-
Leigh B. Stoller authored
most of the rest of the tables in the system (still a few exceptions). Bound to be some bugs ...
-
- 29 Nov, 2006 1 commit
-
-
Leigh B. Stoller authored
ElabInElab experiments, so as not to consume an interface. I actually modified Keith's changes so that we can dynmaically choose the single or dual model in the NS file (Keith's changes hardwired the system to only single control network) since the single network model has the disadvantage of not allowing new nodes to be added to an inner elab, which would make it impossible to test some things (like the newnode path!). To choose the single control network model, place this in your NS file: tb-elabinelab-singlenet other it defaults to the older dual network model.
-
- 27 Nov, 2006 1 commit
-
-
Leigh B. Stoller authored
-
- 18 Oct, 2006 1 commit
-
-
Leigh B. Stoller authored
created.
-
- 08 Oct, 2006 1 commit
-
-
Leigh B. Stoller authored
-
- 12 Sep, 2006 1 commit
-
-
Leigh B. Stoller authored
it got more complicated as it progressed. The bulk of the change was changing template_exprun so that it can take a pid/eid as an alternative to eid/guid. This is a big convenience since its easy to find the template from a running experiment, and it makes it possible to invoke from the event scheduler, which has never heard of a template before (and its not something I wanted to teach it about). Its also easier on users. Anyway, back to the stoprun event. You can now do this: $ns at 100 "$ns stoprun" or tevc -e pid/eid now ns stoprun You can add the -w option to wait for the completion event that is sent, but this brings me to the glaring problems with this whole thing. * First, the scheduler has to fire off the stoprun in the background, since if it waits, we get deadlock. Why? Cause the implementation of stoprun uses the event system (SNAPSHOT event, other things), and if the scheduler is sitting and waiting, nothing happens. Okay, the solution to this was to generate a COMPLETION event from template_exprun once the stop operation is complete. This brings me to the second problem ... * Worse, is that the "ns" events that are sent to implement stoprun (like snapshot) send their own completion events, and that confuses anyone waiting on the original stoprun event (it returns early). So what to do about this? There is a "token" field in the completion event structure, which I presume is to allow you to match things up. But there is no way to set this token using tevc (and then wait for it), and besides, the event scheduler makes them up anyway and sticks them into the event. So, the seed of a fix are already germinating in my mind, but I wanted to get this commit in so that Mike would have fun reading this commit log.
-
- 05 Sep, 2006 1 commit
-
-
Leigh B. Stoller authored
* Add XMLRPC interface for template swapin,stoprun,startrun,swapout and add the appropriate wrappers to the script_wrapper on ops. * Allow parameter descriptions in NS files. This is probably not in its final form since its a bit confusing as to what has priority; something in the NS file or a metadata item. Anyway, you can do this in your NS file: $ns define-template-parameter GUID "0/0" "The GUID to be analyzed" The rules are currently that the NS file description has priority and is copied to child templates, unless the user has modified a description via the web interface, in which case the NS file description is ignored. I know, sounds awful, but for the most part people are going to use the NS file anyway. * Add "clear" option when starting a new experiment run; the per experiment DB at the logholes are cleared. Note that this is *not* the default behaviour; you have to either check the checkbox on the web form or use the -c option to the script wrapper, or clear=yes if talking directly to the XMLRPC server. * Fix up how email is generated for template_swapin and template_create, so that Kevin can debug tblog/tbreport stuff, but also so that we maintain mail logs as before. I have made some improvements to libaudit so as to centralize the mail goo, and avoid duplicating all that stuff. * Minor fixes to the program agent so that the new environment strings are sent before the program agent exits and reloads them! * Other minor little things.
-
- 30 Aug, 2006 1 commit
-
-
Leigh B. Stoller authored
mixed togther, and port registrations are not made. The one case currently handled is when the syncserver node goes ISUP, but has not reported its port. In this case, it must be an old image and so we place a port registration in for it.
-
- 03 Aug, 2006 1 commit
-
-
Leigh B. Stoller authored
into per-experiment databases on ops. Additional support for reconsituting those databases back into temporary databases on ops, for post processing. * This revision relies on the "snort" port (/usr/ports/security/snort) to read the pcap files and load them into a database. The schema is probably not ideal, but its better then nothing. See the file ops:/usr/local/share/examples/snort/create_mysql for the schema. * For simplicity, I have hooked into loghole, which already had all the code for downloading the trace data. I added some new methods to the XMLRPC server for loghole to use, to get the users DB password and the name of the per-experiment database. There is a new slot in the traces table that indicates that the trace should be snorted to its DB. In case you forgot, at the end of a run or when the instance is swapped out, loghole is run to download the trace data. * For reconsituting, there are lots of additions to opsdb_control and opsdb_control.proxy to create "temporary" databases and load them from a dump file that is stored in the archive. I've added a button to the Template Record page, inappropriately called "Analyze" since right now all it does is reconsitute the trace data into a DB on ops. Currently, the only indication of what has been done (the name of the DBs created on ops) is the log email that the user gets. A future project is tell the user this info in the web interface. * To turn on database capturing of trace data, do this in your NS file: set link0 ... $link0 trace $link0 trace_snaplen 128 $link0 trace_db 1 the increase in snaplen is optional, but a good idea if you want snort to undertand more then just ip headers. * Also some changes to the parser to allow plain experiments to take advantage of all this stuff. To simple get yourself a per-experiment DB, put this in your NS file: tb-set-dpdb 1 however, anytime you turn trace_db on for a link or lan, you automatically get a per-experiment DB. * To capture the trace data to the DB, you can run loghole by hand: loghole sync -s the -s option turns on the "post-process" phase of loghole.
-
- 05 Jul, 2006 1 commit
-
-
Kevin Atkinson authored
Many changes to tblog code. Database update needed: 1) Added summary of failed nodes is os_setup. The cause of the error is now classified as "user" if it is only user images that failed and the user image failed on every pc of a particular type. Otherwise I leave the cause as "unknown" since it is really hard to tell what the real cause is. 2) Raised the confidence threshold for most errors so that they will appear on the top. 3) Added a special error when an experiment is canceled. The cause is "canceled" and testbed-ops won't see these errors. 4) Fixed a bug in assign_wrapper where it will incorrectly report "This experiment cannot be instantiated on this testbed..." when really the user canceled the swapin. 5) Fixed a bug where os_setup errors where being incorrectly reported as assign errors. This happens when os_setup fails for some reason and tbswap tries again, but the second time around there are not enough nodes. So the last error is coming from assign even though the true cause of the error is due to failed nodes. The fix for this involved added a new column to the log table, "attempt", which will be 1 for the first attempt and then incremented for each new attempt. tblog_find_error will then simply ignore any errors with "attempt > 1". 6) Also fixed a potential problem when there is an error during the cleanup phase by adding another column "cleanup". tblog_find_error will also ignore any errors with the cleanup bit set.
-
- 03 Jul, 2006 1 commit
-
-
Mike Hibler authored
Actually, most of the changes here were just to generalize the "virtual interface" state in the DB. Other than the client-side scripts, there is very little specific here specific to tagged VLANs. In fact, you cannot specify "vlan" as a type yet as we haven't done the snmpit support for setting up the switches. For more info see bas:~mike/flux/doc/testbed-virtinterfaces.txt, which I will integrate into the knowledge base and the Emulab doc at some point.
-
- 18 May, 2006 1 commit
-
-
Leigh B. Stoller authored
* Rework metadata to be somewhat more general so that they can be used for things like parameter descriptions. * My own little part of javascript hell ... add a highlight around the "current" template in the template graph. Sheesh! * Add more tooltips (using the tooltip library). When you mouseover the metadata or descriptions, the formatted text is shown in a tooltip, which is handy when the valus is truncated cause its too long for the tables.
-
- 12 May, 2006 1 commit
-
-
Mike Hibler authored
-
- 11 May, 2006 1 commit
-
-
Mike Hibler authored
* setup some fields that parallel the elab-in-elab ones, for modifying the dhcpd.conf file. * tb-set-node-plab-role to set a node as either 'plc' or 'node' used to set the DB role field above
-
- 08 May, 2006 1 commit
-
-
Kevin Atkinson authored
Refactor "log" table to move some stuff into a new table.
-
- 04 Apr, 2006 1 commit
-
-
David Johnson authored
-
- 31 Mar, 2006 1 commit
-
-
Leigh B. Stoller authored
-
- 28 Mar, 2006 1 commit
-
-
Leigh B. Stoller authored
you can turn it on in your devel tree by setting the $EXPOSETEMPLATES variable in www/defs.php3.in to 1. BE SURE NOT TO CHECK THAT CHANGE IN!
-
- 21 Mar, 2006 1 commit
-
-
Kevin Atkinson authored
Changed format of email sent to user on errors. The error will now appear instead of the generic message when I am confident it is accurate. The subject line will also change to reflect the cause of an error. Avoid sending mail to testbed-ops during failed swap related evenets in some cases. It will instead be sent to a new mailing list testbed-errors. Added a new row in the experiment info table "Last Error:" which states the cause of the error, and links to a new page displaying the error. Made some assign/assign_wrapper errors more informative. The error (as determined by tblog) is now stored in the database in a more structured fashion. This inlcudes adding a column for the session (in the log table) to testbed_stats to link eash swap event with the logs and possible the error. Other changes to the database, see sql/database-migrate.txt
-
- 01 Feb, 2006 1 commit
-
-
Timothy Stack authored
-
- 26 Jan, 2006 1 commit
-
-
Timothy Stack authored
-
- 17 Jan, 2006 1 commit
-
-
Leigh B. Stoller authored
-
- 12 Jan, 2006 2 commits
-
-
Leigh B. Stoller authored
-
Leigh B. Stoller authored
-
- 08 Jan, 2006 1 commit
-
-
Timothy Stack authored
-
- 01 Dec, 2005 1 commit
-
-
Russ Fish authored
-
- 04 Nov, 2005 1 commit
-
-
Kevin Atkinson authored
-