#!/bin/bash -eu # Copyright 2019 The Chromium OS Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. # This script returns the result of state_assumption_external.sh on every even # iteration, and PROBLEM_STATUS on every odd_iteration PROBLEM_STATUS=127 tmp_dir=$(pwd)/afdo_test_tmp count_file="${tmp_dir}/.count" if [[ -f "${count_file}" ]]; then num_call=$(cat "${count_file}") else num_call=0 fi local_count_file=${tmp_dir}/.local_count if [[ -f "${local_count_file}" ]]; then local_count=$(cat "${local_count_file}") else local_count=0 fi echo -n $(( ${local_count}+1 )) > "${local_count_file}" # Don't want to fail on performance checks hence local_count >= 2 # but following that, want to fail every other check if [[ ${local_count} -ge 2 ]] && [[ $(( ${num_call}%2 )) -ne 0 ]]; then echo -n $(( ${num_call}+1 )) > "${count_file}" exit "${PROBLEM_STATUS}" fi # script just needs any second argument to write profs to .second_run_* $(pwd)/state_assumption_external.sh "$1" 'second_run' exit $?