Changeset 8d4e4fb for fedkit/combo.pl


Ignore:
Timestamp:
Feb 10, 2010 10:29:18 AM (14 years ago)
Author:
Ted Faber <faber@…>
Branches:
axis_example, compt_changes, info-ops, master, version-3.01, version-3.02
Children:
bbd0039
Parents:
b73cc45
Message:

Add support for parameters via files in a standard emulab location

Also moved combo_active.pl to combo.pl and added support for passive gateways.

File:
1 moved

Legend:

Unmodified
Added
Removed
  • fedkit/combo.pl

    rb73cc45 r8d4e4fb  
    1111my $ssh_pubkey;
    1212my $ssh_privkey;
     13my $active;
    1314my $tunnelip;
    1415my $peer;
    1516my $fedkit_dir= "/usr/local/federation";
    1617my $perl = "/usr/bin/perl";
    17 my $iface_file;
     18my $iface_file = "/var/emulab/boot/ifmap";
    1819my $ssh = "/usr/bin/ssh";
    1920my @ports;
     21my $use_file;
    2022
    21 exit(20) unless GetOptions(
     23my %opts = (
    2224    'ssh_pubkey=s' => \$ssh_pubkey,
    2325    'ssh_privkey=s' => \$ssh_privkey,
     
    2830    'interfaces=s' => \$iface_file,
    2931    'ssh=s' => \$ssh,
    30     'port=s', \@ports,
     32    'port=s' => \@ports,
     33    'active' => \$active,
     34    'use_file' => \$use_file,
    3135);
    3236
     37exit(20) unless GetOptions(%opts);
     38
     39gateway_lib::read_config(gateway_lib::emulab_config_filename(), \%opts)
     40    if $use_file;
    3341
    3442my $tunnelparam = $tunnelip ? '--tunnelip' : '';
    35 my $portparam = join(" --port=", @ports);
     43if ($active) {
     44    my $portparam = join(" --port=", @ports);
    3645
    37 # join doesn't prefix the first one
    38 $portparam="--port=$portparam" if $portparam;
     46    # join doesn't prefix the first one
     47    $portparam="--port=$portparam" if $portparam;
    3948
    40 system("$perl -I$fedkit_dir/lib $fedkit_dir/bin/active_config.pl " .
    41     "--peer=$peer --ssh_pubkey=$ssh_pubkey --ssh_privkey=$ssh_privkey " .
    42     " $tunnelparam --fedkit=$fedkit_dir --perl=$perl " .
    43     "--ssh=$ssh --interfaces=$iface_file");
    44 exit(20) if $?;
     49    system("$perl -I$fedkit_dir/lib $fedkit_dir/bin/active_config.pl " .
     50        "--peer=$peer --ssh_pubkey=$ssh_pubkey --ssh_privkey=$ssh_privkey " .
     51        " $tunnelparam --fedkit=$fedkit_dir --perl=$perl " .
     52        "--ssh=$ssh --interfaces=$iface_file");
     53    exit(20) if $?;
    4554
    46 system("$perl -I$fedkit_dir/lib $fedkit_dir/bin/port_forward.pl " .
    47     "--peer=$peer --ssh_pubkey=$ssh_pubkey --ssh_privkey=$ssh_privkey " .
    48     " $tunnelparam --fedkit=$fedkit_dir --perl=$perl " .
    49     "--ssh=$ssh $portparam");
    50 exit(20) if $?;
     55    system("$perl -I$fedkit_dir/lib $fedkit_dir/bin/port_forward.pl " .
     56        "--peer=$peer --ssh_pubkey=$ssh_pubkey --ssh_privkey=$ssh_privkey " .
     57        " $tunnelparam --fedkit=$fedkit_dir --perl=$perl " .
     58        "--ssh=$ssh $portparam");
     59    exit(20) if $?;
     60}
     61else {
     62    system("$perl -I$fedkit_dir/lib $fedkit_dir/bin/prep_gateway.pl " .
     63        "--peer=$peer --ssh_pubkey=$ssh_pubkey $tunnelparam");
     64    exit(20) if $?;
     65}
    5166
    5267=pod
     
    108123connectivity information
    109124
     125=item B<use_file>
     126
     127If given read additional parameters from the file in
     128/proj/I<project>/exp/I<experiment/tmp/I<hostname>.gw/conf where those are the
     129current testbed project and experiment and the hostname is before the first
     130dot.  The file is option: value.
     131
    110132=back
    111133
Note: See TracChangeset for help on using the changeset viewer.