द्वारा उपयोग किए जाने वाले एक्जिक्यूटिव को इंस्टॉल करना मैं हेरोकू पर M2Crypto इंस्टॉल करने का प्रयास कर रहा हूं। यह एसडब्ल्यूआईजी स्थापित होने पर निर्भर करता है।हेरोकू बिल्डपैक - पाइथन पैकेज
मैंने custom compiled swig
executable और custom buildpack बनाया है।
मैं फिर git push
हेरोोकू तक अपना कोड अप करता हूं, कस्टम बिल्डपैक SWIG इंस्टॉल करता है तो M2Crypto इंस्टॉल करने का प्रयास करता है लेकिन विफल रहता है क्योंकि यह swig
नहीं ढूंढ सकता है।
# Install SWIG
if [ ! -d $CACHE_DIR/swig ]; then
cd $BUILD_DIR
echo "-----> Fetching and installing SWIG 2"
curl -O https://s3.amazonaws.com/guybowden/swig.tar.gz >/dev/null 2>&1
echo "-----> Installing ..."
tar xzvf swig.tar.gz >/dev/null 2>&1
mv swig $CACHE_DIR/swig
rm swig.tar.gz
echo "SWIG installed" | indent
fi
mkdir -p .paybox
cp -R $CACHE_DIR/swig .paybox
echo "updating path..." | indent
PATH=$PATH:/app/.paybox/swig/bin/
export PATH
echo $PATH | indent
echo "setting SWIG_LIB environment var"
export SWIG_LIB=/app/.paybox/swig/share/swig/2.0.5/
यह तब होता है किसी भी pip install
से पहले आदेशों चलाए जा रहे हैं:
यह buildpack अनुकूलन है।
यदि मैं heroku run bash
और मैन्युअल रूप से source .heroku/venv/bin/activate && pip install M2Crypto
चलाता हूं तो यह कोई समस्या नहीं स्थापित करता है और मेरा ऐप उस उदाहरण के जीवनकाल के लिए बैश प्रॉम्प्ट के अंदर काम करता है।
मुझे लगता है कि शुरुआती pip install -r requirements
रनों के दौरान पैथ सेटिंग में कोई समस्या है ... कोई विचार?
धन्यवाद! आप इसे पोस्ट करने के लिए! महान सवाल, क्योंकि मैं भी M2Crypto स्थापित करने की कोशिश कर रहा हूं। इससे भी बेहतर: अपना बिनपैक बनाने और साझा करने के लिए धन्यवाद! आपको अपना उत्तर नीचे पोस्ट करना चाहिए ताकि आपको इसके लिए क्रेडिट मिल सके। मैं खुशी से आपको उखाड़ फेंक दूंगा :) – culix
शानदार - उपर्युक्त के लिए धन्यवाद! – jvc26
यह बहुत अच्छा काम कर रहा है। दुर्भाग्य से यह मेरे लिए काम करना बंद कर दिया। इसलिए मैंने आधिकारिक हेरोकू-बिल्डपैक-पायथन को क्लोन किया और एसडब्ल्यूआईजी के लिए सुई लाइनों को जोड़ा: https://github.com/CulturePlex/heroku-buildpack-python –