author | Andy Simpson<andrews@symbian.org> |
Mon, 29 Jun 2009 17:33:23 +0100 | |
changeset 13 | f57f08cb4e1d |
parent 12 | dda0176e838b |
child 15 | 880bb4a0a72d |
permissions | -rw-r--r-- |
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
1 |
#! perl |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
2 |
|
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
3 |
# Copyright (c) 2009 Symbian Foundation Ltd |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
4 |
# This component and the accompanying materials are made available |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
5 |
# under the terms of the License "Eclipse Public License v1.0" |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
6 |
# which accompanies this distribution, and is available |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
7 |
# at the URL "http://www.eclipse.org/legal/epl-v10.html". |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
8 |
# |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
9 |
# Initial Contributors: |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
10 |
# Symbian Foundation Ltd - initial contribution. |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
11 |
# |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
12 |
# Contributors: |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
13 |
# |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
14 |
# Description: |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
15 |
# Perl script to clone or update all of the Foundation MCL repositories |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
16 |
|
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
17 |
use strict; |
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
18 |
use Getopt::Long; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
19 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
20 |
sub Usage($) |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
21 |
{ |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
22 |
my ($msg) = @_; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
23 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
24 |
print "$msg\n\n" if ($msg ne ""); |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
25 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
26 |
print <<'EOF'; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
27 |
clone_all_repositories - simple script for cloning Symbian repository tree |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
28 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
29 |
This script will clone repositories, or pull changes into a previously |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
30 |
cloned repository. The script will prompt for your username and |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
31 |
password, which will be needed to access the SFL repositories, or you can |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
32 |
supply them with command line arguments. |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
33 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
34 |
Important: |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
35 |
This script uses https access to the repositories, so the username and |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
36 |
password will be stored as cleartext in the .hg/hgrc file for each repository. |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
37 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
38 |
Used with the "-mirror" option, the script will copy both MCL and FCL |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
39 |
repositories into the same directory layout as the Symbian website, and will |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
40 |
use the Mercurial "--noupdate" option when cloning. |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
41 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
42 |
Options: |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
43 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
44 |
-username username at the Symbian website |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
45 |
-password password to go with username |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
46 |
-mirror create a "mirror" of the Symbian repository tree |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
47 |
-retries number of times to retry a failed operation (default 1) |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
48 |
-verbose print the underlying "hg" commands before executing them |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
49 |
-n do nothing - don't actually execute the hg commands |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
50 |
-help print this help information |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
51 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
52 |
EOF |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
53 |
exit (1); |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
54 |
} |
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
55 |
|
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
56 |
my @clone_options = (); # use ("--noupdate") to clone without extracting the source |
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
57 |
my @pull_options = (); # use ("--rebase") to rebase your changes when pulling |
7
2184cc44590a
Clone from developer.symbian.org (Bug 79) and use https for SFL packages
William Roberts <williamr@symbian.org>
parents:
5
diff
changeset
|
58 |
my $hostname = "developer.symbian.org"; |
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
59 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
60 |
my $username = ""; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
61 |
my $password = ""; |
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
62 |
my $mirror = 0; # set to 1 if you want to mirror the repository structure |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
63 |
my $retries = 1; # number of times to retry problem repos |
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
64 |
my $verbose = 0; # turn on more tracing |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
65 |
my $do_nothing = 0; # print the hg commands, don't actually do them |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
66 |
my $help = 0; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
67 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
68 |
if (!GetOptions( |
12
dda0176e838b
Fix mistake in -password and -username options, tweak the (doomed) sfl repository screen scraping
William Roberts <williamr@symbian.org>
parents:
11
diff
changeset
|
69 |
"u|username=s" => \$username, |
dda0176e838b
Fix mistake in -password and -username options, tweak the (doomed) sfl repository screen scraping
William Roberts <williamr@symbian.org>
parents:
11
diff
changeset
|
70 |
"p|password=s" => \$password, |
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
71 |
"m|mirror" => \$mirror, |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
72 |
"r|retries=i" => \$retries, |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
73 |
"v|verbose" => \$verbose, |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
74 |
"n" => \$do_nothing, |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
75 |
"h|help" => \$help, |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
76 |
)) |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
77 |
{ |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
78 |
Usage("Invalid argument"); |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
79 |
} |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
80 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
81 |
Usage("Too many arguments") if ($ARGV); |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
82 |
Usage("") if ($help); |
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
83 |
|
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
84 |
# Important: This script uses http access to the repositories, so |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
85 |
# the username and password will be stored as cleartext in the |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
86 |
# .hg/hgrc file in each repository. |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
87 |
|
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
88 |
if ($username eq "" ) |
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
89 |
{ |
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
90 |
print "Username: "; |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
91 |
$username = <STDIN>; |
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
92 |
chomp $username; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
93 |
} |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
94 |
if ($password eq "" ) |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
95 |
{ |
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
96 |
print "Password: "; |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
97 |
$password = <STDIN>; |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
98 |
chomp $password; |
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
99 |
} |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
100 |
|
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
101 |
my @sf_packages = ( |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
102 |
"sfl/MCL/sf/adaptation/stubs", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
103 |
"sfl/MCL/sf/app/camera", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
104 |
"sfl/MCL/sf/app/commonemail", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
105 |
"sfl/MCL/sf/app/conntools", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
106 |
"sfl/MCL/sf/app/contacts", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
107 |
"sfl/MCL/sf/app/contentcontrol", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
108 |
"sfl/MCL/sf/app/conversations", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
109 |
"sfl/MCL/sf/app/devicecontrol", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
110 |
"sfl/MCL/sf/app/dictionary", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
111 |
"sfl/MCL/sf/app/files", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
112 |
"sfl/MCL/sf/app/gallery", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
113 |
"sfl/MCL/sf/app/graphicsuis", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
114 |
"sfl/MCL/sf/app/helps", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
115 |
"sfl/MCL/sf/app/homescreen", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
116 |
"sfl/MCL/sf/app/im", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
117 |
"sfl/MCL/sf/app/imgeditor", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
118 |
"sfl/MCL/sf/app/imgvieweruis", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
119 |
"sfl/MCL/sf/app/iptelephony", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
120 |
"sfl/MCL/sf/app/java", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
121 |
"sfl/MCL/sf/app/location", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
122 |
"sfl/MCL/sf/app/messaging", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
123 |
"sfl/MCL/sf/app/mmsharinguis", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
124 |
"sfl/MCL/sf/app/musicplayer", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
125 |
"sfl/MCL/sf/app/organizer", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
126 |
"sfl/MCL/sf/app/phone", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
127 |
"sfl/MCL/sf/app/photos", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
128 |
"sfl/MCL/sf/app/poc", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
129 |
"sfl/MCL/sf/app/printing", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
130 |
"sfl/MCL/sf/app/profile", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
131 |
"sfl/MCL/sf/app/radio", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
132 |
"sfl/MCL/sf/app/screensaver", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
133 |
"sfl/MCL/sf/app/settingsuis", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
134 |
"sfl/MCL/sf/app/speechsrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
135 |
"sfl/MCL/sf/app/techview", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
136 |
# "sfl/MCL/sf/app/test", - removed in 7 May 09 delivery |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
137 |
"sfl/MCL/sf/app/utils", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
138 |
"sfl/MCL/sf/app/videocenter", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
139 |
"sfl/MCL/sf/app/videoeditor", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
140 |
"sfl/MCL/sf/app/videoplayer", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
141 |
"sfl/MCL/sf/app/videotelephony", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
142 |
"sfl/MCL/sf/app/voicerec", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
143 |
"oss/MCL/sf/app/webuis", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
144 |
"sfl/MCL/sf/mw/accesssec", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
145 |
"sfl/MCL/sf/mw/appinstall", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
146 |
"sfl/MCL/sf/mw/appsupport", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
147 |
"sfl/MCL/sf/mw/camerasrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
148 |
"sfl/MCL/sf/mw/classicui", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
149 |
"sfl/MCL/sf/mw/dlnasrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
150 |
"sfl/MCL/sf/mw/drm", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
151 |
"sfl/MCL/sf/mw/hapticsservices", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
152 |
"sfl/MCL/sf/mw/homescreensrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
153 |
"sfl/MCL/sf/mw/imghandling", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
154 |
"sfl/MCL/sf/mw/imsrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
155 |
"sfl/MCL/sf/mw/inputmethods", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
156 |
"sfl/MCL/sf/mw/ipappprotocols", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
157 |
"sfl/MCL/sf/mw/ipappsrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
158 |
"sfl/MCL/sf/mw/ipconnmgmt", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
159 |
"sfl/MCL/sf/mw/legacypresence", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
160 |
"sfl/MCL/sf/mw/locationsrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
161 |
"sfl/MCL/sf/mw/mds", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
162 |
"sfl/MCL/sf/mw/messagingmw", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
163 |
"sfl/MCL/sf/mw/metadatasrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
164 |
"sfl/MCL/sf/mw/mmappfw", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
165 |
"sfl/MCL/sf/mw/mmmw", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
166 |
"sfl/MCL/sf/mw/mmuifw", |
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
167 |
# "sfl/MCL/sf/mw/mobiletv", - empty package abandoned |
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
168 |
"sfl/MCL/sf/mw/netprotocols", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
169 |
"sfl/MCL/sf/mw/networkingdm", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
170 |
"sfl/MCL/sf/mw/opensrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
171 |
"sfl/MCL/sf/mw/phonesrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
172 |
"sfl/MCL/sf/mw/remoteconn", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
173 |
"sfl/MCL/sf/mw/remotemgmt", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
174 |
"sfl/MCL/sf/mw/remotestorage", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
175 |
"sfl/MCL/sf/mw/securitysrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
176 |
"oss/MCL/sf/mw/serviceapi", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
177 |
"oss/MCL/sf/mw/serviceapifw", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
178 |
"sfl/MCL/sf/mw/shortlinkconn", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
179 |
"sfl/MCL/sf/mw/svgt", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
180 |
"sfl/MCL/sf/mw/uiaccelerator", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
181 |
"sfl/MCL/sf/mw/uiresources", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
182 |
"sfl/MCL/sf/mw/uitools", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
183 |
"sfl/MCL/sf/mw/videoutils", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
184 |
"sfl/MCL/sf/mw/vpnclient", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
185 |
"oss/MCL/sf/mw/web", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
186 |
"sfl/MCL/sf/mw/websrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
187 |
"sfl/MCL/sf/mw/wirelessacc", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
188 |
"sfl/MCL/sf/os/boardsupport", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
189 |
"sfl/MCL/sf/os/buildtools", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
190 |
"sfl/MCL/sf/os/cellularsrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
191 |
"sfl/MCL/sf/os/commsfw", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
192 |
"sfl/MCL/sf/os/deviceplatformrelease", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
193 |
"sfl/MCL/sf/os/devicesrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
194 |
"sfl/MCL/sf/os/graphics", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
195 |
"sfl/MCL/sf/os/imagingext", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
196 |
"sfl/MCL/sf/os/kernelhwsrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
197 |
"sfl/MCL/sf/os/lbs", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
198 |
# "sfl/MCL/sf/os/misc", - removed in 7 May 09 delivery |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
199 |
"sfl/MCL/sf/os/mm", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
200 |
"sfl/MCL/sf/os/networkingsrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
201 |
"sfl/MCL/sf/os/ossrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
202 |
"sfl/MCL/sf/os/persistentdata", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
203 |
"sfl/MCL/sf/os/security", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
204 |
"sfl/MCL/sf/os/shortlinksrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
205 |
"sfl/MCL/sf/os/textandloc", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
206 |
"sfl/MCL/sf/os/unref", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
207 |
"sfl/MCL/sf/os/wlan", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
208 |
"sfl/MCL/sf/os/xmlsrv", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
209 |
"sfl/MCL/sf/ostools/osrndtools", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
210 |
"sfl/MCL/sf/tools/build_s60", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
211 |
"sfl/MCL/sf/tools/buildplatforms", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
212 |
"sfl/MCL/sf/tools/homescreentools", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
213 |
"sfl/MCL/sf/tools/makefile_templates", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
214 |
"sfl/MCL/sf/tools/platformtools", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
215 |
"sfl/MCL/sf/tools/rndtools", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
216 |
"sfl/MCL/sf/tools/swconfigtools", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
217 |
); |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
218 |
|
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
219 |
my @sftools_packages = ( |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
220 |
"sfl/MCL/sftools/ana/compatanaapps", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
221 |
"sfl/MCL/sftools/ana/compatanamdw", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
222 |
"sfl/MCL/sftools/ana/dynaanaapps", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
223 |
"sfl/MCL/sftools/ana/dynaanactrlandcptr", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
224 |
"sfl/MCL/sftools/ana/dynaanamdw/analysistools", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
225 |
"sfl/MCL/sftools/ana/dynaanamdw/crashmdw", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
226 |
"sfl/MCL/sftools/ana/staticanaapps", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
227 |
"sfl/MCL/sftools/ana/staticanamdw", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
228 |
"sfl/MCL/sftools/ana/testcreationandmgmt", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
229 |
"sfl/MCL/sftools/ana/testexec", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
230 |
"sfl/MCL/sftools/ana/testfw", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
231 |
# "sfl/MCL/sftools/depl/sdkcreationapps", - removed in 7 May 09 delivery |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
232 |
"sfl/MCL/sftools/depl/sdkcreationmdw/packaging", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
233 |
# "sfl/MCL/sftools/depl/sdkcreationmdw/sdkbuild", - removed in 7 May 09 delivery |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
234 |
# "sfl/MCL/sftools/depl/sdkcreationmdw/sdkdelivery", - removed in 7 May 09 delivery |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
235 |
# "sfl/MCL/sftools/depl/sdkcreationmdw/sdktest", - removed in 7 May 09 delivery |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
236 |
"sfl/MCL/sftools/depl/swconfigapps/configtools", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
237 |
"sfl/MCL/sftools/depl/swconfigapps/swmgnttoolsguides", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
238 |
"sfl/MCL/sftools/depl/swconfigapps/sysmodeltools", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
239 |
"sfl/MCL/sftools/depl/swconfigmdw", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
240 |
# "sfl/MCL/sftools/depl/sysdocapps", - removed in 7 May 09 delivery |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
241 |
# "sfl/MCL/sftools/depl/sysdocmdw", - removed in 7 May 09 delivery |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
242 |
# "sfl/MCL/sftools/depl/toolsplatrelease", - removed in 7 May 09 delivery |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
243 |
"sfl/MCL/sftools/dev/build", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
244 |
"sfl/MCL/sftools/dev/dbgsrvsmdw", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
245 |
"sfl/MCL/sftools/dev/devicedbgsrvs", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
246 |
"oss/MCL/sftools/dev/eclipseenv/buildlayout34", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
247 |
"oss/MCL/sftools/dev/eclipseenv/eclipse", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
248 |
"oss/MCL/sftools/dev/hostenv/compilationtoolchains", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
249 |
"oss/MCL/sftools/dev/hostenv/cpptoolsplat", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
250 |
"oss/MCL/sftools/dev/hostenv/dist", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
251 |
"oss/MCL/sftools/dev/hostenv/javatoolsplat", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
252 |
"oss/MCL/sftools/dev/hostenv/makeng", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
253 |
"oss/MCL/sftools/dev/hostenv/pythontoolsplat", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
254 |
"oss/MCL/sftools/dev/ide/carbidecpp", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
255 |
"sfl/MCL/sftools/dev/ide/carbidecppplugins", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
256 |
"sfl/MCL/sftools/dev/iss", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
257 |
"sfl/MCL/sftools/dev/ui", |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
258 |
); |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
259 |
|
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
260 |
my @other_repos = ( |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
261 |
# Foundation build framework |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
262 |
"oss/FCL/interim/fbf/bootstrap", |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
263 |
"oss/FCL/interim/fbf/configs/default", |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
264 |
"oss/FCL/interim/fbf/configs/pkgbuild", |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
265 |
"oss/FCL/interim/fbf/projects/packages/serviceapi", |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
266 |
"oss/FCL/interim/fbf/projects/packages/serviceapifw", |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
267 |
"oss/FCL/interim/fbf/projects/packages/web", |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
268 |
"oss/FCL/interim/fbf/projects/packages/webuis", |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
269 |
"oss/FCL/interim/fbf/projects/platforms", |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
270 |
# Utilities |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
271 |
"oss/MCL/utilities", |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
272 |
); |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
273 |
|
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
274 |
sub do_system(@) |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
275 |
{ |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
276 |
my (@cmd) = @_; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
277 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
278 |
if ($verbose) |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
279 |
{ |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
280 |
print "* ", join(" ", @cmd), "\n"; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
281 |
} |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
282 |
return 0 if ($do_nothing); |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
283 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
284 |
return system(@cmd); |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
285 |
} |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
286 |
|
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
287 |
sub get_repo($) |
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
288 |
{ |
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
289 |
my ($package) = @_; |
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
290 |
my @dirs = split /\//, $package; |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
291 |
my $license = shift @dirs; |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
292 |
my $repotree = shift @dirs; # remove the MCL or FCL repo tree information |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
293 |
my $destdir = pop @dirs; # ignore the package name, because Mercurial will create that |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
294 |
|
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
295 |
if ($mirror) |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
296 |
{ |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
297 |
# Mirror the full directory structure, so put back the license & repotree dirs |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
298 |
unshift @dirs, $repotree; |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
299 |
unshift @dirs, $license; |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
300 |
} |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
301 |
|
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
302 |
# Ensure the directories already exist as far as the parent of the repository |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
303 |
my $path = ""; |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
304 |
foreach my $dir (@dirs) |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
305 |
{ |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
306 |
$path = ($path eq "") ? $dir : "$path/$dir"; |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
307 |
if (!-d $path) |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
308 |
{ |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
309 |
mkdir $path; |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
310 |
} |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
311 |
} |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
312 |
|
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
313 |
$path .= "/$destdir"; # this is where the repository will go |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
314 |
|
7
2184cc44590a
Clone from developer.symbian.org (Bug 79) and use https for SFL packages
William Roberts <williamr@symbian.org>
parents:
5
diff
changeset
|
315 |
my $repo_url = "https://$username:$password\@$hostname/$package/"; |
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
316 |
if ($license ne "sfl") |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
317 |
{ |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
318 |
# user registration is not required for reading public package repositories |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
319 |
$repo_url = "http://developer.symbian.org/$package/"; |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
320 |
} |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
321 |
|
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
322 |
if (-d "$path/.hg") |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
323 |
{ |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
324 |
# The repository already exists, so just do an update |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
325 |
|
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
326 |
print "Updating $destdir from $package...\n"; |
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
327 |
return do_system("hg", "pull", @pull_options, "-R", $path, $repo_url); |
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
328 |
} |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
329 |
else |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
330 |
{ |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
331 |
# Clone the repository |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
332 |
|
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
333 |
print "Cloning $destdir from $package...\n"; |
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
334 |
return do_system("hg", "clone", @clone_options, $repo_url, $path); |
5
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
335 |
} |
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
336 |
|
c34a018f3291
Re-introduce the clone_all_packages.pl script
William Roberts <williamr@symbian.org>
parents:
diff
changeset
|
337 |
} |
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
338 |
|
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
339 |
my @all_packages; |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
340 |
|
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
341 |
@all_packages = (@sf_packages, @sftools_packages, @other_repos); |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
342 |
|
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
343 |
if ($mirror) |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
344 |
{ |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
345 |
push @clone_options, "--noupdate"; |
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
346 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
347 |
if (0) |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
348 |
{ |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
349 |
# Prototype code to scrape the repository list from the website |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
350 |
# Needs to have extra modules and executables installed to support https |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
351 |
# so this would only work for the oss packages at present... |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
352 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
353 |
# Create a user agent object |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
354 |
use LWP::UserAgent; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
355 |
use HTTP::Request::Common; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
356 |
my $ua = LWP::UserAgent->new; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
357 |
$ua->agent("clone_all_packages.pl "); |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
358 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
359 |
# Request the oss package list |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
360 |
my $res = $ua->request(GET "http://$hostname/oss"); |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
361 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
362 |
# Check the outcome of the response |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
363 |
if (! $res->is_success) |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
364 |
{ |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
365 |
print "Failed to read oss package list:\n\t", $res->status_line, "\n"; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
366 |
} |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
367 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
368 |
my @oss_packages = ($res->content =~ m/<td><a href="\/(oss\/[^"]+)\/?">/g); # umatched " |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
369 |
print join ("\n\t",@oss_packages), "\n"; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
370 |
|
12
dda0176e838b
Fix mistake in -password and -username options, tweak the (doomed) sfl repository screen scraping
William Roberts <williamr@symbian.org>
parents:
11
diff
changeset
|
371 |
# Request the sfl package list |
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
372 |
$res = $ua->request(GET "https://$username:$password\@$hostname/sfl"); |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
373 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
374 |
# Check the outcome of the response |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
375 |
if (! $res->is_success) |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
376 |
{ |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
377 |
print "Failed to read sfl package list:\n\t", $res->status_line, "\n"; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
378 |
} |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
379 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
380 |
my @sfl_packages = ($res->content =~ m/<td><a href="\/(sfl\/[^"]+)\/?">/g); # umatched " |
12
dda0176e838b
Fix mistake in -password and -username options, tweak the (doomed) sfl repository screen scraping
William Roberts <williamr@symbian.org>
parents:
11
diff
changeset
|
381 |
print join ("\n\t",@sfl_packages), "\n"; |
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
382 |
|
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
383 |
@all_packages = (@sfl_packages, @oss_packages); |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
384 |
} |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
385 |
else |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
386 |
{ |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
387 |
# Assume that every MCL has a matching FCL |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
388 |
my @list_with_fcls = (); |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
389 |
foreach my $package (@all_packages) |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
390 |
{ |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
391 |
push @list_with_fcls, $package; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
392 |
if ($package =~ /MCL/) |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
393 |
{ |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
394 |
# If mirroring, get the matching FCLs as well as MCLs |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
395 |
$package =~ s/MCL/FCL/; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
396 |
push @list_with_fcls, $package; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
397 |
} |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
398 |
} |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
399 |
@all_packages = @list_with_fcls; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
400 |
} |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
401 |
|
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
402 |
} |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
403 |
|
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
404 |
my @problem_packages = (); |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
405 |
my $total_packages = 0; |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
406 |
|
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
407 |
foreach my $package (@all_packages) |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
408 |
{ |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
409 |
my $err = get_repo($package); |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
410 |
$total_packages++; |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
411 |
push @problem_packages, $package if ($err); |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
412 |
} |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
413 |
|
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
414 |
# retry problem packages |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
415 |
|
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
416 |
my $attempt = 0; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
417 |
while ($attempt < $retries && scalar @problem_packages) |
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
418 |
{ |
11
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
419 |
$attempt++; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
420 |
printf "\n\n------------\nRetry attempt %d on %d packages\n", |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
421 |
$attempt, scalar @problem_packages; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
422 |
print join("\n", @problem_packages, ""), "\n"; |
319764718a57
Add proper usage and more options (Bug 80). Add prototype screen-scraping to read repository list.
William Roberts <williamr@symbian.org>
parents:
10
diff
changeset
|
423 |
|
10
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
424 |
my @list = @problem_packages; |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
425 |
@problem_packages = (); |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
426 |
foreach my $package (@list) |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
427 |
{ |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
428 |
my $err = get_repo($package); |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
429 |
push @problem_packages, $package if ($err); |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
430 |
} |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
431 |
} |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
432 |
|
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
433 |
printf "\n------------\nProcessed %d packages, of which %d reported errors\n", |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
434 |
$total_packages, scalar @problem_packages; |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
435 |
if (scalar @problem_packages) |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
436 |
{ |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
437 |
print join("\n", @problem_packages, ""); |
ccca32510405
Prompt for username and password (Bug 80), support retries and repo mirroring
William Roberts <williamr@symbian.org>
parents:
7
diff
changeset
|
438 |
} |