pkgr 1.2.0 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +16 -2
- data/data/build_dependencies/centos.yml +13 -0
- data/{lib/pkgr/data/distributions/debian/build_dependencies.yml → data/build_dependencies/debian.yml} +2 -2
- data/data/build_dependencies/ubuntu.yml +15 -0
- data/data/buildpacks/centos-6 +2 -0
- data/data/buildpacks/debian-6 +2 -0
- data/{lib/pkgr/data/distributions/debian/buildpacks/debian_wheezy → data/buildpacks/debian-7} +1 -1
- data/data/buildpacks/ubuntu-10.04 +2 -0
- data/{lib/pkgr/data/distributions/debian/buildpacks/ubuntu_precise → data/buildpacks/ubuntu-12.04} +1 -1
- data/{lib/pkgr/data/distributions/debian/runner.erb → data/cli/cli.sh.erb} +105 -57
- data/data/dependencies/centos.yml +9 -0
- data/{lib/pkgr/data/distributions/debian/dependencies.yml → data/dependencies/debian.yml} +2 -2
- data/data/dependencies/ubuntu.yml +21 -0
- data/data/environment/default.erb +9 -0
- data/{lib/pkgr/data/distributions/debian → data}/hooks/postinstall.sh +7 -4
- data/data/hooks/preinstall.sh +13 -0
- data/{lib/pkgr/data/distributions/debian/sysv → data/init/sysv/lsb-3.1}/master.erb +0 -0
- data/{lib/pkgr/data/distributions/debian/sysv → data/init/sysv/lsb-3.1}/process.erb +84 -11
- data/{lib/pkgr/data/distributions/debian/sysv → data/init/sysv/lsb-3.1}/process_master.erb +0 -0
- data/{lib/pkgr/data/distributions/debian/upstart → data/init/upstart/1.5}/init.d.sh.erb +0 -0
- data/{lib/pkgr/data/distributions/debian/upstart → data/init/upstart/1.5}/master.conf.erb +0 -0
- data/{lib/pkgr/data/distributions/debian/upstart → data/init/upstart/1.5}/process.conf.erb +0 -0
- data/{lib/pkgr/data/distributions/debian/upstart → data/init/upstart/1.5}/process_master.conf.erb +0 -0
- data/{lib/pkgr/data/distributions/debian → data/logrotate}/logrotate.erb +0 -0
- data/lib/pkgr.rb +1 -1
- data/lib/pkgr/builder.rb +8 -2
- data/lib/pkgr/buildpack.rb +1 -0
- data/lib/pkgr/cli.rb +12 -6
- data/lib/pkgr/config.rb +20 -2
- data/lib/pkgr/distributions.rb +9 -7
- data/lib/pkgr/distributions/base.rb +159 -0
- data/lib/pkgr/distributions/centos.rb +12 -0
- data/lib/pkgr/distributions/debian.rb +39 -163
- data/lib/pkgr/distributions/redhat.rb +51 -0
- data/lib/pkgr/distributions/runner.rb +39 -0
- data/lib/pkgr/distributions/ubuntu.rb +17 -0
- data/lib/pkgr/version.rb +1 -1
- metadata +30 -29
- data/lib/pkgr/app.rb +0 -279
- data/lib/pkgr/data/bin/executable +0 -36
- data/lib/pkgr/data/config/pre_boot.rb +0 -15
- data/lib/pkgr/data/distributions/debian/buildpacks/debian_squeeze +0 -2
- data/lib/pkgr/data/distributions/debian/buildpacks/ubuntu_lucid +0 -2
- data/lib/pkgr/data/distributions/debian/cron.d +0 -4
- data/lib/pkgr/data/distributions/debian/default.erb +0 -12
- data/lib/pkgr/data/distributions/debian/hooks/preinstall.sh +0 -9
- data/lib/pkgr/data/pkgr.yml +0 -32
- data/lib/pkgr/distributions/debian_squeeze.rb +0 -11
- data/lib/pkgr/distributions/debian_wheezy.rb +0 -11
- data/lib/pkgr/distributions/ubuntu_lucid.rb +0 -15
- data/lib/pkgr/distributions/ubuntu_precise.rb +0 -15
data/README.md
CHANGED
@@ -19,9 +19,10 @@ See <https://pkgr.io/showcase> for examples of apps packaged with `pkgr` (Gitlab
|
|
19
19
|
|
20
20
|
## Installation
|
21
21
|
|
22
|
-
|
22
|
+
On a debian based build machine:
|
23
23
|
|
24
|
-
sudo apt-get
|
24
|
+
sudo apt-get update
|
25
|
+
sudo apt-get install -y build-essential ruby1.9.1-full rubygems1.9.1
|
25
26
|
sudo gem install pkgr
|
26
27
|
|
27
28
|
## Usage
|
@@ -117,6 +118,19 @@ Finally, it's a great way to share your open source software with your users and
|
|
117
118
|
|
118
119
|
* Your application must be Heroku compatible, meaning you should be able to set your main app's configuration via environment variables.
|
119
120
|
|
121
|
+
## Troubleshooting
|
122
|
+
|
123
|
+
If you're on older versions of Debian, you may need to append `/var/lib/gems/1.9.1/bin` to your PATH to "see" the `pkgr` command:
|
124
|
+
|
125
|
+
export PATH="$PATH:/var/lib/gems/1.9.1/bin"
|
126
|
+
|
127
|
+
If you get the following error `ERROR: While executing gem ... (ArgumentError) invalid byte sequence in US-ASCII` while trying to install `pkgr`, try setting a proper locale, and then retry:
|
128
|
+
|
129
|
+
sudo locale-gen en_US.UTF-8
|
130
|
+
export LANG=en_US.UTF-8
|
131
|
+
export LC_ALL=en_US.UTF-8
|
132
|
+
sudo gem install pkgr
|
133
|
+
|
120
134
|
## Authors
|
121
135
|
|
122
136
|
* Cyril Rohr <cyril.rohr@gmail.com> - <http://crohr.me>
|
@@ -0,0 +1,2 @@
|
|
1
|
+
https://github.com/pkgr/heroku-buildpack-ruby.git#487c79e8cc3ab038ac13fef82d1e59a9c6ac39e6,BUILDPACK_VENDOR_URL="https://s3-external-1.amazonaws.com/pkgr-buildpack-ruby/20140408175240-centos-6.4",BUILDPACK_NODE_VERSION="0.6.8",CURL_CONNECT_TIMEOUT=60,CURL_TIMEOUT=300
|
2
|
+
https://github.com/heroku/heroku-buildpack-nodejs.git#v58
|
data/{lib/pkgr/data/distributions/debian/buildpacks/debian_wheezy → data/buildpacks/debian-7}
RENAMED
@@ -1,2 +1,2 @@
|
|
1
|
-
https://github.com/pkgr/heroku-buildpack-ruby.git#487c79e8cc3ab038ac13fef82d1e59a9c6ac39e6,BUILDPACK_VENDOR_URL="https://s3-external-1.amazonaws.com/pkgr-buildpack-ruby/20140408175240-debian-7.4",BUILDPACK_NODE_VERSION="0.6.8"
|
1
|
+
https://github.com/pkgr/heroku-buildpack-ruby.git#487c79e8cc3ab038ac13fef82d1e59a9c6ac39e6,BUILDPACK_VENDOR_URL="https://s3-external-1.amazonaws.com/pkgr-buildpack-ruby/20140408175240-debian-7.4",BUILDPACK_NODE_VERSION="0.6.8",CURL_CONNECT_TIMEOUT=60,CURL_TIMEOUT=300
|
2
2
|
https://github.com/heroku/heroku-buildpack-nodejs.git#v58
|
data/{lib/pkgr/data/distributions/debian/buildpacks/ubuntu_precise → data/buildpacks/ubuntu-12.04}
RENAMED
@@ -1,2 +1,2 @@
|
|
1
|
-
https://github.com/pkgr/heroku-buildpack-ruby.git#487c79e8cc3ab038ac13fef82d1e59a9c6ac39e6,BUILDPACK_VENDOR_URL="https://s3-external-1.amazonaws.com/pkgr-buildpack-ruby/20140408175240-ubuntu-12.04",BUILDPACK_NODE_VERSION="0.6.8"
|
1
|
+
https://github.com/pkgr/heroku-buildpack-ruby.git#487c79e8cc3ab038ac13fef82d1e59a9c6ac39e6,BUILDPACK_VENDOR_URL="https://s3-external-1.amazonaws.com/pkgr-buildpack-ruby/20140408175240-ubuntu-12.04",BUILDPACK_NODE_VERSION="0.6.8",CURL_CONNECT_TIMEOUT=60,CURL_TIMEOUT=300
|
2
2
|
https://github.com/heroku/heroku-buildpack-nodejs.git#v58
|
@@ -2,61 +2,100 @@
|
|
2
2
|
# Generated by pkgr.
|
3
3
|
|
4
4
|
set -e
|
5
|
+
set -o pipefail
|
5
6
|
|
6
|
-
|
7
|
+
APP_NAME=$(basename $0)
|
8
|
+
# useful for testing
|
9
|
+
ROOT_PATH=${ROOT_PATH:="/"}
|
7
10
|
|
8
|
-
function
|
11
|
+
# Helper function that returns the real path, based on the given ROOT_PATH
|
12
|
+
_p() {
|
13
|
+
echo "${ROOT_PATH%%/}${1}"
|
14
|
+
}
|
15
|
+
|
16
|
+
usage() {
|
9
17
|
echo "Usage:"
|
10
|
-
echo " $
|
11
|
-
echo " $
|
12
|
-
echo " $
|
13
|
-
echo " $
|
14
|
-
|
18
|
+
echo " $APP_NAME run COMMAND [options]"
|
19
|
+
echo " $APP_NAME scale TYPE=NUM"
|
20
|
+
echo " $APP_NAME logs [--tail|-n NUMBER]"
|
21
|
+
echo " $APP_NAME config:get VAR"
|
22
|
+
echo " $APP_NAME config:set VAR=VALUE"
|
23
|
+
}
|
24
|
+
|
25
|
+
|
26
|
+
# Returns the type of process manager supported by the current distribution.
|
27
|
+
runner() {
|
28
|
+
if [ -f $(_p /etc/debian_version) ]; then
|
29
|
+
case "$(cat $(_p /etc/debian_version))" in
|
30
|
+
wheezy*|squeeze*|jessie*)
|
31
|
+
echo "upstart"
|
32
|
+
;;
|
33
|
+
*)
|
34
|
+
echo "sysv"
|
35
|
+
;;
|
36
|
+
esac
|
37
|
+
elif [ -f $(_p /etc/redhat-release) ]; then
|
38
|
+
echo "upstart"
|
39
|
+
fi
|
15
40
|
}
|
16
41
|
|
17
42
|
if [ ! 0 -eq ${EUID} ]; then
|
18
|
-
echo "You must be executing with root privileges to launch commands.
|
43
|
+
echo "You must be executing with root privileges to launch commands."
|
44
|
+
echo "Either log in as root, use sudo, or add sudo privileges for running ${APP_NAME} with your user."
|
19
45
|
exit 1
|
20
46
|
fi
|
21
47
|
|
22
|
-
DEFAULT_FILE
|
48
|
+
DEFAULT_FILE=$(_p "/etc/default/${APP_NAME}")
|
23
49
|
|
24
50
|
# Source all environment variables for the app. This must be done as
|
25
51
|
# privileged user since the config variables are only readable by root.
|
26
52
|
. ${DEFAULT_FILE}
|
27
53
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
case "$version" in
|
33
|
-
wheezy*|squeeze*)
|
34
|
-
init_system="upstart"
|
35
|
-
;;
|
36
|
-
*)
|
37
|
-
init_system="sysv"
|
38
|
-
;;
|
39
|
-
esac
|
54
|
+
for file in $(_p "/etc/${APP_NAME}/conf.d")/*; do
|
55
|
+
if [ -f $file ]; then . $file; fi
|
56
|
+
done
|
40
57
|
|
41
|
-
|
42
|
-
|
58
|
+
for file in $(_p "${APP_HOME}/.profile.d")/*.sh; do
|
59
|
+
# .profile.d scripts assume HOME indicates the path to the app directory
|
60
|
+
if [ -f $file ]; then HOME=${APP_HOME} . $file; fi
|
61
|
+
done
|
43
62
|
|
44
63
|
# You can force a specific process manager by setting the PROCESS_MANAGER
|
45
64
|
# environment variable.
|
46
|
-
PROCESS_MANAGER=${PROCESS_MANAGER:=$(
|
65
|
+
PROCESS_MANAGER=${PROCESS_MANAGER:=$(runner)}
|
47
66
|
|
48
|
-
|
67
|
+
# Return all the environment variables accessible to the app.
|
68
|
+
show_env() {
|
69
|
+
env -i ROOT_PATH=${ROOT_PATH} ${0} run env | sort
|
70
|
+
}
|
71
|
+
|
72
|
+
logs() {
|
73
|
+
if [ "$1" = "" ]; then
|
74
|
+
for file in $(_p "/var/log/${APP_NAME}")/*.log ; do
|
75
|
+
echo "==> ${file} <=="
|
76
|
+
cat "${file}"
|
77
|
+
done
|
78
|
+
else
|
79
|
+
tail $(_p "/var/log/${APP_NAME}")/*.log $@
|
80
|
+
fi
|
81
|
+
}
|
82
|
+
|
83
|
+
tail_logs() {
|
84
|
+
tail -f $(_p "/var/log/${APP_NAME}")/*.log
|
85
|
+
}
|
86
|
+
|
87
|
+
current_number_of_processes() {
|
49
88
|
PROCESS_NAME="$1"
|
50
89
|
if [ "${PROCESS_MANAGER}" = "upstart" ]; then
|
51
|
-
echo $(ls -rv1 /etc/init
|
90
|
+
echo $(ls -rv1 $(_p /etc/init/)${APP_NAME}-${PROCESS_NAME}-*.conf 2>/dev/null | head -1 | sed -r 's/.*\-([0-9]+)\.conf/\1/g')
|
52
91
|
else
|
53
|
-
echo $(ls -rv1 /etc/init.d
|
92
|
+
echo $(ls -rv1 $(_p /etc/init.d/)${APP_NAME}-${PROCESS_NAME}-* 2>/dev/null | head -1 | sed -r 's/.*\-([0-9]+)/\1/g')
|
54
93
|
fi
|
55
94
|
|
56
95
|
return 0
|
57
96
|
}
|
58
97
|
|
59
|
-
|
98
|
+
update_port() {
|
60
99
|
file="$1"
|
61
100
|
process_name="$2"
|
62
101
|
port="$3"
|
@@ -71,7 +110,7 @@ function update_port() {
|
|
71
110
|
fi
|
72
111
|
}
|
73
112
|
|
74
|
-
|
113
|
+
scale_up() {
|
75
114
|
PROCESS_NAME="${1}"
|
76
115
|
CURRENT_SCALE=${2}
|
77
116
|
NEW_SCALE=${3}
|
@@ -80,15 +119,18 @@ function scale_up() {
|
|
80
119
|
echo "Scaling up..."
|
81
120
|
|
82
121
|
if [ "${PROCESS_MANAGER}" = "upstart" ]; then
|
83
|
-
|
84
|
-
cp "${
|
122
|
+
# copy master
|
123
|
+
cp $(_p "${APP_HOME}/vendor/pkgr/scaling/upstart/${APP_NAME}.conf") $(_p "/etc/init/")
|
124
|
+
# copy master process
|
125
|
+
cp $(_p "${APP_HOME}/vendor/pkgr/scaling/upstart/${APP_NAME}-${PROCESS_NAME}.conf") $(_p "/etc/init/")
|
126
|
+
|
85
127
|
for i in $(seq ${SCALE_DELTA}); do
|
86
128
|
index=$((${i} + ${CURRENT_SCALE}))
|
87
129
|
PROCESS_ID="${APP_NAME}-${PROCESS_NAME}-${index}"
|
88
|
-
cp "${
|
130
|
+
cp $(_p "${APP_HOME}/vendor/pkgr/scaling/upstart/${APP_NAME}-${PROCESS_NAME}-PROCESS_NUM.conf") $(_p "/etc/init/${PROCESS_ID}.conf")
|
89
131
|
port=$((${PORT} + ${index} - 1))
|
90
132
|
|
91
|
-
update_port "/etc/init/${PROCESS_ID}.conf" "${PROCESS_NAME}" $port $index
|
133
|
+
update_port $(_p "/etc/init/${PROCESS_ID}.conf") "${PROCESS_NAME}" $port $index
|
92
134
|
|
93
135
|
service "${PROCESS_ID}" start
|
94
136
|
done
|
@@ -96,29 +138,29 @@ function scale_up() {
|
|
96
138
|
service ${APP_NAME}-${PROCESS_NAME} start || true
|
97
139
|
service ${APP_NAME} start || true
|
98
140
|
else
|
99
|
-
cp "${
|
100
|
-
chmod a+x /etc/init.d/${APP_NAME}
|
141
|
+
cp $(_p "${APP_HOME}/vendor/pkgr/scaling/sysv/${APP_NAME}") $(_p /etc/init.d/)
|
142
|
+
chmod a+x $(_p "/etc/init.d/${APP_NAME}")
|
101
143
|
update-rc.d ${APP_NAME} defaults
|
102
|
-
cp "${
|
103
|
-
chmod a+x /etc/init.d/${APP_NAME}-${PROCESS_NAME}
|
144
|
+
cp $(_p "${APP_HOME}/vendor/pkgr/scaling/sysv/${APP_NAME}-${PROCESS_NAME}") $(_p /etc/init.d/)
|
145
|
+
chmod a+x $(_p "/etc/init.d/${APP_NAME}-${PROCESS_NAME}")
|
104
146
|
update-rc.d ${APP_NAME}-${PROCESS_NAME} defaults
|
105
147
|
for i in $(seq ${SCALE_DELTA}); do
|
106
148
|
index=$((${i} + ${CURRENT_SCALE}))
|
107
149
|
PROCESS_ID="${APP_NAME}-${PROCESS_NAME}-${index}"
|
108
|
-
cp "${
|
150
|
+
cp $(_p "${APP_HOME}/vendor/pkgr/scaling/sysv/${APP_NAME}-${PROCESS_NAME}-PROCESS_NUM") $(_p "/etc/init.d/${PROCESS_ID}")
|
109
151
|
port=$((${PORT} + ${index} - 1))
|
110
152
|
|
111
|
-
update_port "/etc/init.d/${PROCESS_ID}" "${PROCESS_NAME}" $port $index
|
153
|
+
update_port $(_p "/etc/init.d/${PROCESS_ID}") "${PROCESS_NAME}" $port $index
|
112
154
|
|
113
|
-
chmod a+x /etc/init.d/${PROCESS_ID}
|
155
|
+
chmod a+x $(_p "/etc/init.d/${PROCESS_ID}")
|
114
156
|
update-rc.d ${PROCESS_ID} defaults
|
115
|
-
/etc/init.d/${PROCESS_ID} start
|
157
|
+
$(_p "/etc/init.d/${PROCESS_ID}") start
|
116
158
|
done
|
117
159
|
fi
|
118
160
|
echo "--> done."
|
119
161
|
}
|
120
162
|
|
121
|
-
|
163
|
+
scale_down() {
|
122
164
|
PROCESS_NAME="${1}"
|
123
165
|
CURRENT_SCALE=${2}
|
124
166
|
NEW_SCALE=${3}
|
@@ -131,18 +173,18 @@ function scale_down() {
|
|
131
173
|
|
132
174
|
if [ "${PROCESS_MANAGER}" = "upstart" ]; then
|
133
175
|
service "${PROCESS_ID}" stop
|
134
|
-
rm -f "/etc/init/${PROCESS_ID}.conf"
|
176
|
+
rm -f $(_p "/etc/init/${PROCESS_ID}.conf")
|
135
177
|
else
|
136
|
-
/etc/init.d/${PROCESS_ID} stop
|
178
|
+
$(_p "/etc/init.d/${PROCESS_ID}") stop
|
137
179
|
update-rc.d -f ${PROCESS_ID} remove
|
138
|
-
rm -f "/etc/init.d/${PROCESS_ID}"
|
180
|
+
rm -f $(_p "/etc/init.d/${PROCESS_ID}")
|
139
181
|
fi
|
140
182
|
done
|
141
183
|
echo "--> done."
|
142
184
|
}
|
143
185
|
|
144
186
|
# Scale processes
|
145
|
-
|
187
|
+
scale() {
|
146
188
|
PROCESS_NAME="$1"
|
147
189
|
NEW_SCALE="$2"
|
148
190
|
|
@@ -159,10 +201,6 @@ function scale() {
|
|
159
201
|
fi
|
160
202
|
}
|
161
203
|
|
162
|
-
# Return all the environment variables accessible to the app.
|
163
|
-
function show_env() {
|
164
|
-
env -i ${0} run env | sort
|
165
|
-
}
|
166
204
|
|
167
205
|
while : ; do
|
168
206
|
case "$1" in
|
@@ -171,11 +209,11 @@ while : ; do
|
|
171
209
|
COMMAND="$2"
|
172
210
|
shift 2
|
173
211
|
|
174
|
-
runnable=$(echo -n "
|
212
|
+
runnable=$(echo -n "exec")
|
175
213
|
|
176
|
-
if [ -f "${
|
214
|
+
if [ -f $(_p "${APP_HOME}/vendor/pkgr/processes/${COMMAND}") ]; then
|
177
215
|
# Command alias defined in Procfile
|
178
|
-
runnable="${runnable}$(printf " %q" "vendor/pkgr/processes/${COMMAND}" "$@")"
|
216
|
+
runnable="${runnable}$(printf " %q" $(_p "${APP_HOME}/vendor/pkgr/processes/${COMMAND}") "$@")"
|
179
217
|
else
|
180
218
|
# Everything else.
|
181
219
|
#
|
@@ -188,7 +226,7 @@ while : ; do
|
|
188
226
|
# Do not use su, to avoid creating a new process. Note: chroot version
|
189
227
|
# is too old on Ubuntu Lucid, so this will fail. It works on Debian
|
190
228
|
# Squeeze though (and later).
|
191
|
-
exec chroot --userspec ${APP_USER}:${APP_GROUP} / sh -c "$runnable"
|
229
|
+
exec chroot --userspec ${APP_USER}:${APP_GROUP} "/" sh -c "cd $(_p ${APP_HOME}) && $runnable"
|
192
230
|
|
193
231
|
break ;;
|
194
232
|
|
@@ -205,6 +243,15 @@ while : ; do
|
|
205
243
|
done
|
206
244
|
break ;;
|
207
245
|
|
246
|
+
logs)
|
247
|
+
shift
|
248
|
+
if [ "$1" = "--tail" ]; then
|
249
|
+
tail_logs
|
250
|
+
else
|
251
|
+
logs ${@}
|
252
|
+
fi
|
253
|
+
break;;
|
254
|
+
|
208
255
|
config)
|
209
256
|
show_env
|
210
257
|
break;;
|
@@ -217,11 +264,12 @@ while : ; do
|
|
217
264
|
VAR=${CONFIG[0]:?"Invalid variable name"}
|
218
265
|
VALUE=${CONFIG[1]:?"Invalid value"}
|
219
266
|
|
220
|
-
|
267
|
+
CONFIG_FILE=$(_p "/etc/${APP_NAME}/conf.d/other")
|
268
|
+
touch ${CONFIG_FILE}
|
221
269
|
|
222
|
-
sed -i -r "s/^.*${VAR}.*$//g" /etc/${APP_NAME}/conf.d/*
|
270
|
+
sed -i -r "s/^.*${VAR}.*$//g" $(_p "/etc/${APP_NAME}/conf.d")/*
|
223
271
|
|
224
|
-
echo "export ${VAR}=${VALUE}" >> "${
|
272
|
+
echo "export ${VAR}=${VALUE}" >> "${CONFIG_FILE}"
|
225
273
|
|
226
274
|
break;;
|
227
275
|
|
@@ -7,13 +7,13 @@ default:
|
|
7
7
|
- libxslt1.1
|
8
8
|
- libreadline5
|
9
9
|
- libreadline6
|
10
|
-
|
10
|
+
debian-6:
|
11
11
|
- libssl0.9.8
|
12
12
|
- libmysqlclient16
|
13
13
|
- libevent-1.4-2
|
14
14
|
- libevent-core-1.4-2
|
15
15
|
- libevent-extra-1.4-2
|
16
|
-
|
16
|
+
debian-7:
|
17
17
|
- libssl1.0.0
|
18
18
|
- libmysqlclient18
|
19
19
|
- libevent-2.0-5
|
@@ -0,0 +1,21 @@
|
|
1
|
+
default:
|
2
|
+
- mysql-common
|
3
|
+
- libpq5
|
4
|
+
- libsqlite3-0
|
5
|
+
- openssl
|
6
|
+
- libxml2
|
7
|
+
- libxslt1.1
|
8
|
+
- libreadline5
|
9
|
+
- libreadline6
|
10
|
+
ubuntu-10.04:
|
11
|
+
- libssl0.9.8
|
12
|
+
- libmysqlclient16
|
13
|
+
- libevent-1.4-2
|
14
|
+
- libevent-core-1.4-2
|
15
|
+
- libevent-extra-1.4-2
|
16
|
+
ubuntu-12.04:
|
17
|
+
- libssl1.0.0
|
18
|
+
- libmysqlclient18
|
19
|
+
- libevent-2.0-5
|
20
|
+
- libevent-core-2.0-5
|
21
|
+
- libevent-extra-2.0-5
|
@@ -0,0 +1,9 @@
|
|
1
|
+
# Generated by pkgr
|
2
|
+
export APP_HOME="<%= home %>"
|
3
|
+
export APP_NAME="<%= name %>"
|
4
|
+
export APP_GROUP="<%= group %>"
|
5
|
+
export APP_USER="<%= user %>"
|
6
|
+
export HOME="/home/<%= user %>"
|
7
|
+
<% if runner %>
|
8
|
+
export PROCESS_MANAGER="<%= runner.split("-").first %>"
|
9
|
+
<% end %>
|
@@ -5,11 +5,11 @@ set -e
|
|
5
5
|
APP_NAME="<%= name %>"
|
6
6
|
APP_USER="<%= user %>"
|
7
7
|
APP_GROUP="<%= group %>"
|
8
|
-
|
9
|
-
HOME_LOGS="${
|
8
|
+
APP_HOME="<%= home %>"
|
9
|
+
HOME_LOGS="${APP_HOME}/log"
|
10
10
|
LOGS="/var/log/${APP_NAME}"
|
11
11
|
|
12
|
-
chown -R ${APP_USER}.${APP_GROUP} ${
|
12
|
+
chown -R ${APP_USER}.${APP_GROUP} ${APP_HOME}
|
13
13
|
|
14
14
|
# link app log directory to /var/log/NAME
|
15
15
|
rm -rf ${HOME_LOGS}
|
@@ -24,4 +24,7 @@ export DATABASE_URL=db_adapter://db_user:db_password@db_host/db_name
|
|
24
24
|
export PORT=\${PORT:=6000}
|
25
25
|
CONF
|
26
26
|
|
27
|
-
|
27
|
+
chown -R ${APP_USER}.${APP_GROUP} /etc/${APP_NAME}
|
28
|
+
|
29
|
+
chmod 0750 /etc/${APP_NAME} /etc/${APP_NAME}/conf.d
|
30
|
+
find /etc/${APP_NAME} -type f -exec chmod 0640 {} +
|