Changeset 2586 in ProjectBuilder for devel/pb-modules/lib/ProjectBuilder/Env.pm


Ignore:
Timestamp:
Apr 3, 2020, 2:02:03 AM (4 years ago)
Author:
Bruno Cornec
Message:

Fix #177 for svn pbconf and tested with one level

File:
1 edited

Legend:

Unmodified
Added
Removed
  • devel/pb-modules/lib/ProjectBuilder/Env.pm

    r2498 r2586  
    300300
    301301    #
    302     # Check pbconf cms compliance
     302    # Check pbconf cms compliance except when creating a project as this doesn't exist yet
    303303    #
    304304    pb_vcs_compliant("pbconfdir",'PBCONFDIR',"$pbconfpath/pbconf",$pbconf{$ENV{'PBPROJ'}},$pbinit);
     305    confess "No PBCONFDIR variable created" if ((not defined $ENV{'PBCONFDIR'}) || ($ENV{'PBCONFDIR'} eq ""));
     306
    305307    my ($scheme, $account, $host, $port, $path) = pb_get_uri($pbconf{$ENV{'PBPROJ'}});
    306308
     
    327329        confess "$ENV{'PBROOTDIR'} is not a directory" if (not -d $ENV{'PBROOTDIR'});
    328330    }
    329     pb_log(1,"PBROOTDIR=$ENV{'PBROOTDIR'}\n");
     331    pb_log(1,"PBROOTDIR: $ENV{'PBROOTDIR'}\n");
    330332
    331333    # Adds that conf file to the list to consider
    332334    if (-f "$ENV{'PBROOTDIR'}/$ENV{'PBPROJ'}.yml") {
    333         pb_conf_add("$ENV{'PBROOTDIR'}/$ENV{'PBPROJ'}.yml") if (-f "$ENV{'PBROOTDIR'}/$ENV{'PBPROJ'}.yml");
     335        pb_conf_add("$ENV{'PBROOTDIR'}/$ENV{'PBPROJ'}.yml");
    334336    } elsif (-f "$ENV{'PBROOTDIR'}/$ENV{'PBPROJ'}.pb") {
    335337        pb_vcs_conf_update_v0("$ENV{'PBROOTDIR'}/$ENV{'PBPROJ'}.pb","$ENV{'PBROOTDIR'}/$ENV{'PBPROJ'}.yml");
     
    399401            @pkgs = ("$ENV{'PBPROJ'}") if (not @pkgs);
    400402   
    401             # Case where the parent dir of PBROOTDIR isn't managed yet in VCS
    402             pb_mkdir_p(dirname("$ENV{'PBROOTDIR'}"));
    403             pb_vcs_add_if_not_in($pbconf{$ENV{'PBPROJ'}},dirname("$ENV{'PBROOTDIR'}"));
    404403            pb_mkdir_p("$ENV{'PBROOTDIR'}");
    405             pb_vcs_add_if_not_in($pbconf{$ENV{'PBPROJ'}},"$ENV{'PBROOTDIR'}");
    406             my $msg = "Project $ENV{'PBPROJ'} structure creation";
    407             pb_vcs_checkin($pbconf{$ENV{'PBPROJ'}},"$ENV{'PBROOTDIR'}",$msg);
    408404            open(CONF,"> $ENV{'PBROOTDIR'}/$ENV{'PBPROJ'}.yml") || confess "Unable to create $ENV{'PBROOTDIR'}/$ENV{'PBPROJ'}.yml";
    409405            print CONF << "EOF";
     
    13021298   
    13031299            }
    1304             pb_vcs_add($pbconf{$ENV{'PBPROJ'}},$ENV{'PBCONFDIR'});
    1305             $msg = "Project $ENV{'PBPROJ'} creation";
    1306             pb_vcs_checkin($pbconf{$ENV{'PBPROJ'}},"$ENV{'PBCONFDIR'}",$msg);
     1300            my $msg = "Project $ENV{'PBPROJ'} structure creation";
     1301            opendir(DIR,$ENV{'PBCONFDIR'}) || confess "Unable to open directory $ENV{'PBCONFDIR'}: $!";
     1302            foreach my $f (readdir(DIR)) {
     1303                next if ($f =~ /^\./);
     1304                pb_vcs_add($scheme,"$ENV{'PBCONFDIR'}/$f");
     1305            }
     1306            closedir(DIR);
     1307            pb_vcs_checkin($scheme,dirname($ENV{'PBCONFDIR'}),$msg);
    13071308        } else {
    13081309            pb_log(0,"ERROR: no pbroot defined, used $ENV{'PBROOTDIR'}, without finding $ENV{'PBPROJ'}.yml in it\n");
Note: See TracChangeset for help on using the changeset viewer.