blob: 564bdb6f7b5f27a47729ba15e761f34467fcc5ef (
plain) (
blame)
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
|
#!/bin/sh
HERE=$(dirname $(readlink -f ${0}))/src;
KEEP=html; # output directory
TEMP=$(mktemp -d);
chmod 755 ${TEMP};
##
# Build options.
#
SASS=0;
LOGO=0;
HTML=0;
for arg; do
case "${arg}" in
sass) SASS=1; ;;
logo) LOGO=1; ;;
html) HTML=1; ;;
esac
done
##
# CSS
#
if test ${SASS} -eq 1; then
(cd assets/css && ./compile.sh)
fi # SASS
##
# Logo
#
if test ${LOGO} -eq 1; then
(cd assets/images && ./polyguin.sh)
fi # LOGO
if test ${HTML} -eq 1; then
#===============================================================
docker run -v ${HERE}:${HERE} -e HERE=${HERE} -v ${TEMP}:${TEMP} -e TEMP=${TEMP} --rm -i alpine:3.17 <<'EOF'
apk add findutils imagemagick;
#===============================================================
##
# .psd --> .jpg ONLY in 'src/'
#
find ${HERE} -type f -name "*.psd" | while read k; do
f="${k#*${HERE}}";
mkdir -p "${TEMP}${f%/*}";
convert "${k}[0]" -strip "${TEMP}${f%*.psd}.jpg";
done
##
# template injection
#
find ${HERE} -type f -name "*.html" | while read k; do
f="${k#*${HERE}}";
mkdir -p "${TEMP}${f%/*}";
sed > "${TEMP}${f}" "${k}" \
-e "/__HEADER__/r ${HERE}/header.fill" \
-e 's/__HEADER__//g' \
-e "/__FOOTER__/r ${HERE}/footer.fill" \
-e 's/__FOOTER__//g' \
-e "/__INDEPENDENT_SHADE__/r ${HERE}/independent.shade.fill" \
-e 's/__INDEPENDENT_SHADE__//g' \
-e "/__INDEPENDENT_WHITE__/r ${HERE}/independent.white.fill" \
-e 's/__INDEPENDENT_WHITE__//g' \
;
done
chown -R 1000:1000 ${TEMP};
#===============================================================
EOF
#===============================================================
##
# static assets
#
cp -R ${HERE}/../assets ${TEMP};
##
# robots.txt
#
cp ${HERE}/robots.txt ${TEMP};
##
# publish
#
rm -fr ${HTML};
mv ${TEMP} ${KEEP};
fi # HTML
|