summaryrefslogtreecommitdiff
path: root/tcwg-report-stale-rr-jobs.sh
blob: fa57fb5d84ba11f56b07d40eeaeda4efade9910e (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
#!/bin/bash

set -euf -o pipefail

scripts=$(dirname "$0")
# shellcheck source=jenkins-helpers.sh
. "$scripts/jenkins-helpers.sh"

convert_args_to_variables "$@"

days="${days-10}"
refs_url="${refs_url-https://git.linaro.org/toolchain/ci/base-artifacts}"
refs_prefix="${refs_prefix-refs/heads/linaro-local/ci/}"
verbose="${verbose-false}"

if $verbose; then
    set -x
fi

# Initialize base-artifacts repo (by cloning its "empty" branch).
refs_repo=$(basename "$refs_url" .git)
clone_or_update_repo_no_checkout "$refs_repo" "$refs_url" none empty origin >/dev/null 2>&1
git -C "$refs_repo" reset --hard >/dev/null 2>&1

# Walk through all commits of all tcwg_bmk* branches and mark results
# referenced in those results with "used_by" file.
while IFS= read -r ref; do
    git -C "$refs_repo" fetch -q origin "$ref"
    commit_stamp=$(git -C "$refs_repo" show --no-patch --pretty=%ct FETCH_HEAD)
    if [ $(($(date +%s) - $commit_stamp)) -gt $(($days * 24 * 3600)) ]; then
	echo "${ref#$refs_prefix}"
    fi
done < <(git ls-remote "$refs_url" "${refs_prefix}*" | awk '{ print $2 }')