1+ #! /usr/bin/env bash
2+
3+ set -eo pipefail
4+
5+ echo " ---> WKHTMLTOPDF Buildpack"
6+
7+ LAYERS_DIR=$1
8+ ENV_DIR=" $2 /env"
9+ PLAN_PATH=" $3 "
10+
11+ if [[ -f " $ENV_DIR /WKHTMLTOPDF_VERSION" ]]; then
12+ WKHTMLTOPDF_VERSION=$( cat " $ENV_DIR /WKHTMLTOPDF_VERSION" )
13+ else
14+ WKHTMLTOPDF_VERSION=" 0.12.3"
15+ fi
16+
17+ WKHTMLTOPDF_LAYER=" $LAYERS_DIR /wkhtmltopdf"
18+ BIN_PATH=" $WKHTMLTOPDF_LAYER /bin"
19+ LIB_PATH=" $WKHTMLTOPDF_LAYER /lib"
20+ TMP_PATH=" $WKHTMLTOPDF_LAYER /tmp"
21+ mkdir -p $BIN_PATH $LIB_PATH $TMP_PATH
22+
23+ echo " WKHTMLTOPDF_VERSION: $WKHTMLTOPDF_VERSION "
24+
25+ WKHTMLTOPDF_URL=" https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/${WKHTMLTOPDF_VERSION} /wkhtmltox-${WKHTMLTOPDF_VERSION} _linux-generic-amd64.tar.xz"
26+ WKHTMLTOPDF_TAR=" ./wkhtmltox.tar.xz"
27+ WKHTMLTOPDF_PATH=" $TMP_PATH /wkhtmltox"
28+ WKHTMLTOPDF_BINARIES=" $WKHTMLTOPDF_PATH /bin"
29+ WKHTMLTOPDF_LIBS=" $WKHTMLTOPDF_PATH /lib"
30+
31+ BIN_DIR=$( cd $( dirname $0 ) ; pwd)
32+
33+ echo " -----> Downloading wkhtmltopdf tar"
34+ wget -q -O $WKHTMLTOPDF_TAR $WKHTMLTOPDF_URL
35+
36+ echo " -----> Unpacking tar"
37+ tar -xf $WKHTMLTOPDF_TAR -C $TMP_PATH
38+
39+ echo " -----> Setting permissions"
40+ chmod +x $WKHTMLTOPDF_BINARIES /*
41+
42+ echo " -----> Moving binaries to the right place"
43+ mv $WKHTMLTOPDF_BINARIES /* $BIN_PATH /
44+
45+ echo " -----> Moving libs to the right place"
46+ mv $WKHTMLTOPDF_LIBS /* $LIB_PATH /
47+
48+ # echo "-----> Cleaning up"
49+ # rm -rf $WKHTMLTOPDF_PATH
50+
51+ # # Write layer file, making wkhtmltopdf available on launch
52+ echo -e ' [types]\nlaunch = true' > " $LAYERS_DIR /wkhtmltopdf.toml"
53+
54+ # # Write layer file, making wkhtmltopdf available on launch
55+ export PATH=$BIN_PATH :$PATH
56+ echo $LIB_PATH
57+ echo $BIN_PATH
58+ export LD_LIBRARY_PATH=${LD_LIBRARY_PATH: +${LD_LIBRARY_PATH} : } $LIB_PATH
0 commit comments