Commit 029f79cc authored by Steve Fink's avatar Steve Fink
Browse files

Bug 1250709 - Implement shell-only hazard analysis job, r=garndt

--HG--
extra : rebase_source : 554c5c804827a2b0ae3fd8967d2df002892c823c
parent a53536bc
Loading
Loading
Loading
Loading
+4 −7
Original line number Diff line number Diff line
#!/bin/sh
#!/bin/bash -ex

set -e
set -x

[ -d $ANALYZED_OBJDIR ] || mkdir $ANALYZED_OBJDIR
cd $ANALYZED_OBJDIR
$SOURCE/js/src/configure --enable-debug --enable-optimize --enable-stdcxx-compat --enable-ctypes --with-system-nspr
mkdir -p "$MOZ_OBJDIR"
cd "$MOZ_OBJDIR"
"$GECKO_DIR"/js/src/configure --enable-debug --enable-optimize --enable-stdcxx-compat --enable-ctypes --enable-nspr-build
make -j12 -s
+35 −0
Original line number Diff line number Diff line
#!/bin/bash -ex

# Ensure all the scripts in this dir are on the path....
DIRNAME=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
PATH=$DIRNAME:$PATH

WORKSPACE=$( cd "$1" && pwd )

export GECKO_DIR="$WORKSPACE/gecko"
export MOZ_OBJDIR="$WORKSPACE/obj-analyzed"

mkdir -p "$MOZ_OBJDIR"

install-packages.sh "$GECKO_DIR"

. hazard-analysis.sh
. setup-ccache.sh

build_js_shell

# Artifacts folder is outside of the cache.
mkdir -p $HOME/artifacts/ || true

function onexit () {
    grab_artifacts "$WORKSPACE/analysis" "$HOME/artifacts"
}

trap onexit EXIT

configure_analysis "$WORKSPACE/analysis"
run_analysis "$WORKSPACE/analysis" shell

check_hazards "$WORKSPACE/analysis"

################################### script end ###################################
+6 −0
Original line number Diff line number Diff line
@@ -81,6 +81,12 @@ builds:
    types:
      debug:
        task: tasks/builds/haz_linux.yml
  linux64-shell-haz:
    platforms:
      - Linux64
    types:
      debug:
        task: tasks/builds/haz_shell_linux.yml
  macosx64:
    platforms:
      - MacOSX64
+58 −0
Original line number Diff line number Diff line
$inherits:
  from: 'tasks/builds/firefox_base.yml'
  variables:
    build_name: 'shell-haz'
    build_type: 'debug'
task:
  metadata:
    name: '[TC] JS Shell Hazard Linux'
    description: JS Shell Hazard Analysis Linux

  workerType: dbg-linux64

  scopes:
    - 'docker-worker:cache:tooltool-cache'
    - 'docker-worker:relengapi-proxy:tooltool.download.public'
    - 'docker-worker:cache:level-{{level}}-{{project}}-build-linux64-haz-workspace'

  payload:
    cache:
      level-{{level}}-{{project}}-build-linux64-haz-workspace: '/home/worker/workspace'
      tooltool-cache: '/home/worker/tools/tooltool-cache'

    features:
      relengAPIProxy: true

    env:
      TOOLTOOL_CACHE: '/home/worker/tools/tooltool-cache'
      TOOLTOOL_MANIFEST: 'browser/config/tooltool-manifests/linux64/hazard.manifest'

    maxRunTime: 36000

    command:
      - /bin/bash
      - -c
      - >
        tc-vcs checkout workspace/gecko "$GECKO_BASE_REPOSITORY" "$GECKO_HEAD_REPOSITORY" "$GECKO_HEAD_REV" "$GECKO_HEAD_REF" &&
        cd ./workspace/gecko/testing/taskcluster/scripts/builder &&
        ./build-shell-haz-linux.sh $HOME/workspace

  extra:
    treeherderEnv:
      - production
      - staging
    treeherder:
      machine:
        # see https://github.com/mozilla/treeherder/blob/master/ui/js/values.js
        platform: linux64
      groupSymbol: SM-tc
      groupName: SpiderMonkey, submitted by taskcluster
      symbol: H
      collection:
        debug: true
    # Rather then enforcing particular conventions we require that all build
    # tasks provide the "build" extra field to specify where the build and tests
    # files are located.
    locations:
      build: null
      tests: null