Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Side by Side Diff: testing_support/gerrit-init.sh

Issue 69373002: Use the latest gerrit 2.8 RC (Closed) Base URL: https://chromium.googlesource.com/chromium/tools/depot_tools@master
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/bin/bash 1 #!/bin/bash
2 # Copyright (c) 2013 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2013 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 set -e 6 set -e
7 7
8 http_port=8080 8 http_port=8080
9 ssh_port=29418 9 ssh_port=29418
10 10
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 # ... 70 # ...
71 # } 71 # }
72 # 72 #
73 # ...and prints the name and md5sum of the corresponding *.war file. 73 # ...and prints the name and md5sum of the corresponding *.war file.
74 74
75 import json 75 import json
76 import re 76 import re
77 import sys 77 import sys
78 78
79 requested_version = sys.argv[1] if len(sys.argv) > 1 else None 79 requested_version = sys.argv[1] if len(sys.argv) > 1 else None
80 gerrit_re = re.compile('gerrit(?:-full)?-([0-9.]+(?:-rc[0-9]+)?)[.]war') 80 gerrit_re = re.compile('gerrit(?:-full)?-([0-9.]+)(-rc[0-9]+)?[.]war')
81 j = json.load(sys.stdin) 81 j = json.load(sys.stdin)
82 items = [(x, gerrit_re.match(x['name'])) for x in j['items']] 82 items = [(x, gerrit_re.match(x['name'])) for x in j['items']]
83 items = [(x, m.group(1)) for x, m in items if m] 83 items = [(x, m.group(1), m.group(2)) for x, m in items if m]
84 def _cmp(a, b): 84 def _cmp(a, b):
85 an = a[1].replace('-rc', '.rc').split('.') 85 an = a[1].split('.')
86 bn = b[1].replace('-rc', '.rc').split('.') 86 bn = b[1].split('.')
87 while len(an) < len(bn): 87 while len(an) < len(bn):
88 an.append('0') 88 an.append('0')
89 while len(bn) < len(an): 89 while len(bn) < len(an):
90 bn.append('0') 90 bn.append('0')
91 an.append(a[2][3:] if a[2] else '1000')
92 bn.append(b[2][3:] if b[2] else '1000')
91 for i in range(len(an)): 93 for i in range(len(an)):
92 ai = int(an[i][2:]) if 'rc' in an[i] else 1000 + int(an[i]) 94 if an[i] != bn[i]:
93 bi = int(bn[i][2:]) if 'rc' in bn[i] else 1000 + int(bn[i]) 95 return -1 if int(an[i]) > int(bn[i]) else 1
94 if ai != bi:
95 return -1 if ai > bi else 1
96 return 0 96 return 0
97 97
98 if requested_version: 98 if requested_version:
99 for info, version in items: 99 for info, version in items:
100 if version == requested_version: 100 if version == requested_version:
101 print '"%s" "%s"' % (info['name'], info['md5Hash']) 101 print '"%s" "%s"' % (info['name'], info['md5Hash'])
102 sys.exit(0) 102 sys.exit(0)
103 print >> sys.stderr, 'No such Gerrit version: %s' % requested_version 103 print >> sys.stderr, 'No such Gerrit version: %s' % requested_version
104 sys.exit(1) 104 sys.exit(1)
105 105
106 items.sort(cmp=_cmp) 106 items.sort(cmp=_cmp)
107 for x in items: 107 for x in items:
108 if 'rc' not in x[0]['name']: 108 print '"%s" "%s"' % (x[0]['name'], x[0]['md5Hash'])
109 print '"%s" "%s"' % (x[0]['name'], x[0]['md5Hash']) 109 sys.exit(0)
110 sys.exit(0)
111 EOF 110 EOF
112 ) "$version" | xargs | while read name md5; do 111 ) "$version" | xargs | while read name md5; do
113 # Download the requested gerrit version if necessary, and verify the md5sum. 112 # Download the requested gerrit version if necessary, and verify the md5sum.
114 target="$this_dir/$name" 113 target="$this_dir/$name"
115 net_sum=$(echo -n $md5 | base64 -d | od -tx1 | head -1 | cut -d ' ' -f 2- | 114 net_sum=$(echo -n $md5 | base64 -d | od -tx1 | head -1 | cut -d ' ' -f 2- |
116 sed 's/ //g') 115 sed 's/ //g')
117 if [ -f "$target" ]; then 116 if [ -f "$target" ]; then
118 file_sum=$(md5sum "$target" | awk '{print $1}' | xargs) 117 file_sum=$(md5sum "$target" | awk '{print $1}' | xargs)
119 if [ "$file_sum" = "$net_sum" ]; then 118 if [ "$file_sum" = "$net_sum" ]; then
120 ln -sf "$name" "$gerrit_exe" 119 ln -sf "$name" "$gerrit_exe"
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
155 listenUrl = http://*:${http_port}/ 154 listenUrl = http://*:${http_port}/
156 [sshd] 155 [sshd]
157 listenAddress = *:${ssh_port} 156 listenAddress = *:${ssh_port}
158 [sendemail] 157 [sendemail]
159 enable = false 158 enable = false
160 [container] 159 [container]
161 javaOptions = -Duser.home=${rundir}/tmp 160 javaOptions = -Duser.home=${rundir}/tmp
162 EOF 161 EOF
163 162
164 # Initialize the gerrit instance. 163 # Initialize the gerrit instance.
165 java -jar "$gerrit_exe" init --no-auto-start --batch -d "${rundir}" 164 java -jar "$gerrit_exe" init --no-auto-start --batch --install-plugin=download-c ommands -d "${rundir}"
166 165
167 # Create SSH key pair for the first user. 166 # Create SSH key pair for the first user.
168 mkdir -p "${rundir}/tmp" 167 mkdir -p "${rundir}/tmp"
169 ssh-keygen -t rsa -q -f "${rundir}/tmp/id_rsa" -N "" 168 ssh-keygen -t rsa -q -f "${rundir}/tmp/id_rsa" -N ""
170 ssh_public_key="$(cat ${rundir}/tmp/id_rsa.pub)" 169 ssh_public_key="$(cat ${rundir}/tmp/id_rsa.pub)"
171 170
172 # Set up the first user, with admin priveleges. 171 # Set up the first user, with admin priveleges.
173 cat <<EOF | java -jar "$gerrit_exe" gsql -d "${rundir}" > /dev/null 172 cat <<EOF | java -jar "$gerrit_exe" gsql -d "${rundir}" > /dev/null
174 INSERT INTO ACCOUNTS (FULL_NAME, MAXIMUM_PAGE_SIZE, PREFERRED_EMAIL, REGISTERED_ ON, ACCOUNT_ID) VALUES ('${full_name}', ${maximum_page_size}, '${preferred_email }', '${registered_on}', ${account_id}); 173 INSERT INTO ACCOUNTS (FULL_NAME, MAXIMUM_PAGE_SIZE, PREFERRED_EMAIL, REGISTERED_ ON, ACCOUNT_ID) VALUES ('${full_name}', ${maximum_page_size}, '${preferred_email }', '${registered_on}', ${account_id});
175 INSERT INTO ACCOUNT_EXTERNAL_IDS (ACCOUNT_ID, EXTERNAL_ID) VALUES (${account_id} , 'gerrit:${username}'); 174 INSERT INTO ACCOUNT_EXTERNAL_IDS (ACCOUNT_ID, EXTERNAL_ID) VALUES (${account_id} , 'gerrit:${username}');
(...skipping 24 matching lines...) Expand all
200 To use SSH API: 199 To use SSH API:
201 ssh ${username}@localhost -p ${ssh_port} -i ${rundir}/tmp/id_rsa gerrit 200 ssh ${username}@localhost -p ${ssh_port} -i ${rundir}/tmp/id_rsa gerrit
202 201
203 To enable 'git push' without a password prompt: 202 To enable 'git push' without a password prompt:
204 git config credential.helper 'store --file=${rundir}/tmp/.git-credentials' 203 git config credential.helper 'store --file=${rundir}/tmp/.git-credentials'
205 204
206 To stop the server: 205 To stop the server:
207 ${rundir}/bin/gerrit.sh stop 206 ${rundir}/bin/gerrit.sh stop
208 207
209 EOF 208 EOF
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698