Overview
Comment: | Add support for custom (private?) backend package file servers using overridden URNs for login, download, and logout. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
fc7477ac04afda01c123f01e516fc350 |
User & Date: | mistachkin on 2016-10-18 19:49:08 |
Other Links: | manifest | tags |
Context
2016-10-18
| ||
23:58 | Breaking change to the public 'downloadFiles' package downloader procedure: use a single options dictionary instead of boolean arguments. Add the '-allowUpdate' option. check-in: 8406634ad4 user: mistachkin tags: trunk | |
19:49 | Add support for custom (private?) backend package file servers using overridden URNs for login, download, and logout. check-in: fc7477ac04 user: mistachkin tags: trunk | |
07:29 | Prevent stray diagnostic messages. check-in: 34f44d121a user: mistachkin tags: trunk | |
Changes
Modified client/1.0/pkgd.eagle from [5880778674] to [809fd86192].
︙ | ︙ | |||
16 17 18 19 20 21 22 23 24 | # # NOTE: Use our own namespace here because even though we do not directly # support namespaces ourselves, we do not want to pollute the global # namespace if this script actually ends up being evaluated in Tcl. # namespace eval ::PackageDownloader { # # NOTE: This procedure sets up the default values for all configuration | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | | > | 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | # # NOTE: Use our own namespace here because even though we do not directly # support namespaces ourselves, we do not want to pollute the global # namespace if this script actually ends up being evaluated in Tcl. # namespace eval ::PackageDownloader { # # NOTE: This procedure sets up the default values for all URN configuration # parameters used by the package downloader client. If the force # argument is non-zero, any existing values will be overwritten and # set back to their default values. # proc setupDownloadUrnVars { force } { # # NOTE: The URN, relative to the base URI, where a login request may # be sent. # variable loginUrn; # DEFAULT: pkgd_login if {$force || ![info exists loginUrn]} then { set loginUrn pkgd_login } # # NOTE: The URN, relative to the base URI, where a single package file # may be found. # variable downloadUrn; # DEFAULT: pkgd_file if {$force || ![info exists downloadUrn]} then { set downloadUrn pkgd_file } # # NOTE: The URN, relative to the base URI, where a logout request may # be sent. # variable logoutUrn; # DEFAULT: pkgd_logout if {$force || ![info exists logoutUrn]} then { set logoutUrn pkgd_logout } } # # NOTE: This procedure sets up the default values for all URI configuration # parameters used by the package downloader client. If the force # argument is non-zero, any existing values will be overwritten and # set back to their default values. # proc setupDownloadUriVars { force } { # # NOTE: The base URI used to build the URIs for the package file server. # variable baseUri; # DEFAULT: https://urn.to/r if {$force || ![info exists baseUri]} then { set baseUri https://urn.to/r } # # NOTE: The URI where a login request may be sent. This should return a # payload containing the necessary HTTP(S) cookie information. # variable loginUri; # DEFAULT: ${baseUri}/${loginUrn}?... if {$force || ![info exists loginUri]} then { set loginUri [appendArgs \ {${baseUri}/${loginUrn}?} {[uriEscape name $userName]} & \ {[uriEscape password $password]}] } # # NOTE: The URI where a single package file may be found. This file will # belong to a specific version of one package. # variable downloadUri; # DEFAULT: ${baseUri}/${downloadUrn}?... if {$force || ![info exists downloadUri]} then { set downloadUri [appendArgs \ {${baseUri}/${downloadUrn}?download&ci=trunk&} \ {[uriEscape filename $fileName]}] } # # NOTE: The URI where a logout request should be sent. This should # return a payload indicating that the logout was successful. # variable logoutUri; # DEFAULT: ${baseUri}/${logoutUrn}?... if {$force || ![info exists logoutUri]} then { set logoutUri [appendArgs \ {${baseUri}/${logoutUrn}?} {[uriEscape authToken $authToken]}] } } # # NOTE: This procedure sets up the default values for all configuration # parameters used by the package downloader client. The script # argument is the fully qualified path and file name for the script # being evaluated. # proc setupDownloadVars { script } { # # NOTE: What is the fully qualified path to the directory containing the # package downloader client? # variable clientDirectory |
︙ | ︙ | |||
52 53 54 55 56 57 58 | # variable quiet; # DEFAULT: true if {![info exists quiet]} then { set quiet true } | < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < | 143 144 145 146 147 148 149 150 151 152 153 154 155 156 | # variable quiet; # DEFAULT: true if {![info exists quiet]} then { set quiet true } # # NOTE: The user name for the public account on the package file server. # If this is an empty string, there is no public account. # variable publicUserName; # DEFAULT: public if {![info exists publicUserName]} then { |
︙ | ︙ | |||
149 150 151 152 153 154 155 156 157 158 159 160 161 162 | # variable viaInstall; # DEFAULT: false if {![info exists viaInstall]} then { set viaInstall false } } # # NOTE: This procedure escapes a single name/value pair for use in a URI # query string. The name argument is the name of the parameter. # The value argument is the value of the parameter. # proc uriEscape { name value } { | > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 | # variable viaInstall; # DEFAULT: false if {![info exists viaInstall]} then { set viaInstall false } } # # NOTE: This procedure modifies the URN variables used by the package # downloader client so that one or more alternative (private?) # backend file servers may be used. The serverId argument must # consist only of alphanumeric characters and it must begin with # a letter. # # <public> proc useServerId { {serverId ""} } { variable downloadUrn variable loginUrn variable logoutUrn if {[string length $serverId] > 0 && \ ![regexp -nocase -- {^[A-Z][0-9A-Z]*$} $serverId]} then { error "server Id must be alphanumeric and start with a letter" } if {[string length $serverId] > 0} then { # # NOTE: Set the URN variables to values that should cause the # specified server Id to be used (assume the server Id # itself is valid and active). # set loginUrn [appendArgs pkgd_login_ $serverId] set downloadUrn [appendArgs pkgd_file_ $serverId] set logoutUrn [appendArgs pkgd_logout_ $serverId] } else { # # NOTE: Forcibly reset URN variables to their default values. # setupDownloadUrnVars true } } # # NOTE: This procedure escapes a single name/value pair for use in a URI # query string. The name argument is the name of the parameter. # The value argument is the value of the parameter. # proc uriEscape { name value } { |
︙ | ︙ | |||
652 653 654 655 656 657 658 659 660 661 662 663 664 665 | # password that is associated with the specified user name. # # <public> proc resetCookieAndLogin { userName password } { variable baseUri variable loginCookie variable loginUri # # NOTE: Build the full URI for the login request. # set uri [subst $loginUri] # | > | 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 | # password that is associated with the specified user name. # # <public> proc resetCookieAndLogin { userName password } { variable baseUri variable loginCookie variable loginUri variable loginUrn # # NOTE: Build the full URI for the login request. # set uri [subst $loginUri] # |
︙ | ︙ | |||
702 703 704 705 706 707 708 709 710 711 712 713 714 715 | # are no arguments. This procedure may raise a script error. # # <public> proc logoutAndResetCookie {} { variable baseUri variable loginCookie variable logoutUri # # NOTE: Attempt to verify that we are currently logged in. # if {![info exists loginCookie] || [llength $loginCookie] != 2} then { error "missing or invalid login cookie" } | > | 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 | # are no arguments. This procedure may raise a script error. # # <public> proc logoutAndResetCookie {} { variable baseUri variable loginCookie variable logoutUri variable logoutUrn # # NOTE: Attempt to verify that we are currently logged in. # if {![info exists loginCookie] || [llength $loginCookie] != 2} then { error "missing or invalid login cookie" } |
︙ | ︙ | |||
820 821 822 823 824 825 826 827 828 829 830 831 832 833 | # where the downloaded file should be written. The usePgp argument # should be non-zero when an OpenPGP signature file needs to be # downloaded and verified for the downloaded file. # proc downloadOneFile { language version fileName localFileName usePgp } { variable baseUri variable downloadUri # # NOTE: First, build the full relative file name to download from # the remote package repository. # set fileName [file join $language $version $fileName] set uri [subst $downloadUri] | > | 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 | # where the downloaded file should be written. The usePgp argument # should be non-zero when an OpenPGP signature file needs to be # downloaded and verified for the downloaded file. # proc downloadOneFile { language version fileName localFileName usePgp } { variable baseUri variable downloadUri variable downloadUrn # # NOTE: First, build the full relative file name to download from # the remote package repository. # set fileName [file join $language $version $fileName] set uri [subst $downloadUri] |
︙ | ︙ | |||
1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 | ::PackageRepository::maybeReadSettingsFile [info script] # # NOTE: Setup the variables, within this namespace, used by this script. # setupDownloadVars [info script] # # NOTE: If necessary, add the package persistence root directory to the # auto-path for the current language. This will only be done if # it falls outside of the existing auto-path. # variable persistentRootDirectory | > > > > > > | 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 | ::PackageRepository::maybeReadSettingsFile [info script] # # NOTE: Setup the variables, within this namespace, used by this script. # setupDownloadVars [info script] # # NOTE: Setup the URI and URN variables, within this namespace, used by # this script. # setupDownloadUriVars false; setupDownloadUrnVars false # # NOTE: If necessary, add the package persistence root directory to the # auto-path for the current language. This will only be done if # it falls outside of the existing auto-path. # variable persistentRootDirectory |
︙ | ︙ |
Modified client/1.0/pkgd.eagle.asc from [a13a74f362] to [3a11f23a23].
1 2 3 4 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository iQIcBAABCAAGBQJYBnwfAAoJEFAslq9JXcLZnZgP/2Fj/Nk8TFnBGYuFBi61PEb8 8PDfeQwsKVyhdYpQ3I3b1v3x2XNFY5vVKELwnU+j4YdJJeV9iIcMoP0FuV2HukA7 5AU+Wa/gFbAdsqEjJDUe7Z2wtXwX/mssy4Hiql6z+el0iv4pC40kJ3SxvtbtrH9C o1SdBNSdxxkprfgfYKS3jnk6yZ0qrpbAZzTBLa/Y5Es9Va3kcJBXNaCCLWze2KxK pUbiwlrbuoI+m8FIg0aVT11gtO7cMQMaNtHj8kKLXiUfrHn83nLtA8NQcXaVDPs9 3Jq2IrBX+FV2EImRn7Cw3mvhTqDSatxuwRm9twFnb1+oXhAV0oDWWZylPAL+J9FM BOCR8ApeWQ2i06QZDef7DCj7lZpcDY3738PRSS8hik2PE43/epadAN5s3rz7gBAj N+kkjnrx26U6a93fZZMrX+sxQje/sEhfGw5EMHMwM/5Nql7fMs99J2Pb2UzKLqHn H4HqmOXkfWh6VJ1wOlWU3kPJc83yiyLtKjuBx9+QnvXT/I1ENs8390py2V9BSSFV tOmS8e14UBr/xciO6LYfTsIwgpOC8ajgbOLLByF7KIvKzX5FXByhgyfeQRywJKa5 DwV/k2svs4rlgc/P+VEA84ZGeMNLA400pBnw5gcDI4yKdqi4krSNjiU+QF6Hte6B W4X4aozI+mRbcrb7jmxy =BeBX -----END PGP SIGNATURE----- |
Modified client/1.0/pkgd.eagle.harpy from [878b855663] to [cd46d9146c].
︙ | ︙ | |||
17 18 19 20 21 22 23 | THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED. --> <Certificate xmlns="https://eagle.to/2011/harpy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Protocol>None</Protocol> <Vendor>Mistachkin Systems</Vendor> | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED. --> <Certificate xmlns="https://eagle.to/2011/harpy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Protocol>None</Protocol> <Vendor>Mistachkin Systems</Vendor> <Id>41bb98f8-a037-4533-9f6c-6d8d647b97a5</Id> <HashAlgorithm>SHA512</HashAlgorithm> <EntityType>Script</EntityType> <TimeStamp>2016-10-18T19:46:18.4688750Z</TimeStamp> <Duration>-1.00:00:00</Duration> <Key>0x9559f6017247e3e2</Key> <Signature> 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 </Signature> </Certificate> |
Modified client/1.0/pkgd.eagle.harpy.asc from [7c677e3909] to [2090134fd5].
1 2 3 4 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository iQIcBAABCAAGBQJYBnwgAAoJEFAslq9JXcLZFt4P/RJXskGeOawNGD8r37FVCsqr BJlRKzmeH6pG6TNMcC0IIJSo4GQ0lbX+cCGXhvdM3M84+TYgnJ8jszkKWTFRamoB sZOke1p5CN1pb8OEgWvuVNxlZPYk25P3MccBAAxkDThi/2CDpu9Sq4LqTAwwqy09 FMtvS0SZUnJ63bz1gp0f6HAuI5JZMjJSWvKh1U/hRwY4DJn8NP2gCX9QM/gMH+5x Mr66BejiYbSLq46nZERaowJM3zh19wdliZmai8tNnZ4lBhzA3q4qg2O1V59gA/4K sn/honjfHF/ql6rITSMhHFglNyxur0VvVEeMcBw4AlxTbMV1auJw7IM2JzGjeca9 s+w9DAYZDbpgQ05OVqXWZBGuOGDqNhZJMxm1KT20xTZHz/Gxh2qnpZnXu0n8xfok Xgl3FskWgEeqakIXu6Ms5ud/mdJ6jHTaHF+AXrVdfGmflLKFhR3xwGM0sKpEJR5a aG+WXOlTJ6SI6x2JL6COZnjHh4/0YulPoIjcZwbN6nQxjbiFQeMWPC0wHkvLWeJd SWG1NYyJkLBz1fM7Fuq8jQ/lodUk3rFh4m+OBFN2VtdwVmmqhFaUUTneu4juQ7ml 4gEt4QPVh1m3OoLxCYmg30ut79SyaY4tErHQcCJMl8tRpSkeft8qOKfVQe3SqzGD 4KMJD+5Z4rwqbprTtcJk =WoGT -----END PGP SIGNATURE----- |
Modified client/1.0/pkgr.eagle from [de1c724aac] to [eebf0a8831].
︙ | ︙ | |||
132 133 134 135 136 137 138 | 2 {set codeString return} 3 {set codeString break} 4 {set codeString continue} default {set codeString [appendArgs unknown( $code )]} } if {[string length $result] > 0} then { | | > | 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 | 2 {set codeString return} 3 {set codeString break} 4 {set codeString continue} default {set codeString [appendArgs unknown( $code )]} } if {[string length $result] > 0} then { return [appendArgs \ "code " $codeString ", result " [list $result]] } else { return $codeString } } # # NOTE: This procedure emits a message to the package repository client |
︙ | ︙ |
Modified client/1.0/pkgr.eagle.asc from [7ea0d74eb6] to [73ba974b1c].
1 2 3 4 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository iQIcBAABCAAGBQJYBnw+AAoJEFAslq9JXcLZM1oQAK+4pYNqcVQKqMkaajj5Ag59 ME217Vyrxdq9KcvWaMA8UHG+pw1SilKdY9xX14yYEhTNO8Zx/I8xPMLGfXUFDYas 4OKnX/zQtR1KmuFGVjSCkU8WCnXUbg+q6xgZM1oBHXe44iRhDi7w1n991JUs9GlD /Mmfi1QQim2HoK4n4N0fsz0c7bEQsHfJscQH5+66wmowu0fEqbOGqUcSmf4yUstY 8rQjYzyrTNrEOgo4kCTCeO9f2bxZlBFMOUIDlf077uTqR9pX0vtS8mWH8VVfPa6N aPjJlskeTMKQTg4B24STcLzqsDDKeKCWs6cbycVVtuhOMkRaw4MBfTPQrXvWyrNK rYbPw3LWQx2zdfjh1q9wm+8hWnJe2eq1QchlEPYCwP2+bil41Um4ox/zn8aXRSra wBL3tpTJD7P4a2jpfjyWK2PoTJG79JRx48DHc0E51UMFaVbHv1yCimr4b6MhxC1r 8kgtYvQhDybvX+9ss9lzp8wMUfTY2X0aAZeawE25oDxM3SbDjzjHtDWVPCnSOxeA HrPf8NGtF80WkNcRsJk9448hsK254P8s7R9B6IC2seryW6YNCih99xL1N4dtZDKD R/P3tCAPSKWVnlX7Ogd8fr6BU95KI5YLwlvYpPINQw3I4aUnTypVmwJh2Fh0C+6k jWWjKGs+AQZjtOx7EEr1 =Z7kg -----END PGP SIGNATURE----- |
Modified client/1.0/pkgr.eagle.harpy from [3a0cdd12a1] to [6fa1a92953].
︙ | ︙ | |||
17 18 19 20 21 22 23 | THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED. --> <Certificate xmlns="https://eagle.to/2011/harpy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Protocol>None</Protocol> <Vendor>Mistachkin Systems</Vendor> | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | THE ASSOCIATED SOFTWARE MAY NOT WORK PROPERLY IF THIS FILE IS ALTERED. --> <Certificate xmlns="https://eagle.to/2011/harpy" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Protocol>None</Protocol> <Vendor>Mistachkin Systems</Vendor> <Id>ea38750b-6e4e-42d8-9f4c-278c3acc81a4</Id> <HashAlgorithm>SHA512</HashAlgorithm> <EntityType>Script</EntityType> <TimeStamp>2016-10-18T19:46:50.5714141Z</TimeStamp> <Duration>-1.00:00:00</Duration> <Key>0x9559f6017247e3e2</Key> <Signature> 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 </Signature> </Certificate> |
Modified client/1.0/pkgr.eagle.harpy.asc from [b17d7350d7] to [ffea03a64c].
1 2 3 4 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository | | | | | | | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 Comment: Eagle Package Repository iQIcBAABCAAGBQJYBnxAAAoJEFAslq9JXcLZUb0QAMIOz2xudJDuYG6PBqgZB3tm T+MdzKQmu6aKXd5M7f84o+mCb7BDSkpBsPaZ0OwL52aVceXNAC8XPgnaD08lPEhG 8Pv1Vf7pjomFydjMSxmyyQLHKG5PklPOtAxAXImivQO4qOTEiwFUYbdP3U78HIR8 6hRE+qr/wXz1xD2VvwTBiok0bEdiyF6C3s307lJ7EXBtGDbYSYS5GkhMSfr3Ou2M W0ko6+WrUK+mhnF0KZNC+JFOa0SB3TM5xs03h0SRR9jSu/5PxlhfQ+ysTFcHgqxl eL64fD2AolfIzauWD5dyKQXniH/TW8fyWoAmul2os6ab9GqesLTkU0l4hqvmhJQC W2loUoKfVB8v3GUI0M5AxlwU+8Vi9uFr7HW2PpzrDQznSfm6o0WNxWGE6qE/z9QA R9nYgBxL+yOP8oWDhvKKtyEo2qr50VCAOL6C7whdJPEY09IyJNGCBrfsbuwWlyOF cbM5pBCzaCFaeGh45MjWB6gbHBpPfxTskK0Vdm0bBtLUSxFPOvjqGWMUYg/OXGC7 3IwEDnYp0bKnxlc+YLa/08usw7pHFx3EHRciuZk8jE232YjDJUCHB7i1C91MPj78 SxTHOaAf6MKohbVdKKcfOPMnLRdXJRu+sdW+UizXK4DViVyWFijFhDTPEOp7K5Ep 79JVIWb5MaNW4fBiTIaI =m8VF -----END PGP SIGNATURE----- |