forked from aws-samples/aws2tf
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path371-get-emr-sec-config.sh
executable file
·107 lines (86 loc) · 3.33 KB
/
371-get-emr-sec-config.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
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#!/bin/bash
pref[0]="SecurityConfigurations"
tft[0]="aws_emr_security_configuration"
idfilt[0]="Name"
if [ "$1" != "" ]; then
cmd[0]=`printf "$AWS emr list-security-configurations | jq '.${pref}[] | select(.${idfilt}==\"%s\")' | jq ." $1`
else
cmd[0]="$AWS emr list-security-configurations"
fi
for c in `seq 0 0`; do
cm=${cmd[$c]}
ttft=${tft[(${c})]}
#echo $cm
awsout=`eval $cm 2> /dev/null`
if [ "$awsout" == "" ];then
echo "$cm : You don't have access for this resource"
exit
fi
if [ "$1" != "" ]; then
count=1
else
count=`echo $awsout | jq ".${pref[(${c})]} | length"`
fi
if [ "$count" -gt "0" ]; then
count=`expr $count - 1`
for i in `seq 0 $count`; do
#echo $i
if [ "$1" != "" ]; then
cname=`echo $awsout | jq ".${idfilt[(${c})]}" | tr -d '"'`
else
cname=`echo $awsout | jq ".${pref[(${c})]}[(${i})].${idfilt[(${c})]}" | tr -d '"'`
fi
echo "$ttft $cname"
fn=`printf "%s__%s.tf" $ttft $cname`
if [ -f "$fn" ] ; then
echo "$fn exists already skipping"
continue
fi
printf "resource \"%s\" \"%s\" {}\n" $ttft $cname > $fn
terraform import $ttft.$cname "$cname" | grep Importing
terraform state show -no-color $ttft.$cname > t1.txt
#echo $awsj | jq .
rm -f $fn
file="t1.txt"
iddo=0
echo $aws2tfmess > $fn
while IFS= read line
do
skip=0
# display $line or do something with $line
t1=`echo "$line"`
if [[ ${t1} == *"="* ]];then
tt1=`echo "$line" | cut -f1 -d'=' | tr -d ' '`
tt2=`echo "$line" | cut -f2- -d'='`
if [[ ${tt1} == "arn" ]];then skip=1; fi
if [[ ${tt1} == "id" ]];then skip=1; fi
if [[ ${tt1} == "role_arn" ]];then skip=1;fi
if [[ ${tt1} == "owner_id" ]];then skip=1;fi
if [[ ${tt1} == "resource_owner" ]];then skip=1;fi
if [[ ${tt1} == "creation_date" ]];then
# json whitespace non-sense
printf "lifecycle {\n" >> $fn
printf " ignore_changes = [configuration]\n" >> $fn
printf "}\n" >> $fn
skip=1;
fi
if [[ ${tt1} == "master_public_dns" ]];then skip=1;fi
if [[ ${tt1} == "realm" ]];then
echo "kdc_admin_password = \"CHANGE-ME\"" >> $fn
fi
#if [[ ${tt1} == "availability_zone" ]];then skip=1;fi
if [[ ${tt1} == "last_updated_date" ]];then skip=1;fi
if [[ ${tt1} == "vpc_id" ]]; then
tt2=`echo $tt2 | tr -d '"'`
t1=`printf "%s = aws_vpc.%s.id" $tt1 $tt2`
fi
fi
if [ "$skip" == "0" ]; then
#echo $skip $t1
echo "$t1" >> $fn
fi
done <"$file"
done
fi
done
rm -f t*.txt