622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
|
$fossilInfoLocalRootPattern $result dummy directory]} then {
return ""
}
return [string trim $directory]
}
#
# NOTE: This procedure attempts to verify that the root directory of the
# Fossil checkout is present, valid, and is actually a directory.
# There are no arguments. Script errors will be raised if any of
# the checks fail.
#
proc verifyCheckoutDirectory {} {
variable checkoutDirectory
if {[isWindows]} then {
set repositories C:\\repositories
set checkouts C:\\checkouts
} else {
set repositories ~/repositories
set checkouts ~/checkouts
}
set message [string trim [subst {
The package client checkout directory has an issue: %error%
Prior to running the package uploader client tool, Fossil must be
installed -AND- the Package File Server repository must be cloned
and opened, using commands very similar to the following:
mkdir ${repositories}
cd ${repositories}
fossil clone https://your_login@pkg.management/pkgd pkgd.fossil
mkdir ${checkouts}
cd ${checkouts}
fossil open [file join ${repositories} pkgd.fossil]
After the above steps have been completed, package uploader client
tool can be executed using a command very similar to the following:
tclsh [file join ${checkouts} client 1.0 neutral pkgr_upload.eagle]
}]]
if {![info exists checkoutDirectory]} then {
set error "checkout directory is missing"
error [string map [list %error% $error] $message]
}
if {[string length $checkoutDirectory] == 0} then {
set error "checkout directory is invalid"
error [string map [list %error% $error] $message]
}
if {![file isdir $checkoutDirectory]} then {
set error [appendArgs \
"checkout directory \"" $checkoutDirectory \
"\" is not really a directory"]
error [string map [list %error% $error] $message]
}
}
#
# NOTE: This procedure attempts to verify that an implementation of Fossil
# is installed locally. There are no arguments. Script errors are
# raised if any problems are found. The return value is undefined.
|
>
>
>
>
>
>
>
>
|
|
|
|
|
|
|
|
>
|
|
<
>
|
|
<
|
|
<
<
|
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
|
$fossilInfoLocalRootPattern $result dummy directory]} then {
return ""
}
return [string trim $directory]
}
#
# NOTE: This procedure builds a native path using the specified parts and
# returns it. All arguments are considered to be parts of the path.
#
proc joinPath { args } {
return [file nativename [eval file join $args]]
}
#
# NOTE: This procedure attempts to verify that the root directory of the
# Fossil checkout is present, valid, and is actually a directory.
# There are no arguments. Script errors will be raised if any of
# the checks fail.
#
proc verifyCheckoutDirectory {} {
variable checkoutDirectory
if {[isWindows]} then {
set repositories C:/repositories
set checkouts C:/checkouts
} else {
set repositories ~/repositories
set checkouts ~/checkouts
}
set message [string trim [subst {
The package client checkout directory has an issue: %error%
Prior to running the package uploader client tool, Fossil must be
installed -AND- the Package File Server repository must be cloned
and opened, using commands very similar to the following:
mkdir [joinPath ${repositories}]
cd [joinPath ${repositories}]
fossil clone https://your_login@pkg.management/pkgd pkgd.fossil
mkdir [joinPath ${checkouts}]
cd [joinPath ${checkouts}]
fossil open [joinPath ${repositories} pkgd.fossil]
After the above steps have been completed, package uploader client
tool can be executed using a command very similar to the following:
tclsh [joinPath ${checkouts} client 1.0 neutral pkgr_upload.eagle]
}]]
if {![info exists checkoutDirectory]} then {
error [string map [list \
%error% "checkout directory is missing"] \
$message]
}
if {[string length $checkoutDirectory] == 0} then {
error [string map [list \
%error% "checkout directory is invalid"] \
$message]
}
if {![file isdir $checkoutDirectory]} then {
error [string map [list %error% [appendArgs \
"checkout directory \"" $checkoutDirectory \
"\" is not really a directory"]] $message]
}
}
#
# NOTE: This procedure attempts to verify that an implementation of Fossil
# is installed locally. There are no arguments. Script errors are
# raised if any problems are found. The return value is undefined.
|