f89c41ebebe050eb1fe4c1b27577ac3660a5cbf3
[jprojects-scripts.git] / dist.sh
1 #!/bin/bash
2
3 # Name of this project, detected by it's base path
4 NAME="${PWD##*/}"
5
6 # Generated JAR file
7 DIST="dist/${NAME}.jar"
8
9 # WildFly module base path
10 WILDFLY_MODULE_BASE_PATH="${HOME}/wildfly_domain/modules/org/mxchange"
11
12 # And for this "module" (as WildFly calls it)
13 WILDFLY_MODULE_PATH="${WILDFLY_MODULE_BASE_PATH}/${NAME}/main"
14
15 # module.xml
16 WILDFLY_MODULE_XML_FILE="wildfly/module.xml"
17
18 # Glassfish base path (domain)
19 GLASSFISH_BASE_PATH="${HOME}/gf_domain/domain/lib"
20
21 # Remote Glassfish path
22 GLASSFISH_SSH_PATH="/var/payara/domains/domain1/lib"
23
24 # Remote SSH server (password-less access)
25 GLASSFISH_SSH_SERVER="www.mxchange.org"
26
27 # Windows personal domain
28 PERSONAL_DOMAIN_PATH="${HOME}/personal_domain/lib"
29
30 # Generate list
31 LIST=`find ../*/lib/${NAME}.jar`
32 LIST="${LIST} `find ../*/*-ejb/lib/${NAME}.jar`"
33 LIST="${LIST} ${WILDFLY_MODULE_PATH}"
34
35 if [ -d "${GLASSFISH_BASE_PATH}" ]
36 then
37         echo "$0: Glassfish personal domain found, adding to LIST ..."
38         LIST="${LIST} ${GLASSFISH_BASE_PATH}"
39 fi
40
41 if [ -d "${PERSONAL_DOMAIN_PATH}" ]
42 then
43         echo "$0: Personal domain found, adding to LIST ..."
44         LIST="${LIST} ${PERSONAL_DOMAIN_PATH}"
45 fi
46
47 if [ ! -f "${DIST}" ]
48 then
49         echo "$0: '${DIST}' not found."
50         exit 1
51 elif [ ! -d "${WILDFLY_MODULE_BASE_PATH}" ]
52 then
53         echo "$0: WildFly base path '${WILDFLY_MODULE_BASE_PATH}' not created."
54 elif [ ! -d "${WILDFLY_MODULE_PATH}" ]
55 then
56         mkdir -vp "${WILDFLY_MODULE_PATH}"
57 fi
58
59 for project in ${LIST};
60 do
61         if [ -d "${project}" ]
62         then
63                 cp -v "${DIST}" "${project}"
64         elif [ -f "${project}" ]
65         then
66                 cp -v "${DIST}" "${project}"
67         else
68                 echo "$0: Project '${project}' not found."
69         fi
70
71 done
72
73 if [ -n "${GLASSFISH_SSH_PATH}" -a -n "${GLASSFISH_SSH_SERVER}" ]
74 then
75         echo "$0: Copying to remote '${GLASSFISH_SSH_SERVER}' ..."
76         scp "${DIST}" "${GLASSFISH_SSH_SERVER}:${GLASSFISH_SSH_PATH}"
77 fi
78
79 # Copy module.xml ...
80 if [ -f "${WILDFLY_MODULE_XML_FILE}" ]
81 then
82         echo "$0: Generating module.xml ..."
83         XML_CONTENT=`cat "${WILDFLY_MODULE_XML_FILE}"`
84         XML_CONTENT="${XML_CONTENT//NAME/$NAME}"
85         echo "${XML_CONTENT}" > "${WILDFLY_MODULE_PATH}/module.xml"
86 fi
87
88 echo "$0: All done."
89 exit 0