summaryrefslogtreecommitdiff
path: root/tcwg-update-llvmbot-containers.sh
blob: 6fc0578161e924fd2cd61811bedb95cfba86e716 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#!/bin/bash

set -ef -o pipefail

scripts=$(dirname $0)
. $scripts/jenkins-helpers.sh
convert_args_to_variables "$@"

obligatory_variables NODE_NAME password

distro_ver="${distro_ver-xenial}"
verbose="${verbose-true}"

set -u

if $verbose; then set -x; fi

case "$NODE_NAME" in
    tcwg-llvmbot-d05-01)
	bot_prefix=linaro-armv8-01-
	bots=(
	    aarch64-full
	    aarch64-global-isel
	    aarch64-libcxx
	    aarch64-libcxx-noeh
	    aarch64-lld
	    aarch64-quick
	    arm-full
	    arm-full-selfhost
	    arm-global-isel
	    arm-libcxx
	    arm-libcxx-noeh
	    arm-lld
	    arm-lnt
	    arm-quick
	    arm-selfhost-neon
	)
	masters=(normal)
	;;
    tcwg-llvmbot-tk1-*)
	bot_prefix=""
	bots=("$(echo "$NODE_NAME" | sed -e "s/tcwg-llvmbot-/linaro-/")")
	masters=(normal)
	;;
    *)
	echo "ERROR: Unknown NODE_NAME: $NODE_NAME"
	exit 1
	;;
esac

for master in "${masters[@]}"; do
    case "$master" in
	normal) distro="$distro_ver-tcwg-llvmprod" ;;
	silent) distro="$distro_ver-tcwg-staging" ;;
    esac

    for bot in "${bots[@]}"; do
	case "$bot" in
	    aarch64-*) arch="arm64" ;;
	    arm-*|linaro-tk1-*) arch="armhf" ;;
	    *) echo "ERROR: Unknown bot: $bot"; exit 1 ;;
	esac
	image="linaro/ci-$arch-tcwg-llvmbot-ubuntu:$distro"

	$scripts/tcwg-start-container.sh \
	    --container "$master-${bot_prefix}$bot" \
	    --image "$image" \
	    --keep_existing "true" \
	    --verbose "$verbose" \
	    -- \
	    $image $master ${bot_prefix}$bot $password
    done
done