blob: 7d5a1b7ab2d7647a3c16f7a5ba6fbe3d6ca65208 (
plain)
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
131
132
133
134
135
136
137
138
139
140
|
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-www/orion/orion-2.0.1.ebuild,v 1.3 2003/12/14 23:29:24 spider Exp $
S=${WORKDIR}/${PN}
At=${PN}${PV}.zip
JAVA_HOME=`java-config --jdk-home`
DESCRIPTION="Orion EJB/J2EE application webserver"
SRC_URI="http://www.orionserver.com/distributions/${At}"
HOMEPAGE="http://www.orionserver.com/"
KEYWORDS="x86 ppc sparc"
LICENSE="ORIONSERVER"
SLOT="0"
DEPEND=">=virtual/jdk-1.3
app-arch/unzip"
src_unpack() {
unzip -q ${DISTDIR}/${At} || die
cd ${S}
epatch ${FILESDIR}/${PV}/${PV}-gentoo.patch
}
pkg_setup() {
if ! groupmod orion ; then
groupadd -g 260 orion || die "problem adding group orion"
fi
if ! id orion; then
useradd -u 260 -g orion -s /bin/bash -d /opt/orion -c "orion" orion || die "problem adding user orion"
fi
}
src_install() {
# CREATE DIRECTORIES
DIROPTIONS="--mode=0775 --owner=orion --group=orion"
dodir /opt/${PN}
dodir /opt/${PN}/config
dodir /opt/${PN}/sbin
dodir /var/log/${PN}
cd ${S}
# INSTALL STARTUP SCRIPTS
insinto /opt/orion/sbin
insopts -o orion -g orion -m0750
doins ${FILESDIR}/${PV}/start_orion.sh
doins ${FILESDIR}/${PV}/stop_orion.sh
cp -a ${FILESDIR}/${PV}/orion.init ${S}/orion
insinto /etc/init.d
insopts -m0750
doins ${S}/orion
cp -a ${FILESDIR}/${PV}/orion.conf ${S}/orion
insinto /etc/conf.d
insopts -m0755
doins ${S}/orion
# CREATE DUMMY LOG & PERSISTENCE DIR
insopts -o orion -g orion -m0750
touch ${S}/.keep
insinto /var/log/${PN}
doins ${S}/.keep
insinto /opt/${PN}/persistence
doins ${S}/.keep
# INSTALL EXTRA FILES
local dirs="applications database default-web-app demo lib persistence autoupdate.properties"
for i in $dirs ; do
cp -a ${i} ${D}/opt/${PN}/
chown -R orion:orion ${D}/opt/${PN}/${i}
done
# INSTALL APP CONFIG
cd ${S}/config
local dirs="application.xml data-sources.xml database-schemas default-web-site.xml global-web-application.xml jms.xml mime.types principals.xml rmi.xml server.xml"
for i in $dirs ; do
cp -a ${i} ${D}/opt/${PN}/config
chown -R orion:orion ${D}/opt/${PN}/config/${i}
done
# INSTALL JARS
cd ${S}
for i in `ls *.jar` ; do
dojar $i
done
# LINK IN SDK TOOLS.JAR
ln -s ${JAVA_HOME}/lib/tools.jar ${D}/usr/share/${PN}/lib/tools.jar
# INSTALL DOCS
dodoc Readme.txt changes.txt
}
pkg_postinst() {
einfo " "
einfo " NOTICE!"
einfo " User and group 'orion' have been added."
einfo " Please set a password for the user account 'orion'"
einfo " if you have not done so already."
einfo " "
einfo " "
einfo " FILE LOCATIONS:"
einfo " 1. Orion home directory: /opt/orion"
einfo " Contains application data, configuration files."
einfo " 2. Runtime settings: /etc/conf.d/orion"
einfo " Contains CLASSPATH and JDK settings."
einfo " 3. Logs: /var/log/orion/"
einfo " 4. Executables, libraries: /usr/share/${PN}/"
einfo " "
einfo " "
einfo " STARTING AND STOPPING ORION:"
einfo " /etc/init.d/orion start"
einfo " /etc/init.d/orion stop"
einfo " /etc/init.d/orion restart"
einfo " "
einfo " "
einfo " NETWORK CONFIGURATION:"
einfo " By default, Orion runs on port 8080. You can change this"
einfo " value by editing /opt/orion/config/default-web-site.xml."
einfo " "
einfo " To test Orion while it's running, point your web browser to:"
einfo " http://localhost:8080/"
einfo " "
einfo " "
einfo " APPLICATION DEPLOYMENT:"
einfo " To set an administrative password, execute the following"
einfo " commands as user 'orion':"
einfo " \$ java -jar /usr/share/${PN}/lib/orion.jar -install"
einfo " "
einfo " "
einfo " BUGS:"
einfo " Please file any bugs at http://bugs.gentoo.org/ or else it"
einfo " may not get seen. Thank you."
einfo " "
echo -ne "\a" ; sleep 1 ; echo -ne "\a" ; sleep 1 ; echo -ne "\a" ; sleep 1
sleep 10
}
|