-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathaemPackager.sh
130 lines (114 loc) · 3.86 KB
/
aemPackager.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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#!/bin/bash
# Default Variables
USER="admin"
PASSWORD="admin"
HOST="http://localhost:4502"
function usage
{
echo "usage: ./aem-packager.sh [list|install|uninstall|download|upload|upload_install|build|delete] [groupname|localpath when uploading] [packagename]"
}
list ()
{
echo "AVAILABLE PACKAGES:"
curl -u $USER:$PASSWORD $HOST/crx/packmgr/service.jsp?cmd=ls > input.xml
awk ' { gsub ( /\</, "" ) ; print } ' input.xml | awk '{sub(/\/.*/,""); print}' | cut -d\> -f2- | awk ' { gsub ( /\,/, "" ) ; print } ' > temp.csv
awk ' NR>6 { line1 =$1 ; getline ; line2=$1 ; getline ; line3=$1 ; getline ; line4 =$1 ; getline ; line5=$1 ; getline ; line6=$1 ; getline ; line7 =$1 ; getline ; line8=$1$2$3$4 ; getline ; line9=$1 ; getline ; line10 =$1$2$3$4 ; getline ; line11 =$1 ; getline ; line12 =$1$2$3$4 ; getline ; line13 =$1 ; print line1 "," line2 "," line3 "," line4 "," line5 "," line6 "," line7 "," line8 "," line9 "," line10 "," line11 "," line12 "," line13 ;}' temp.csv > aem-packages.csv
echo " Package List is Stored in the CSV File aem-packages.csv "
}
install_package ()
{
echo "Insalling PACKAGE: "$1:$2
if [ "$1" == "" -o "$2" == "" ]; then
echo "Please add Group Name and Package name for the package "
echo "e.g : ./aem-packager.sh install groupname packagename.zip"
exit
fi
curl -u $USER:$PASSWORD -X POST --fail "$HOST/crx/packmgr/service/.json/etc/packages/$1/$2?cmd=install"
echo ""
}
uninstall_package ()
{
echo "UnInstalling PACKAGE: "$1:$2
if [ "$1" == "" -o "$2" == "" ]; then
echo "Please add Group Name and Package name for the package "
echo "e.g : ./aem-packager.sh uninstall groupname packagename.zip"
exit
fi
curl -u $USER:$PASSWORD -X POST --fail "$HOST/crx/packmgr/service/.json/etc/packages/$1/$2?cmd=uninstall"
echo ""
}
upload_install ()
{
echo "Upload and Install PACKAGE from : " $1
if [ "$1" == ""]; then
echo "Please add package path "
echo "e.g : ./aem-packager.sh upload_install /Users/hakhan/Downloads/sample-2.0.zip "
exit
fi
curl -u $USER:$PASSWORD -F file=@"$1" -F force=true -F install=true $HOST/crx/packmgr/service.jsp
echo ""
}
upload ()
{
echo "Upload and Not Install PACKAGE : " $1
if [ "$1" == ""]; then
echo "Please add package path "
echo "e.g : ./aem-packager.sh upload /Users/hakhan/Downloads/sample-2.0.zip "
exit
fi
curl -u $USER:$PASSWORD -F file=@"$1" -F force=true -F install=false $HOST/crx/packmgr/service.jsp
echo ""
}
download ()
{
echo "Downloading PACKAGE: "$1:$2 "to path : " $3
if [ "$1" == "" -o "$2" == "" -o "$3" == "" ]; then
echo "Please add Group Name and Package name and Destination path "
echo "e.g : ./aem-packager.sh download groupname packagename.zip <path of folder>"
exit
fi
curl -u $USER:$PASSWORD $HOST/etc/packages/$1/$2 > $3
echo ""
}
build ()
{
echo "Building PACKAGE: "$1:$2
if [ "$1" == "" -o "$2" == "" ]; then
echo "Please add Group Name and Package name "
echo "e.g : ./aem-packager.sh build groupname packagename.zip"
exit
fi
curl -u $USER:$PASSWORD -X POST --fail "$HOST/crx/packmgr/service/.json/etc/packages/$1/$2?cmd=build"
echo ""
}
delete ()
{
echo "Deleting PACKAGE: "$1:$2
if [ "$1" == "" -o "$2" == "" ]; then
echo "Please add Group Name and Package name "
echo "e.g : ./aem-packager.sh delete groupname packagename.zip"
exit
fi
curl -u $USER:$PASSWORD -X POST --fail "$HOST/crx/packmgr/service/.json/etc/packages/$1/$2?cmd=delete"
echo ""
}
# Perform the actions
if [ "$1" = "list" ]; then
list
elif [ "$1" = "install" ] ; then
install_package $2 $3
elif [ "$1" = "upload_install" ] ; then
upload_install $2
elif [ "$1" = "upload" ] ; then
upload $2
elif [ "$1" = "download" ] ; then
download
elif [ "$1" = "build" ] ; then
build $2 $3
elif [ "$1" = "delete" ] ; then
delete $2 $3
elif [ "$1" = "uninstall" ] ; then
uninstall_package $2 $3
else
usage
fi