From c402aee34c372f4e1db43dffe1eccd574e3f3a9b Mon Sep 17 00:00:00 2001 From: "commit-queue@webkit.org" Date: Wed, 13 Feb 2013 22:39:44 +0000 Subject: [PATCH] cr-linux debug should use clang and maybe be a components build https://bugs.webkit.org/show_bug.cgi?id=108512 Patch by Alan Cutter on 2013-02-13 Reviewed by Adam Barth. Modified GCE cr-linux-debug-ews bot build scripts to configure clang over gcc for build performance. Build bots will update clang with each bot cycle. Updated GCE image paths to suit gcutil 1.6.1. * EWSTools/GoogleComputeEngine/build-chromium-ews.sh: * EWSTools/GoogleComputeEngine/build-commit-queue.sh: * EWSTools/GoogleComputeEngine/build-cr-linux-debug-ews.sh: * EWSTools/GoogleComputeEngine/build-feeder-style-sheriffbot.sh: * EWSTools/configure-clang-linux.sh: Copied from Tools/EWSTools/GoogleComputeEngine/build-chromium-ews.sh. * EWSTools/start-queue.sh: git-svn-id: https://svn.webkit.org/repository/webkit/trunk@142802 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- Tools/ChangeLog | 18 ++++++++++ .../GoogleComputeEngine/build-chromium-ews.sh | 2 +- .../GoogleComputeEngine/build-commit-queue.sh | 2 +- .../build-cr-linux-debug-ews.sh | 5 +-- .../build-feeder-style-sheriffbot.sh | 4 +-- Tools/EWSTools/configure-clang-linux.sh | 34 +++++++++++++++++++ Tools/EWSTools/start-queue.sh | 25 +++++++++++--- 7 files changed, 80 insertions(+), 10 deletions(-) create mode 100755 Tools/EWSTools/configure-clang-linux.sh diff --git a/Tools/ChangeLog b/Tools/ChangeLog index df4d94d4a4e2..e01eb1fb2d59 100644 --- a/Tools/ChangeLog +++ b/Tools/ChangeLog @@ -1,3 +1,21 @@ +2013-02-13 Alan Cutter + + cr-linux debug should use clang and maybe be a components build + https://bugs.webkit.org/show_bug.cgi?id=108512 + + Reviewed by Adam Barth. + + Modified GCE cr-linux-debug-ews bot build scripts to configure clang over gcc for build performance. + Build bots will update clang with each bot cycle. + Updated GCE image paths to suit gcutil 1.6.1. + + * EWSTools/GoogleComputeEngine/build-chromium-ews.sh: + * EWSTools/GoogleComputeEngine/build-commit-queue.sh: + * EWSTools/GoogleComputeEngine/build-cr-linux-debug-ews.sh: + * EWSTools/GoogleComputeEngine/build-feeder-style-sheriffbot.sh: + * EWSTools/configure-clang-linux.sh: Copied from Tools/EWSTools/GoogleComputeEngine/build-chromium-ews.sh. + * EWSTools/start-queue.sh: + 2013-02-13 Sheriff Bot Unreviewed, rolling out r142747. diff --git a/Tools/EWSTools/GoogleComputeEngine/build-chromium-ews.sh b/Tools/EWSTools/GoogleComputeEngine/build-chromium-ews.sh index badb6e758395..768a84b4a4ad 100755 --- a/Tools/EWSTools/GoogleComputeEngine/build-chromium-ews.sh +++ b/Tools/EWSTools/GoogleComputeEngine/build-chromium-ews.sh @@ -42,7 +42,7 @@ read -s -p "Bugzilla Password: " BUGZILLA_PASSWORD && echo PROJECT=google.com:webkit ZONE=$(bash findzone.sh $PROJECT) -IMAGE=projects/google/images/ubuntu-10-04-v20120621 +IMAGE=projects/google/global/images/ubuntu-10-04-v20120621 MACHINE_TYPE=n1-standard-4-d gcutil --project=$PROJECT addinstance $BOT_ID --machine_type=$MACHINE_TYPE --image=$IMAGE --zone=$ZONE --wait_until_running diff --git a/Tools/EWSTools/GoogleComputeEngine/build-commit-queue.sh b/Tools/EWSTools/GoogleComputeEngine/build-commit-queue.sh index b5130b639905..644fc10c3982 100755 --- a/Tools/EWSTools/GoogleComputeEngine/build-commit-queue.sh +++ b/Tools/EWSTools/GoogleComputeEngine/build-commit-queue.sh @@ -44,7 +44,7 @@ read -s -p "Subversion Password: " SVN_PASSWORD && echo PROJECT=google.com:webkit ZONE=$(bash findzone.sh $PROJECT) -IMAGE=projects/google/images/ubuntu-10-04-v20120621 +IMAGE=projects/google/global/images/ubuntu-10-04-v20120621 MACHINE_TYPE=n1-standard-4-d gcutil --project=$PROJECT addinstance $BOT_ID --machine_type=$MACHINE_TYPE --image=$IMAGE --zone=$ZONE --wait_until_running diff --git a/Tools/EWSTools/GoogleComputeEngine/build-cr-linux-debug-ews.sh b/Tools/EWSTools/GoogleComputeEngine/build-cr-linux-debug-ews.sh index 2efdc67cb5d6..663f0eed0b58 100755 --- a/Tools/EWSTools/GoogleComputeEngine/build-cr-linux-debug-ews.sh +++ b/Tools/EWSTools/GoogleComputeEngine/build-cr-linux-debug-ews.sh @@ -42,7 +42,7 @@ read -s -p "Bugzilla Password: " BUGZILLA_PASSWORD && echo PROJECT=google.com:webkit ZONE=$(bash findzone.sh $PROJECT) -IMAGE=projects/google/images/ubuntu-10-04-v20120621 +IMAGE=projects/google/global/images/ubuntu-10-04-v20120621 MACHINE_TYPE=n1-standard-4-d gcutil --project=$PROJECT addinstance $BOT_ID --machine_type=$MACHINE_TYPE --image=$IMAGE --zone=$ZONE --wait_until_running @@ -56,7 +56,8 @@ gcutil --project=$PROJECT ssh $BOT_ID " cd tools && bash build-vm.sh && bash build-repo.sh $QUEUE_TYPE $BUGZILLA_USERNAME $BUGZILLA_PASSWORD && - bash build-boot-cmd.sh \"screen -t kr ./start-queue.sh $QUEUE_TYPE $BOT_ID 10\" && + bash build-boot-cmd.sh \"\\ +screen -t kr ./start-queue.sh -r \\\"configure-clang-linux.sh $QUEUE_TYPE\\\" $QUEUE_TYPE $BOT_ID 10\" && bash boot.sh " diff --git a/Tools/EWSTools/GoogleComputeEngine/build-feeder-style-sheriffbot.sh b/Tools/EWSTools/GoogleComputeEngine/build-feeder-style-sheriffbot.sh index f9722cb52a39..ac12c11a4744 100755 --- a/Tools/EWSTools/GoogleComputeEngine/build-feeder-style-sheriffbot.sh +++ b/Tools/EWSTools/GoogleComputeEngine/build-feeder-style-sheriffbot.sh @@ -42,7 +42,7 @@ read -s -p "sheriffbot IRC Password: " IRC_PASSWORD && echo PROJECT=google.com:webkit ZONE=$(bash findzone.sh $PROJECT) -IMAGE=projects/google/images/ubuntu-10-04-v20120621 +IMAGE=projects/google/global/images/ubuntu-10-04-v20120621 MACHINE_TYPE=n1-standard-4-d gcutil --project=$PROJECT addinstance $BOT_ID --machine_type=$MACHINE_TYPE --image=$IMAGE --zone=$ZONE --wait_until_running @@ -61,7 +61,7 @@ gcutil --project=$PROJECT ssh $BOT_ID " bash build-boot-cmd.sh \"\\ screen -t fq ./start-queue.sh feeder-queue $BOT_ID 10 screen -t sq ./start-queue.sh style-queue $BOT_ID 10 -screen -t sb ./start-queue.sh sheriff-bot $BOT_ID 180 --irc-password=$IRC_PASSWORD\" +screen -t sb ./start-queue.sh -p \\\"--irc-password=$IRC_PASSWORD\\\" sheriff-bot $BOT_ID 180\" && bash boot.sh " diff --git a/Tools/EWSTools/configure-clang-linux.sh b/Tools/EWSTools/configure-clang-linux.sh new file mode 100755 index 000000000000..049c206eb5f0 --- /dev/null +++ b/Tools/EWSTools/configure-clang-linux.sh @@ -0,0 +1,34 @@ +#!/bin/sh +# Copyright (c) 2013 Google Inc. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following disclaimer +# in the documentation and/or other materials provided with the +# distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +if [[ $# -ne 1 ]];then + echo "Usage: configure-clang-linux.sh QUEUE_TYPE" + exit 1 +fi + +bash /mnt/git/$QUEUE_TYPE/Source/WebKit/chromium/tools/clang/scripts/update.sh +export builddir_name=llvm +export GYP_DEFINES='clang=1' \ No newline at end of file diff --git a/Tools/EWSTools/start-queue.sh b/Tools/EWSTools/start-queue.sh index c70096641b43..03f9bec3898d 100755 --- a/Tools/EWSTools/start-queue.sh +++ b/Tools/EWSTools/start-queue.sh @@ -27,16 +27,28 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -if [[ $# -lt 3 ]]; then - echo "Usage: start-queue-loop.sh QUEUE_NAME BOT_ID RESET_AFTER_ITERATION [QUEUE_PARAMS]" +USAGE="Usage: start-queue-loop.sh [OPTIONS] QUEUE_NAME BOT_ID RESET_AFTER_ITERATION + -r RESET_SCRIPT A bash script to be run every cycle just before the queue starts up again. + -p QUEUE_PARAMS Additional parameters to be given to the queue's execution command." + +while getopts "r:p:" FLAG +do + case $FLAG in + r) RESET_SCRIPT=$OPTARG;; + p) QUEUE_PARAMS=$OPTARG;; + esac +done + +shift $((OPTIND-1)) + +if [[ $# -ne 3 ]]; then + echo "$USAGE" exit 1 fi QUEUE_NAME=$1 BOT_ID=$2 RESET_AFTER_ITERATION=$3 -shift 3 -QUEUE_PARAMS="$@" cd /mnt/git/webkit-$QUEUE_NAME while : @@ -66,6 +78,11 @@ do # preventing webkit-patch from launching. ./Tools/Scripts/test-webkitpy + # Run the given reset script. + if [[ -n $RESET_SCRIPT ]]; then + bash "$RESET_SCRIPT" + fi + # We use --exit-after-iteration to pick up any changes to webkit-patch, including # changes to the committers.py file. ./Tools/Scripts/webkit-patch $QUEUE_NAME --bot-id=$BOT_ID --no-confirm --exit-after-iteration $RESET_AFTER_ITERATION $QUEUE_PARAMS -- 2.36.0