-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathentrypoint.sh
executable file
·43 lines (38 loc) · 1.04 KB
/
entrypoint.sh
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
#!/bin/bash
git config --global --add safe.directory /github/workspace
export IFS=$'\n'
SECONDS=$((86400*$1))
TIME=$(($(date +%s)-$SECONDS))
OUT=""
#loop for deleting old branches
for i in $(git for-each-ref refs/remotes/origin --sort=committerdate --format='%(HEAD)%(color:yellow)%(refname:short)%(color:reset) %(color:green)%(committerdate:raw)%(color:reset)')
do
export IFS=$' '
elements=($i)
if [ $TIME -gt ${elements[1]} ]
then
export IFS="/"
inner_elements=(${elements[0]})
if [[ ${inner_elements[1]} != "KEEP"* ]]
then
git push origin --delete ${inner_elements[1]}
# echo ${inner_elements[1]}
OUT="${OUT}, ${inner_elements[1]}"
fi
fi
done
export IFS=$'\n'
#loop for deleting old tags
TO_SKIP=$2
for n in $(git tag --sort=-creatordate)
do
if [ $TO_SKIP -gt 0 ]
then
TO_SKIP=$(( $TO_SKIP-1 ))
else
git push origin --delete refs/tags/$n
OUT="${OUT}, ${n}"
fi
done
echo ${OUT}
echo "::set-output name=branches::$OUT"