File tree Expand file tree Collapse file tree 2 files changed +27
-10
lines changed Expand file tree Collapse file tree 2 files changed +27
-10
lines changed Original file line number Diff line number Diff line change @@ -12,18 +12,25 @@ source check-available-commands.sh
12
12
checkCommandsAvailable kubectl jq awk
13
13
IFS=$'
14
14
'
15
- USERS=($( awk -F , ' {print $3}' users.csv) )
15
+ USERS=($( awk -F , ' {print tolower($3)}' users.csv) )
16
+ TEAMS=($( awk -F , ' {print tolower($3)}' teams.csv) )
16
17
unset IFS
17
18
for NAMESPACE in ` kubectl get ns | grep t- | awk ' {print $1;}' `
18
19
do
19
20
echo " found $NAMESPACE "
20
- NO_TDASH_NAMESPACE=${NAMESPACE: 2}
21
+ CUT_NAMESPACE=${NAMESPACE: 2}
22
+ NO_TDASH_NAMESPACE=` echo $CUT_NAMESPACE | awk ' {print tolower($0)}' `
21
23
echo " checking list for $NO_TDASH_NAMESPACE "
22
24
if [[ " ${USERS[*]} " =~ " ${NO_TDASH_NAMESPACE} " ]]; then
23
- echo " FOUND $NO_TDASH_NAMESPACE in users, skipping it "
25
+ echo " FOUND $NO_TDASH_NAMESPACE in users"
24
26
else
25
- echo " did not find $NO_TDASH_NAMESPACE in users, deleting it now!"
26
- kubectl delete ns $NAMESPACE
27
- echo " deleted $NAMESPACE "
27
+ if [[ " ${TEAMS[*]} " =~ " ${NO_TDASH_NAMESPACE} " ]]; then
28
+ echo " FOUND $NO_TDASH_NAMESPACE in teams"
29
+ else
30
+ echo " did NOT find $NO_TDASH_NAMESPACE in users and teams. Deletig it now!"
31
+ kubectl delete ns $NAMESPACE
32
+ echo " deleted $NAMESPACE "
33
+ fi
34
+
28
35
fi
29
36
done
Original file line number Diff line number Diff line change 1
1
#! /bin/bash
2
2
3
3
echo " This script shows all the namespaces that have not been used, it requires an export of the users in CTFD"
4
- echo " It assumes you have the users.csv file from CTFD in the same folder"
4
+ echo " It assumes you have the users.csv file and teams.csv file from CTFD in the same folder"
5
+ echo " This script results in a file unusedteams.txt with all the teams that have no exact match with the registration of users and teams in CTFD"
6
+ rm unusedteams.txt
5
7
source check-available-commands.sh
6
8
checkCommandsAvailable kubectl jq awk
7
9
IFS=$'
8
10
'
9
- USERS=($( awk -F , ' {print $3}' users.csv) )
11
+ USERS=($( awk -F , ' {print tolower($3)}' users.csv) )
12
+ TEAMS=($( awk -F , ' {print tolower($3)}' teams.csv) )
10
13
unset IFS
11
14
for NAMESPACE in ` kubectl get ns | grep t- | awk ' {print $1;}' `
12
15
do
13
16
echo " found $NAMESPACE "
14
- NO_TDASH_NAMESPACE=${NAMESPACE: 2}
17
+ CUT_NAMESPACE=${NAMESPACE: 2}
18
+ NO_TDASH_NAMESPACE=` echo $CUT_NAMESPACE | awk ' {print tolower($0)}' `
15
19
echo " checking list for $NO_TDASH_NAMESPACE "
16
20
if [[ " ${USERS[*]} " =~ " ${NO_TDASH_NAMESPACE} " ]]; then
17
21
echo " FOUND $NO_TDASH_NAMESPACE in users"
18
22
else
19
- echo " did not find $NO_TDASH_NAMESPACE in users"
23
+ if [[ " ${TEAMS[*]} " =~ " ${NO_TDASH_NAMESPACE} " ]]; then
24
+ echo " FOUND $NO_TDASH_NAMESPACE in teams"
25
+ else
26
+ echo " did NOT find $NO_TDASH_NAMESPACE in users and teams"
27
+ echo $NAMESPACE >> unusedteams.txt
28
+ fi
29
+
20
30
fi
21
31
done
You can’t perform that action at this time.
0 commit comments