Skip to content

Commit 8831c23

Browse files
committed
v 7.0.1
1 parent 4d69d1f commit 8831c23

12 files changed

+1398
-225
lines changed

apache/Dockerfile

+4-4
Original file line numberDiff line numberDiff line change
@@ -81,16 +81,16 @@ RUN { \
8181

8282
RUN a2enmod rewrite;
8383

84-
ENV ESPOCRM_VERSION 7.0.0
85-
ENV ESPOCRM_SHA256 068203778d90fb21e6b97e956f10d5464351e5970958bd1c745113e28333638b
84+
ENV ESPOCRM_VERSION 7.0.1
85+
ENV ESPOCRM_SHA256 6cf47cc9f56a19acec6e727bacbd41f87a4f594d6f26e0226c5b637bf2f56deb
8686

8787
WORKDIR /var/www/html
8888

8989
RUN set -ex; \
90-
curl -fSL "https://www.espocrm.com/downloads/EspoCRM-7.0.0.zip" -o EspoCRM.zip; \
90+
curl -fSL "https://www.espocrm.com/downloads/EspoCRM-7.0.1.zip" -o EspoCRM.zip; \
9191
echo "${ESPOCRM_SHA256} *EspoCRM.zip" | sha256sum -c -; \
9292
unzip -q EspoCRM.zip -d /usr/src; \
93-
mv "/usr/src/EspoCRM-7.0.0" /usr/src/espocrm; \
93+
mv "/usr/src/EspoCRM-7.0.1" /usr/src/espocrm; \
9494
rm EspoCRM.zip; \
9595
mkdir /usr/src/espocrm-upgrades; \
9696
chown -R www-data:www-data /usr/src/espocrm /usr/src/espocrm-upgrades

apache/docker-daemon.sh

+161
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,167 @@
22

33
set -eu
44

5+
DOCUMENT_ROOT="/var/www/html"
6+
7+
# entrypoint-utils.sh
8+
configPrefix="ESPOCRM_CONFIG_"
9+
10+
compareVersion() {
11+
local version1="$1"
12+
local version2="$2"
13+
local operator="$3"
14+
15+
echo $(php -r "echo version_compare('$version1', '$version2', '$operator');")
16+
}
17+
18+
join() {
19+
local sep="$1"; shift
20+
local out; printf -v out "${sep//%/%%}%s" "$@"
21+
echo "${out#$sep}"
22+
}
23+
24+
getConfigParamFromFile() {
25+
local name="$1"
26+
27+
php -r "
28+
if (file_exists('$DOCUMENT_ROOT/data/config-internal.php')) {
29+
\$config=include('$DOCUMENT_ROOT/data/config-internal.php');
30+
31+
if (array_key_exists('$name', \$config)) {
32+
die(\$config['$name']);
33+
}
34+
}
35+
36+
\$config=include('$DOCUMENT_ROOT/data/config.php');
37+
if (array_key_exists('$name', \$config)) {
38+
die(\$config['$name']);
39+
}
40+
"
41+
}
42+
43+
getConfigParam() {
44+
local name="$1"
45+
46+
php -r "
47+
require_once('$DOCUMENT_ROOT/bootstrap.php');
48+
49+
\$app = new \Espo\Core\Application();
50+
\$config = \$app->getContainer()->get('config');
51+
52+
echo \$config->get('$name');
53+
"
54+
}
55+
56+
# Bool: saveConfigParam "jobRunInParallel" "true"
57+
# String: saveConfigParam "language" "'en_US'"
58+
saveConfigParam() {
59+
local name="$1"
60+
local value="$2"
61+
62+
php -r "
63+
require_once('$DOCUMENT_ROOT/bootstrap.php');
64+
65+
\$app = new \Espo\Core\Application();
66+
\$config = \$app->getContainer()->get('config');
67+
68+
if (\$config->get('$name') !== $value) {
69+
\$config->set('$name', $value);
70+
\$config->save();
71+
}
72+
"
73+
}
74+
75+
applyConfigEnvironments() {
76+
local envName
77+
local envValue
78+
local configParamName
79+
local configParamValue
80+
81+
compgen -v | while read -r envName; do
82+
83+
if [[ $envName == "$configPrefix"* ]]; then
84+
85+
envValue="${!envName}"
86+
87+
configParamName=$(normalizeConfigParamName "$envName")
88+
configParamValue=$(normalizeConfigParamValue "$envValue")
89+
90+
saveConfigParam "$configParamName" "$configParamValue"
91+
92+
fi
93+
94+
done
95+
}
96+
97+
isQuoteValue() {
98+
local value="$1"
99+
100+
php -r "
101+
echo isQuote('$value');
102+
103+
function isQuote (\$value) {
104+
\$value = trim(\$value);
105+
106+
if (\$value === '0') {
107+
return false;
108+
}
109+
110+
if (empty(\$value)) {
111+
return true;
112+
}
113+
114+
if (!preg_match('/[^0-9.]+/', \$value)) {
115+
return false;
116+
}
117+
118+
if (in_array(\$value, ['null', '1'], true)) {
119+
return false;
120+
}
121+
122+
if (in_array(\$value, ['true', 'false'])) {
123+
return false;
124+
}
125+
126+
return true;
127+
}
128+
"
129+
}
130+
131+
normalizeConfigParamName() {
132+
local value="$1"
133+
134+
php -r "
135+
\$value = str_ireplace('$configPrefix', '', '$value');
136+
\$value = strtolower(\$value);
137+
138+
\$value = preg_replace_callback(
139+
'/_([a-zA-Z])/',
140+
function (\$matches) {
141+
return strtoupper(\$matches[1]);
142+
},
143+
\$value
144+
);
145+
146+
echo \$value;
147+
"
148+
}
149+
150+
normalizeConfigParamValue() {
151+
local value=${1//\'/\\\'}
152+
153+
local isQuoteValue=$(isQuoteValue "$value")
154+
155+
if [ -n "$isQuoteValue" ] && [ "$isQuoteValue" = 1 ]; then
156+
echo "'$value'"
157+
return
158+
fi
159+
160+
echo "$value"
161+
}
162+
# END: entrypoint-utils.sh
163+
164+
applyConfigEnvironments
165+
5166
/usr/local/bin/php /var/www/html/daemon.php
6167

7168
exec "$@"

0 commit comments

Comments
 (0)