1 |
Author: zmedico |
2 |
Date: 2008-02-10 01:53:56 +0000 (Sun, 10 Feb 2008) |
3 |
New Revision: 9322 |
4 |
|
5 |
Modified: |
6 |
main/branches/2.1.2/bin/emerge |
7 |
Log: |
8 |
Fix the exitcode logic for bug #209144 so that when the server is |
9 |
out of date it's not interpreted like an actual rsync exitcode |
10 |
(to avoid a misleading exitcode interpretation message). (trunk r9320) |
11 |
|
12 |
Bug #209144 - For emerge --sync, show an informative error and don't |
13 |
return 1 when PORTAGE_RSYNC_RETRIES is exceeded. (trunk r9321) |
14 |
|
15 |
|
16 |
Modified: main/branches/2.1.2/bin/emerge |
17 |
=================================================================== |
18 |
--- main/branches/2.1.2/bin/emerge 2008-02-10 01:50:52 UTC (rev 9321) |
19 |
+++ main/branches/2.1.2/bin/emerge 2008-02-10 01:53:56 UTC (rev 9322) |
20 |
@@ -5154,6 +5154,8 @@ |
21 |
("-6" in all_rsync_opts or "--ipv6" in all_rsync_opts): |
22 |
family = socket.AF_INET6 |
23 |
ips=[] |
24 |
+ SERVER_OUT_OF_DATE = -1 |
25 |
+ EXCEEDED_MAX_RETRIES = -2 |
26 |
while (1): |
27 |
if ips: |
28 |
del ips[0] |
29 |
@@ -5296,7 +5298,7 @@ |
30 |
print ">>> In order to force sync, remove '%s'." % servertimestampfile |
31 |
print ">>>" |
32 |
print |
33 |
- exitcode = 1 |
34 |
+ exitcode = SERVER_OUT_OF_DATE |
35 |
elif (servertimestamp == 0) or (servertimestamp > mytimestamp): |
36 |
# actual sync |
37 |
mycommand = rsynccommand + [dosyncuri+"/", myportdir] |
38 |
@@ -5322,10 +5324,17 @@ |
39 |
# over retries |
40 |
# exit loop |
41 |
updatecache_flg=False |
42 |
+ exitcode = EXCEEDED_MAX_RETRIES |
43 |
break |
44 |
|
45 |
if (exitcode==0): |
46 |
emergelog(xterm_titles, "=== Sync completed with %s" % dosyncuri) |
47 |
+ elif exitcode == SERVER_OUT_OF_DATE: |
48 |
+ sys.exit(1) |
49 |
+ elif exitcode == EXCEEDED_MAX_RETRIES: |
50 |
+ sys.stderr.write( |
51 |
+ ">>> Exceeded PORTAGE_RSYNC_RETRIES: %s\n" % maxretries) |
52 |
+ sys.exit(1) |
53 |
elif (exitcode>0): |
54 |
print |
55 |
if exitcode==1: |
56 |
|
57 |
-- |
58 |
gentoo-commits@l.g.o mailing list |