IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 17073


Ignore:
Timestamp:
Mar 20, 2008, 1:23:31 PM (18 years ago)
Author:
jhoblitt
Message:

server/client split

Location:
trunk
Files:
21 deleted
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/Nebulous-Server/Changes

    r16565 r17073  
    22
    330.07
     4    - server/client split into Nebulous::Server and Nebulous::Client packages
    45    - add support for storing instances in multi-tier 'hashed' directories
    56    - pickup test DB settings from the env.
  • trunk/Nebulous/Build.PL

    r16565 r17073  
    7575$class->new(
    7676    module_name         => 'Nebulous',
    77     dist_version_from   => 'lib/Nebulous/Server.pm',
     77    dist_version_from   => 'lib/Nebulous/Client.pm',
    7878    author              => 'Joshua Hoblitt <jhoblitt@cpan.org>',
    7979    license             => 'gpl',
    8080    create_makefile_pl  => 'passthrough',
    8181    requires            => {
     82        'File::Copy'            => 0,
     83        'Time::HiRes'           => 0,
    8284        'Class::Accessor::Fast' => 0,
    83         'Config::YAML'          => '1.42',
    84         'DBD::mysql'            => '3.0007',
    85         'DBI'                   => '1.53',
    86         'Digest::SHA1'          => 0,
    87         'File::ExtAttr'         => '1.03',
    88         'File::Path'            => '1.08',
    8985        'File::Spec'            => 0,
    9086        'File::Spec::Functions' => 0,
    9187        'Log::Log4perl'         => '0.48',
    92         'Net::Server::Daemonize'=> '0.05',
    9388        'Params::Validate'      => '0.73',
    9489        'SOAP::Lite'            => '0.69',
    95         'Sys::Statistics::Linux::DiskUsage' => '0.02',
    9690        'URI'                   => '1.30',
    97     },
    98     build_requires      => {
    99         'Apache2::SOAP'         => 0,
    100         'Apache::DBI'           => '1.05',
    101         'Apache::Test'          => '1.27',  # bundles Apache::TestMB
    102         'Apache::TestMB'        => 0,
    103         'File::Temp'            => 0,
    104         'Test::More'            => '0.49',
    105         'Test::URI'             => '1.06',
     91        'Getopt::Long'          => 0,
     92        'Pod::Usage'            => 0,
     93# below are for ./bin only any need to go away
     94        'DBD::mysql'            => '3.0007',
     95        'DBI'                   => '1.53',
     96        'Nebulous::Server::SQL' => 0,
    10697    },
    10798    recommends          => {
    108         'Test::Distribution'    => '1.22',
     99        'Nebulous::Server::Apache'  => 0,
     100        'Nebulous::Server'          => 0,
     101        'Nebulous::Server::SOAP'    => 0,
     102        'Test::Nebulous'            => 0,
     103        'Apache2::SOAP'             => 0,
     104        'Apache::DBI'               => '1.05',
     105        'Apache::Test'              => '1.27',  # bundles Apache::TestMB
     106        'Apache::TestMB'            => 0,
     107        'Test::More'                => '0.49',
     108        'Test::URI'                 => '1.06',
     109        'Test::Distribution'        => '1.22',
    109110    },
    110111    script_files        => [qw(
    111         bin/neb-addvol
    112112        bin/neb-cat
    113113        bin/neb-cp
    114114        bin/neb-cull
    115115        bin/neb-df
    116         bin/neb-fsck
    117         bin/neb-initdb
    118116        bin/neb-locate
    119117        bin/neb-ls
     
    123121        bin/neb-stat
    124122        bin/neb-touch
    125         bin/nebdiskd
    126123    )],
    127124)->create_build_script;
  • trunk/Nebulous/Changes

    r16565 r17073  
    22
    330.07
     4    - server/client split into Nebulous::Server and Nebulous::Client packages
    45    - add support for storing instances in multi-tier 'hashed' directories
    56    - pickup test DB settings from the env.
  • trunk/Nebulous/MANIFEST

    r16264 r17073  
    88Todo
    99autogen.sh
    10 bin/neb-addvol
    1110bin/neb-cat
    1211bin/neb-cp
    1312bin/neb-cull
    1413bin/neb-df
    15 bin/neb-fsck
    16 bin/neb-initdb
    1714bin/neb-locate
    1815bin/neb-ls
     
    2219bin/neb-stat
    2320bin/neb-touch
    24 bin/nebdiskd
    2521docs/c_api.h
    2622docs/database_setup.txt
     
    3733lib/Nebulous/Client/Log.pm
    3834lib/Nebulous/Client/QuickStart.pod
    39 lib/Nebulous/Keys.pod
    40 lib/Nebulous/Server.pm
    41 lib/Nebulous/Server.pod
    42 lib/Nebulous/Server/Apache.pm
    43 lib/Nebulous/Server/Config.pm
    44 lib/Nebulous/Server/Log.pm
    45 lib/Nebulous/Server/SOAP.pm
    46 lib/Nebulous/Server/SQL.pm
    4735lib/Nebulous/Util.pm
    4836nebclient/Doxyfile.in
     
    9886t/00_distribution.t
    9987t/01_load.t
    100 t/02_server_setup.t
    101 t/03_server_create_object.t
    102 t/04_server_replicate_object.t
    103 t/05_server_lock_object.t
    104 t/06_server_unlock_object.t
    105 t/07_server_find_instances.t
    106 t/08_server_delete_instance.t
    107 t/09_server_stat_object.t
    108 t/10_server_is_valid_volume_name.t
    109 t/11_server_is_valid_object_key.t
    110 t/12_server_find_objects.t
    111 t/13_server_rename_object.t
    112 t/14_server_xattr.t
    11388t/50_client_new.t
    11489t/51_client_create.t
     
    130105t/90_nebclient.t
    131106t/TEST.PL
    132 t/Test/Nebulous.pm
    133107t/conf/extra.conf.in
    134108t/conf/startup.pl.in
  • trunk/Nebulous/lib/Nebulous/Client.pm

    r16302 r17073  
    11# Copyright (c) 2004  Joshua Hoblitt
    22#
    3 # $Id: Client.pm,v 1.39 2008-02-05 04:57:56 eugene Exp $
     3# $Id: Client.pm,v 1.40 2008-03-20 23:21:58 jhoblitt Exp $
    44
    55package Nebulous::Client;
     
    88use warnings FATAL => qw( all );
    99
    10 our $VERSION = '0.02';
     10our $VERSION = '0.07';
    1111
    1212use File::Copy qw();
  • trunk/Nebulous/lib/Nebulous/Util.pm

    r16354 r17073  
    11# Copyright (c) 2004  Joshua Hoblitt
    22#
    3 # $Id: Util.pm,v 1.10 2008-02-07 22:18:51 jhoblitt Exp $
     3# $Id: Util.pm,v 1.11 2008-03-20 23:21:58 jhoblitt Exp $
    44
    55package Nebulous::Util;
     
    8080}
    8181
    82 sub parse_neb_key
    83 {
    84     my $text = shift;
    85     return unless defined $text;
    86 
    87     # white space is not allowed
    88     if ($text =~ qr/\s+/) {
    89         die "keys and URIs may not contain whitespace";
    90     }
    91 
    92     my $uri = URI->new($text);
    93     my $scheme = $uri->scheme;
    94     my $path = $uri->opaque;
    95    
    96     my $volume;
    97     # if this is a valid uri
    98     if (defined $scheme) {
    99         # if so, does it use the neb scheme?
    100         die "URI does not use the 'neb' scheme"
    101             unless $scheme eq 'neb';
    102 
    103         # neb:path (not allowed)
    104         # neb://<volume name>/...
    105         # neb:/path... (leading '/' is stripped)
    106         # neb:///path... (same as neb:/path)
    107 
    108         # volume specifier must be at least one character
    109         # strip off volume component if it exists
    110         $path =~ s|^//([^/]+)||;
    111         $volume = $1;
    112 
    113         # require a leading slash if there is no volume name
    114         if ((not defined $volume) and (not $path =~ m|^/|)) {
    115             die "neb URI scheme requires a leading slash, eg. neb:/";
    116         }
    117     }
    118 
    119     # strip leading slashes
    120     $path =~ s|^/+||;
    121 
    122     # remove multiple /'s and trailing slashes
    123     $path = canonpath($path);
    124 
    125     return ($volume, $path);
    126 }
    12782
    128831;
  • trunk/Nebulous/t/01_load.t

    r4440 r17073  
    33# Copryight (C) 2004-2005  Joshua Hoblitt
    44#
    5 # $Id: 01_load.t,v 1.7 2005-06-30 02:35:06 jhoblitt Exp $
     5# $Id: 01_load.t,v 1.8 2008-03-20 23:21:58 jhoblitt Exp $
    66
    77use strict;
     
    1010use lib qw( ./t ./lib );
    1111
    12 use Test::More tests => 8;
     12use Test::More tests => 4;
    1313
    1414BEGIN { use_ok( 'Nebulous::Client' ); }
     
    1616BEGIN { use_ok( 'Nebulous::Client::HTTP' ); }
    1717BEGIN { use_ok( 'Nebulous::Util' ); }
    18 BEGIN { use_ok( 'Nebulous::Server' ); }
    19 BEGIN { use_ok( 'Nebulous::Server::SQL' ); }
    20 BEGIN { use_ok( 'Nebulous::Server::Log' ); }
    21 BEGIN { use_ok( 'Nebulous::Server::SOAP' ); }
Note: See TracChangeset for help on using the changeset viewer.