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

Side by Side Diff: archive_build.sh

Issue 2804030: Adding ACL option to archive_build.sh (Closed) Base URL: ssh://git@chromiumos-git/crosutils.git
Patch Set: Fixing typo Created 10 years, 5 months 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 2
3 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. 3 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be 4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file. 5 # found in the LICENSE file.
6 6
7 # Script to archive build results. Used by the buildbots. 7 # Script to archive build results. Used by the buildbots.
8 8
9 # Load common constants. This should be the first executable line. 9 # Load common constants. This should be the first executable line.
10 # The path to common.sh should be relative to your script's location. 10 # The path to common.sh should be relative to your script's location.
(...skipping 21 matching lines...) Expand all
32 DEFINE_boolean official_build $FLAGS_FALSE "Set CHROMEOS_OFFICIAL=1 for release builds." 32 DEFINE_boolean official_build $FLAGS_FALSE "Set CHROMEOS_OFFICIAL=1 for release builds."
33 DEFINE_string build_number "" \ 33 DEFINE_string build_number "" \
34 "The build-bot build number (when called by buildbot only)." "b" 34 "The build-bot build number (when called by buildbot only)." "b"
35 DEFINE_boolean test_mod $FLAGS_TRUE "Modify image for testing purposes" 35 DEFINE_boolean test_mod $FLAGS_TRUE "Modify image for testing purposes"
36 DEFINE_boolean factory_test_mod $FLAGS_FALSE \ 36 DEFINE_boolean factory_test_mod $FLAGS_FALSE \
37 "Modify image for factory testing purposes" 37 "Modify image for factory testing purposes"
38 DEFINE_boolean factory_install_mod $FLAGS_FALSE \ 38 DEFINE_boolean factory_install_mod $FLAGS_FALSE \
39 "Modify image for factory install purposes" 39 "Modify image for factory install purposes"
40 DEFINE_string gsutil "gsutil" \ 40 DEFINE_string gsutil "gsutil" \
41 "Location of gsutil" 41 "Location of gsutil"
42 DEFINE_string gsd_gen_index "" \
43 "Location of gsd_generate_index.py"
44 DEFINE_string acl "private" \
45 "ACL to set on GSD archives"
42 DEFINE_string gsutil_archive "" \ 46 DEFINE_string gsutil_archive "" \
43 "Optional datastore archive location" 47 "Optional datastore archive location"
44 48
45 # Parse command line 49 # Parse command line
46 FLAGS "$@" || exit 1 50 FLAGS "$@" || exit 1
47 eval set -- "${FLAGS_ARGV}" 51 eval set -- "${FLAGS_ARGV}"
48 52
49 # Set if default from path is used 53 # Set if default from path is used
50 DEFAULT_USED= 54 DEFAULT_USED=
51 55
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
173 fi 177 fi
174 cd - 178 cd -
175 179
176 # Update LATEST file 180 # Update LATEST file
177 echo "$LAST_CHANGE" > "${FLAGS_to}/LATEST" 181 echo "$LAST_CHANGE" > "${FLAGS_to}/LATEST"
178 182
179 # Make sure files are readable 183 # Make sure files are readable
180 chmod 644 "$ZIPFILE" "${FLAGS_to}/LATEST" 184 chmod 644 "$ZIPFILE" "${FLAGS_to}/LATEST"
181 chmod 755 "$OUTDIR" 185 chmod 755 "$OUTDIR"
182 186
187
188 GSUTIL_CP="${FLAGS_gsutil} cp -a ${FLAGS_acl}"
189 GSUTIL_GENERATE_INDEX="${FLAGS_gsd_gen_index} -a ${FLAGS_acl}"
190
191 function gsutil_archive() {
192 IN_PATH="$1"
193 OUT_PATH="$2"
194 if [ $FLAGS_gsutil_archive != "" ]
195 then
196 FULL_OUT_PATH="${FLAGS_gsutil_archive}/${OUT_PATH}"
197 echo "Using gsutil to archive to ${OUT_PATH}..."
198 ${GSUTIL_CP} ${IN_PATH} ${FULL_OUT_PATH}
199 if [ $FLAGS_gsd_gen_index != "" ]
200 then
201 echo "Updating indexes..."
202 ${GSD_GENERATE_INDEX} -p ${FULL_OUT_PATH} ${FLAGS_gsutil_archive}
203 fi
204 fi
205 }
206
183 if [ $FLAGS_test_mod -eq $FLAGS_TRUE -a $FLAGS_official_build -eq $FLAGS_TRUE ] 207 if [ $FLAGS_test_mod -eq $FLAGS_TRUE -a $FLAGS_official_build -eq $FLAGS_TRUE ]
184 then 208 then
185 echo "Creating hwqual archive" 209 echo "Creating hwqual archive"
186 HWQUAL_NAME="chromeos-hwqual-${FLAGS_board}-${CHROMEOS_VERSION_STRING}" 210 HWQUAL_NAME="chromeos-hwqual-${FLAGS_board}-${CHROMEOS_VERSION_STRING}"
187 "${SCRIPTS_DIR}/archive_hwqual" --from "${OUTDIR}" \ 211 "${SCRIPTS_DIR}/archive_hwqual" --from "${OUTDIR}" \
188 --output_tag "${HWQUAL_NAME}" 212 --output_tag "${HWQUAL_NAME}"
189 # Optionally archive with gsutil hwqual. 213 gsutil_archive "${OUTDIR}/${HWQUAL_NAME}.tar.bz2" \
190 if [ $FLAGS_gsutil_archive != "" ] 214 "${LAST_CHANGE}/${HWQUAL_NAME}.tar.bz2"
191 then
192 GS_OUTDIR="${FLAGS_gsutil_archive}/${LAST_CHANGE}"
193 GS_HWQUAL_IN="${OUTDIR}/${HWQUAL_NAME}.tar.bz2"
194 GS_HWQUAL_OUT="${GS_OUTDIR}/${HWQUAL_NAME}.tar.bz2"
195 echo "Using gsutil to archive to ${GS_HWQUAL_OUT}..."
196 ${FLAGS_gsutil} cp ${GS_HWQUAL_IN} ${GS_HWQUAL_OUT}
197 fi
198 fi 215 fi
199 216
200 # Optionally archive to Google Storage for Developers. 217 gsutil_archive "${ZIPFILE}" "${LAST_CHANGE}/${FLAGS_zipname}"
201 if [ $FLAGS_gsutil_archive != "" ] 218 if [ $FLAGS_factory_test_mod -eq $FLAGS_TRUE ] || \
219 [ $FLAGS_factory_install_mod -eq $FLAGS_TRUE ]
202 then 220 then
203 GS_OUTDIR="${FLAGS_gsutil_archive}/${LAST_CHANGE}" 221 gsutil_archive "${FACTORY_ZIPFILE}" \
204 GS_ZIPFILE="${GS_OUTDIR}/${FLAGS_zipname}" 222 "${LAST_CHANGE}/factory_${FLAGS_zipname}"
205 GS_FACTORY_ZIPFILE="${GS_OUTDIR}/factory_${FLAGS_zipname}"
206 GS_LATEST="${FLAGS_gsutil_archive}/LATEST"
207 echo "Using gsutil to archive to ${GS_ZIPFILE}..."
208 ${FLAGS_gsutil} cp ${ZIPFILE} ${GS_ZIPFILE}
209
210 if [ $FLAGS_factory_test_mod -eq $FLAGS_TRUE ] || \
211 [ $FLAGS_factory_install_mod -eq $FLAGS_TRUE ]
212 then
213 echo "Using gsutil to archive to ${GS_FACTORY_ZIPFILE}..."
214 ${FLAGS_gsutil} cp ${FACTORY_ZIPFILE} ${GS_FACTORY_ZIPFILE}
215 fi
216
217 echo "Updating latest ${GS_LATEST}..."
218 ${FLAGS_gsutil} cp ${FLAGS_to}/LATEST ${GS_LATEST}
219 fi 223 fi
224 gsutil_archive "${FLAGS_to}/LATEST" "LATEST"
220 225
221 # Purge old builds if necessary 226 # Purge old builds if necessary
222 if [ $FLAGS_keep_max -gt 0 ] 227 if [ $FLAGS_keep_max -gt 0 ]
223 then 228 then
224 echo "Deleting old builds (all but the newest ${FLAGS_keep_max})..." 229 echo "Deleting old builds (all but the newest ${FLAGS_keep_max})..."
225 cd "$FLAGS_to" 230 cd "$FLAGS_to"
226 # +2 because line numbers start at 1 and need to skip LATEST file 231 # +2 because line numbers start at 1 and need to skip LATEST file
227 rm -rf `ls -t1 | tail --lines=+$(($FLAGS_keep_max + 2))` 232 rm -rf `ls -t1 | tail --lines=+$(($FLAGS_keep_max + 2))`
228 cd - 233 cd -
229 fi 234 fi
230 235
231 echo "Done." 236 echo "Done."
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