diff options
author | Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> | 2019-02-07 16:33:53 +0000 |
---|---|---|
committer | Maxim Kuvyrkov <maxim.kuvyrkov@linaro.org> | 2019-02-07 16:56:46 +0000 |
commit | 34962065fb408fbd486d5765fe6a690c94ee4c8b (patch) | |
tree | 61a18ad852df1a48b98b1c709255f4ead0b7c2fd /tcwg_kernel-build.sh | |
parent | 742e147d463a1f9cf95c01077336b36d24187247 (diff) |
tcwg_kernel-*.sh: Avoid proxy variables
... and use ${rr[X]} instead of $X.
We make an exception for $current_project in tcwg_kernel-bisect.sh
to do a mechanical change in a separate patch.
Change-Id: Ib365552483d016e9096cc791f61a34015e50e32a
Diffstat (limited to 'tcwg_kernel-build.sh')
-rwxr-xr-x | tcwg_kernel-build.sh | 81 |
1 files changed, 27 insertions, 54 deletions
diff --git a/tcwg_kernel-build.sh b/tcwg_kernel-build.sh index 6eda2248..ab169e5b 100755 --- a/tcwg_kernel-build.sh +++ b/tcwg_kernel-build.sh @@ -1,66 +1,59 @@ #!/bin/bash -set -ef -o pipefail +set -euf -o pipefail scripts=$(dirname $0) . $scripts/jenkins-helpers.sh convert_args_to_variables "$@" +obligatory_variables rr[ci_config] + # Execution mode: baseline, bisect, continue, jenkins-full -mode="${mode-baseline}" - -obligatory_variables toolchain \ - rr[linux_version] rr[linux_url] rr[linux_branch] - -# Toolchain to use: gnu or llvm -case "$toolchain" in - "gnu") obligatory_variables rr[gnu_version] \ - rr[binutils_url] rr[binutils_branch] \ - rr[gcc_url] rr[gcc_branch] ;; - "llvm") obligatory_variables rr[llvm_version] \ - rr[llvm_url] rr[llvm_branch] ;; -esac +rr[mode]="${rr[mode]-baseline}" -case "$mode" in +case "${rr[mode]}" in "jenkins-full") - obligatory_variables current_project current_branch + obligatory_variables rr[current_project] rr[current_branch] ;; esac # Set custom revision for one of the projects, and use baseline revisions # for all other projects. -current_project="${current_project-none}" -current_branch="${current_branch-default}" +rr[ci_project]="${rr[ci_project]-tcwg_kernel}" +rr[baseline_branch]="${rr[baseline_branch]-linaro-local/ci/${rr[ci_project]}/${rr[ci_config]}}" +rr[current_branch]="${rr[current_branch]-default}" +rr[current_project]="${rr[current_project]-none}" +rr[reset_baseline]="${rr[reset_baseline]-false}" +rr[top_artifacts]="${rr[top_artifacts]-$(pwd)/artifacts}" + +# {toolchain_name}-{toolchain_ver}-{target}-{linux}-{linux_config} +IFS=- read -a ci_config <<EOF +${rr[ci_config]} +EOF +rr[toolchain]=${rr[toolchain]-${ci_config[0]}} +rr[target]=${rr[target]-${ci_config[2]}} +rr[linux_config]=${rr[linux_config]-${ci_config[4]}} -linux_config="${linux_config-defconfig}" -reset_baseline="${reset_baseline-false}" start_at="${start_at-default}" finish_at="${finish_at-default}" -target="${target-native}" -top_artifacts="${top_artifacts-$(pwd)/artifacts}" verbose="${verbose-true}" verbose2="${verbose2-false}" -set -u - if $verbose2; then set -x; fi -trap "eval \"echo ERROR at \${FUNCNAME[0]}:\${BASH_LINENO[0]}\" > $top_artifacts/failures" EXIT - -if [ x"$target" = x"native" ]; then - target=$(uname -m) -fi +trap "eval \"echo ERROR at \${FUNCNAME[0]}:\${BASH_LINENO[0]}\"" EXIT # Set start and finish steps for different modes. default_start_at="" default_finish_at="" -case "$mode" in +base_artifacts_opt="base-artifacts" +case "${rr[mode]}" in "baseline") default_finish_at="update_baseline" ;; "bisect") - case "$toolchain:$current_project" in + case "${rr[toolchain]}:${rr[current_project]}" in gnu:binutils) default_start_at="build_abe-binutils" ;; gnu:gcc) default_start_at="build_abe-stage1" ;; gnu:linux) default_start_at="count_linux_objs" ;; @@ -71,14 +64,14 @@ case "$mode" in ;; "continue") # Developer mode. - case "$toolchain" in + case "${rr[toolchain]}" in "gnu") default_start_at="prepare_abe" ;; "llvm") default_start_at="build_llvm" ;; esac + base_artifacts_opt="" ;; "jenkins-full") ;; esac - if [ x"$start_at" = x"default" ]; then start_at="$default_start_at" fi @@ -86,27 +79,7 @@ if [ x"$finish_at" = x"default" ]; then finish_at="$default_finish_at" fi -if [ x"$mode" != x"continue" ]; then - base_artifacts_opt="base-artifacts" -else - base_artifacts_opt="" -fi - -run_step_init "$start_at" "$finish_at" "$top_artifacts" "$base_artifacts_opt" "$verbose" - -rr[baseline_branch]="linaro-local/ci/tcwg_kernel/$toolchain-${rr[${toolchain}_version]}-$target-${rr[linux_version]}-$linux_config" -rr[current_project]="$current_project" -rr[current_branch]="$current_branch" -rr[mode]="$mode" -rr[reset_baseline]="$reset_baseline" -rr[target]="$target" -rr[top_artifacts]="$top_artifacts" - -# Linux config to build in build_linux. -rr[linux_config]="$linux_config" - -# Toolchain to use: gnu or llvm. -rr[toolchain]="$toolchain" +run_step_init "$start_at" "$finish_at" "${rr[top_artifacts]}" "$base_artifacts_opt" "$verbose" . $scripts/round-robin.sh |