লাম্বডায় এনপিএম মডিউলগুলি .zipঅন্তর্ভুক্ত করার জন্য একটি ফাইল প্রয়োজন । এবং আপনার সত্যিই ল্যাম্বডা ওয়েব সম্পাদককে কোনও কিছুর জন্য ব্যবহার করা উচিত নয় - যেমন কোনও উত্পাদন কোডের মতো আপনার স্থানীয়ভাবে বিকাশ ঘটানো উচিত, গিটকে প্রতিশ্রুতিবদ্ধ করা ইত্যাদি should
আমার ফ্লাই:
1) আমার লাম্বদা ফাংশনগুলি সাধারণত কোনও বৃহত প্রকল্পের জন্য সহায়ক উপযোগী হয়, তাই আমি তাদের বাড়ির জন্য একটি / আওস / ল্যাম্বডাস ডিরেক্টরি তৈরি করি।
2) প্রতিটি স্বতন্ত্র ল্যাম্বদা ডিরেক্টরিতে ফাংশন কোড, একটি প্যাকেজ.জসন ফাইল নির্ভরতা নির্ভর করে এবং একটি / নোড_মডিউলগুলি উপ- ডিরেক্টরি অন্তর্ভুক্ত করে একটি index.js ফাইল থাকে । (প্যাকেজ.জেসন ফাইলটি ল্যাম্বদা ব্যবহার করে না, এটি কেবলমাত্র আমরা স্থানীয়ভাবে npm installকমান্ডটি চালাতে পারি ))
package.json:
{
"name": "my_lambda",
"dependencies": {
"svg2png": "^4.1.1"
}
}
3) আমি সমস্ত নোড_মডিউল ডিরেক্টরি এবং জিপ ফাইলগুলিকে গিগাইনগোর করি যাতে এনপিএম ইনস্টল এবং জিপিং থেকে উত্পন্ন ফাইলগুলি আমাদের রেপোকে বিশৃঙ্খলা না করে।
.gitignore:
# Ignore node_modules
**/node_modules
# Ignore any zip files
*.zip
4) আমি npm installমডিউল ইনস্টল করার জন্য ডিরেক্টরি থেকে চালানো , এবং স্থানীয়ভাবে ফাংশন বিকাশ / পরীক্ষা।
5) আমি লাম্বদা ডিরেক্টরিটি জিপ করি এবং কনসোলের মাধ্যমে এটি আপলোড করি।
( গুরুত্বপূর্ণ: ফাইলটি জিপ করতে ফাইন্ডারের কাছ থেকে ম্যাকের 'কমপ্রেস' ইউটিলিটিটি ব্যবহার করবেন না! আপনাকে অবশ্যই ডিরেক্টরিটির মূল থেকে সিএলআই থেকে জিপ চালাতে হবে - এখানে দেখুন )
zip -r ../yourfilename.zip *
বিঃদ্রঃ:
আপনি যদি ম্যাক এ স্থানীয়ভাবে নোড মডিউলগুলি ইনস্টল করেন তবে আপনি সমস্যার মধ্যে পড়তে পারেন, যেমন ল্যাম্বডা-লিনাক্স-ভিত্তিক পরিবেশে স্থাপনের সময় কিছু প্ল্যাটফর্ম-নির্দিষ্ট মডিউল ব্যর্থ হতে পারে। ( Https://stackoverflow.com/a/29994851/165673 দেখুন )
সমাধানটি হ'ল এএমআই থেকে চালু হওয়া ইসি 2 ইনস্ট্যান্সের মডিউলগুলি সংকলন করা যা আপনি ব্যবহার করছেন ল্যাম্বদা নোড.জেএস রানটাইমের সাথে সামঞ্জস্য করে ( ল্যাম্বদা রানটাইম এবং তাদের সম্পর্কিত এএমআইয়ের এই তালিকাটি দেখুন )।
নোড.জেএস-এডাব্লুএস ল্যাম্বদা এডাব্লুএস ল্যাম্বদা ডিপ্লোয়মেন্ট প্যাকেজটিও দেখুন