ارتقا¶
یک ارتقا شامل انتقال یک پایگاه داده از یک نسخه قدیمیتر به یک نسخه جدیدتر پشتیبانیشده است (بهعنوان مثال، از Odoo 16.0 به Odoo 18.0). ارتقاهای منظم بسیار مهم هستند زیرا هر نسخه قابلیتهای جدید، اصلاحات باگ و وصلههای امنیتی ارائه میدهد. استفاده از یک نسخه پشتیبانیشده بهشدت توصیه میشود. هر نسخه اصلی به مدت سه سال پشتیبانی میشود.
بسته به نوع میزبانی و نسخهٔ Odoo مورد استفاده، ارتقای پایگاه داده میتواند الزامی باشد.
اگر یک پایگاه داده روی نسخهٔ اصلی باشد (مثلاً 16.0، 17.0، 18.0)، ارتقا هر دو سال یکبار الزامی است.
اگر یک پایگاه داده روی نسخهٔ minor باشد (مثلاً 17.1، 17.2، 17.4)، یک ارتقا چند هفته پس از انتشار نسخهٔ بعدی الزامی است. نسخههای minor معمولاً هر دو ماه یکبار منتشر میشوند.
پس از سه سال اولیه پشتیبانی، دو سال دیگر برای تکمیل ارتقا فرصت خواهید داشت. زمانی که ارتقا لازم باشد به شما اطلاع داده میشود.
میتوانید بهطور نامحدود روی همان نسخه بمانید، حتی اگر توصیه نمیشود. توجه داشته باشید که هرچه فاصلهٔ نسخه کمتر باشد، ارتقا باید آسانتر باشد.
چند هفته پیش از اینکه یک ارتقای الزامی بهصورت خودکار انجام شود، در پایگاه دادهٔ خود یک اعلان دریافت خواهید کرد. تا زمانی که مهلت نرسیده، شما کنترل فرایند را در دست دارید.
بهطور مشخص، تیم ارتقای Odoo یک ارتقای آزمایشی silent از هر پایگاه دادهای که باید ارتقا یابد انجام میدهد. اگر آزمون موفق باشد و کمتر از ۲۰ دقیقه طول بکشد، میتوانید مستقیماً ارتقا را از پایگاه داده trigger کنید. اگر آزمون ناموفق باشد، میتوانید با استفاده از مدیریت پایگاه داده یک ارتقا را آزمایش کنید.
زمانی که برای ارتقا دعوت میشوید، اکیداً توصیه میشود ابتدا یک پایگاه دادهٔ آزمایشی ارتقایافته درخواست کنید و زمان صرف آزمایش آن کنید.
اگر پیش از تاریخ سررسید مشخصشده هیچ اقدامی صورت نگیرد، یک ارتقای خودکار به نسخهٔ بعدی فعال میشود.
یک ارتقا موارد زیر را پوشش نمیدهد:
downgrade به نسخهٔ قبلی Odoo
تغییر نسخهها (مثلاً از Community به Enterprise)
تغییر نوع میزبانی (مثلاً از on-premise به Odoo Online)
مهاجرت از یک ERP دیگر به Odoo
هشدار
اگر پایگاه داده شما شامل ماژولهای سفارشی است، تا زمانی که یک نسخه از ماژولهای سفارشی شما برای نسخه هدف Odoo در دسترس نباشد، نمیتواند ارتقا یابد. برای مشتریانی که ماژولهای سفارشی خود را نگهداری میکنند، توصیه میکنیم با درخواست یک پایگاه داده ارتقا یافته همراه با ارتقا کد منبع ماژولهای سفارشی خود فرآیند را موازی کنید.
ارتقا بهطور خلاصه¶
یک پایگاه دادهٔ آزمایشی ارتقایافته درخواست کنید (به دریافت یک پایگاه دادهٔ آزمایشی ارتقایافته مراجعه کنید).
در صورت لزوم، کد منبع ماژول سفارشی خود را ارتقا دهید تا با نسخهٔ جدید Odoo سازگار باشد (به ارتقای یک پایگاهدادهٔ سفارشیشده مراجعه کنید).
پایگاه دادهٔ ارتقایافته را بهطور کامل آزمایش کنید (به آزمایش نسخهٔ جدید پایگاه داده مراجعه کنید).
هر مشکلی که در طول آزمایش مواجه شدید را با رفتن به صفحهٔ پشتیبانی و انتخاب «An issue related to my future upgrade (I am testing an upgrade)» به Odoo گزارش دهید.
پس از حل تمام مشکلات و اطمینان از اینکه پایگاه دادهٔ ارتقایافته میتواند بدون هیچ مشکلی بهعنوان پایگاه دادهٔ اصلی شما استفاده شود، ارتقای پایگاه دادهٔ تولید را برنامهریزی کنید.
ارتقا را برای پایگاه دادهٔ تولید درخواست کنید، آن را در مدت زمانی که فرایند تکمیل میشود غیرقابل دسترس میکند (به ارتقای پایگاه دادهٔ تولید مراجعه کنید).
هر مشکلی که در طول ارتقا مواجه شدید را با رفتن به صفحهٔ پشتیبانی و انتخاب «An issue related to my upgrade (production)» به Odoo گزارش دهید.
دریافت یک پایگاه دادهٔ آزمایشی ارتقایافته¶
صفحه Upgrade پلتفرم اصلی برای درخواست یک پایگاه داده ارتقا یافته است. با این حال، بسته به نوع میزبانی، میتوانید از خط فرمان (on-premise)، database manager Odoo Online یا پروژه Odoo.sh خود ارتقا دهید.
توجه
پلتفرم ارتقا همان Privacy Policy سایر خدمات Odoo.com را دنبال میکند. برای اطلاعات بیشتر دربارهٔ مدیریت دادههای شما از صفحهٔ General Data Protection Regulation بازدید کنید.
برای ارتقای یک پایگاه دادهٔ Odoo Online:
database manager را باز کنید.
پایگاه داده را انتخاب کنید و روی Manage کلیک کنید.
در بخش پایگاه داده روی ارتقا کلیک کنید.
در پاپآپ:
نسخهای از Odoo را که میخواهید به آن ارتقا دهید، معمولاً آخرین نسخه، انتخاب کنید.
Email to notify را وارد کنید که لینکی به پایگاه دادهٔ ارتقایافته را دریافت خواهد کرد.
هدف ارتقا را انتخاب کنید که برای اولین درخواست ارتقای شما بهصورت خودکار روی تست تنظیم میشود.
روی ارتقا کلیک کنید.
در database manager، دکمهٔ اتصال با یک دکمهٔ غیرقابلکلیک Upgrading... تا تکمیل جایگزین میشود. پس از موفقیت فرایند، یک ایمیل حاوی لینک به پایگاه دادهٔ ارتقایافتهٔ آزمایشی به نشانی ارائهشده ارسال میشود. پایگاه دادهٔ آزمایشی همچنین از طریق database manager با کلیک روی دکمهٔ (caret down) پیش از نام پایگاه داده برای نمایش پایگاه دادهٔ آزمایشی و سپس کلیک روی اتصال قابل دسترسی است.
Odoo.sh با پلتفرم ارتقا یکپارچه شده است تا فرایند ارتقا را ساده کند.
سپس آخرین پشتیبان خودکار روزانهٔ تولید به پلتفرم ارتقا ارسال میشود.
هنگامی که پلتفرم ارتقا، ارتقای پشتیبان و آپلود آن روی شاخه را به پایان رساند، در یک حالت ویژه قرار میگیرد: هر بار که یک commit روی شاخه push میشود، یک عملیات restore پشتیبانِ ارتقایافته و یک بهروزرسانی همهٔ ماژولهای سفارشی رخ میدهد. این به شما امکان میدهد ماژولهای سفارشی خود را روی یک کپی دستنخورده از پایگاه دادهٔ ارتقایافته آزمایش کنید. فایل لاگ فرایند ارتقا را میتوانید در staging build تازه ارتقایافتهٔ خود با مراجعه به ~/logs/upgrade.log پیدا کنید.
مهم
در پایگاههای دادهای که ماژولهای سفارشی نصب شده، کد منبع آنها باید پیش از انجام ارتقا با نسخهٔ هدف Odoo بهروز باشد. اگر هیچ کدام وجود نداشته باشد، حالت «بهروزرسانی هنگام commit» نادیده گرفته میشود، پایگاه دادهٔ ارتقایافته بهمحض انتقال از پلتفرم ارتقا ساخته میشود و حالت ارتقا خارج میشود.
برای اطلاعات بیشتر، صفحهٔ ارتقای یک پایگاهدادهٔ سفارشیشده را ببینید.
فرایند استاندارد ارتقا را میتوان با وارد کردن خط فرمان زیر روی دستگاهی که پایگاه داده در آن میزبانی میشود آغاز کرد:
$ python <(curl -s https://upgrade.odoo.com/upgrade) test -d <your db name> -t <target version>
توجه
این دستور برخی نیازمندیها برای محیطی که در آن اجرا میشود دارد:
برخی دستورات خارجی که باید توسط سیستمعامل ارائه شوند، معمولاً در هر توزیع Linux (از جمله WSL) یافت میشوند. اگر یک یا چند مورد از آنها وجود نداشته باشد یک خطا نمایش داده میشود.
کاربر سیستمی که دستور را اجرا میکند باید با دسترسی به پایگاه داده پیکربندی شود. برای این نیازمندی، لطفاً به مستندات PostgreSQL در مورد client environment یا client password file مراجعه کنید.
اسکریپت باید بتواند به یک یا چند سرور پلتفرم ارتقا هم روی پورت TCP 443 و هم به هر پورت TCP تصادفی در بازهٔ بین 32768 و 60999 دسترسی پیدا کند. این میتواند با firewall محدودکنندهٔ شما در تعارض باشد و ممکن است نیاز به افزودن یک استثنا به پیکربندی firewall داشته باشد.
از دستور زیر میتوان برای نمایش راهنمای کلی و دستورات اصلی استفاده کرد:
$ python <(curl -s https://upgrade.odoo.com/upgrade) --help
یک پایگاه دادهٔ آزمایشی ارتقایافته را میتوان همچنین از طریق صفحهٔ Upgrade درخواست کرد.
مهم
در پایگاههای دادهای که ماژولهای سفارشی نصب شده، کد منبع آنها باید پیش از انجام ارتقا با نسخهٔ هدف Odoo بهروز باشد. ارتقای یک پایگاهدادهٔ سفارشیشده را ببینید.
توجه
به دلایل امنیتی، تنها شخصی که درخواست ارتقا را ثبت کرده میتواند آن را دانلود کند.
به دلایل ذخیرهسازی، کپی پایگاه داده بدون filestore به سرور ارتقا ارسال میشود. بنابراین، پایگاه دادهٔ ارتقایافته شامل filestore تولید نیست.
پیش از restore پایگاه دادهٔ ارتقایافته، filestore آن باید با filestore تولید merge شود تا بتواند آزمایشها را در همان شرایطی که در نسخهٔ جدید خواهد بود انجام دهد.
پایگاه دادهٔ ارتقایافته شامل موارد زیر است:
یک فایل
dump.sqlکه شامل پایگاه دادهٔ ارتقایافته استیک پوشهٔ
filestoreکه شامل فایلهای استخراجشده از رکوردهای پایگاه داده به پیوستها (در صورت وجود) و فایلهای Odoo استاندارد جدید از نسخهٔ هدف Odoo (مثلاً تصاویر جدید، آیکونها، پرداختها) است.
توجه
اگر میخواهید یک ارتقا را بیش از یکبار آزمایش کنید، میتوانید چندین پایگاه دادهٔ آزمایشی درخواست دهید.
توجه
هنگامی که یک درخواست ارتقا تکمیل میشود، یک گزارش ارتقا به ایمیل ارتقای موفق پیوست میشود و در اپلیکیشن گفتگو برای کاربرانی که عضو گروه «Administration / تنظیمات» هستند در دسترس قرار میگیرد. این گزارش اطلاعات مهمی دربارهٔ تغییرات معرفیشده توسط نسخهٔ جدید ارائه میدهد.
آزمایش نسخهٔ جدید پایگاه داده¶
آزمایش پایگاه دادهٔ آزمایشی ارتقایافته ضروری است تا اطمینان حاصل شود در فعالیتهای روزمرهٔ خود به دلیل تغییری در نماها، رفتار یا یک پیام خطا پس از زنده شدن ارتقا گیر نمیافتید.
توجه
پایگاههای دادهٔ آزمایشی خنثی میشوند و برخی ویژگیها غیرفعال میشوند تا تأثیری بر پایگاه دادهٔ تولید نداشته باشند:
اقدامات برنامهریزیشده غیرفعال هستند.
سرورهای ایمیل خروجی با بایگانی موارد موجود و افزودن یک سرور ساختگی غیرفعال میشوند.
ارائهدهندگان پرداخت و شرکتهای حمل، به محیط آزمایش بازنشانی میشوند.
همگامسازی بانکی غیرفعال است. در صورتی که میخواهید همگامسازی را آزمایش کنید، با ارائهدهندهٔ همگامسازی بانکی خود تماس بگیرید تا اعتبارنامههای sandbox دریافت کنید.
آزمایش هرچه بیشتر جریانهای کاری کسبوکار شما اکیداً توصیه میشود تا اطمینان حاصل شود بهدرستی کار میکنند و با نسخهٔ جدید آشنایی بیشتری پیدا کنید.
چکلیست آزمون پایه
آیا نماهایی وجود دارند که در پایگاه دادهٔ آزمایشی شما غیرفعالاند اما در پایگاه دادهٔ تولید فعالاند؟
آیا نماهای معمول شما هنوز بهدرستی نمایش داده میشوند؟
آیا گزارشهای شما (فاکتور، سفارش فروش و غیره) بهدرستی تولید میشوند؟
آیا صفحات وبسایت شما بهدرستی کار میکنند؟
آیا میتوانید رکوردها را ایجاد و اصلاح کنید؟ (سفارشهای فروش، فاکتورها، خریدها، کاربران، مخاطبین، شرکتها و غیره)
آیا مشکلی با قالبهای ایمیل شما وجود دارد؟
آیا مشکلی با ترجمههای ذخیرهشده وجود دارد؟
آیا فیلترهای جستجوی شما هنوز حضور دارند؟
آیا میتوانید دادههای خود را خروجی بگیرید؟
بررسی یک محصول تصادفی در کاتالوگ محصول خود و مقایسهٔ دادههای آزمایش و تولید آن برای تأیید اینکه همه چیز یکسان است (دستهٔ محصول، قیمت فروش، قیمت تمامشده، فروشنده، حسابها، مسیرها و غیره).
خرید این محصول (اپلیکیشن خرید).
تأیید دریافت این محصول (اپلیکیشن انبار).
بررسی اینکه آیا مسیر دریافت این محصول در پایگاه دادهٔ تولید شما یکسان است (اپلیکیشن انبار).
فروش این محصول (اپلیکیشن فروش) به یک مشتری تصادفی.
باز کردن پایگاه دادهٔ مشتریان شما (اپلیکیشن مخاطبین)، انتخاب یک مشتری (یا شرکت) و بررسی دادههای آن.
حمل این محصول (اپلیکیشن انبار).
بررسی اینکه آیا مسیر حمل این محصول مانند پایگاه دادهٔ تولید شما است (اپلیکیشن انبار).
اعتبارسنجی یک فاکتور مشتری (اپلیکیشن صدور فاکتور یا حسابداری).
بستانکار کردن فاکتور (صدور یک credit note) و بررسی اینکه آیا رفتار آن مانند پایگاه دادهٔ تولید شما است.
بررسی نتایج گزارشهای شما (اپلیکیشن حسابداری).
بررسی تصادفی مالیاتها، ارزها، حسابهای بانکی و سال مالی شما (اپلیکیشن حسابداری).
ثبت یک سفارش آنلاین (اپلیکیشن وبسایت) از انتخاب محصول در فروشگاه شما تا فرایند پرداخت و بررسی اینکه آیا همه چیز مانند پایگاه دادهٔ تولید شما رفتار میکند.
این فهرست جامع نیست. بر اساس استفادهٔ خود از Odoo، مثال را به اپهای دیگرتان تعمیم دهید.
اگر در حین آزمایش پایگاه دادهٔ آزمایشی ارتقایافته با مشکلی مواجه شدید، میتوانید با رفتن به صفحهٔ پشتیبانی و انتخاب «An issue related to my future upgrade (I am testing an upgrade)» از Odoo درخواست کمک کنید. در هر صورت، گزارش هر مشکلی که در طول آزمایش رخ داده ضروری است تا پیش از ارتقای پایگاه دادهٔ تولید اصلاح شود.
ممکن است در طول آزمایش با تفاوتهای قابلتوجهی با نماها، ویژگیها، فیلدها و مدلهای استاندارد مواجه شوید. این تغییرات نمیتوانند بهصورت موردی برگردانده شوند. با این حال، اگر یک تغییر اعمالشده توسط نسخهٔ جدید یک سفارشیسازی را بشکند، مسئولیت سازگارسازی ماژول سفارشی شما با نسخهٔ جدید Odoo بر عهدهٔ نگهدارندهٔ آن است.
نکته
آزمایش موارد زیر را فراموش نکنید:
یکپارچهسازیها با نرمافزارهای بیرونی (EDI، APIها و غیره)
گردشهای کار بین اپهای مختلف (فروش آنلاین با تجارت الکترونیک، تبدیل یک سرنخ تا سفارش فروش، تحویل محصولات و غیره)
خروجیهای داده
اقدامات خودکار
اقدامات سرور در منوی action روی نماهای فرم، همچنین با انتخاب چندین رکورد در نماهای فهرست
ارتقای پایگاه دادهٔ تولید¶
پس از تکمیل آزمونها و اطمینان از اینکه پایگاه دادهٔ ارتقایافته میتواند بدون هیچ مشکلی بهعنوان پایگاه دادهٔ اصلی شما استفاده شود، زمان برنامهریزی روز go-live است.
پایگاه دادهٔ تولید شما در طول ارتقای آن غیرقابل دسترس خواهد بود. بنابراین توصیه میکنیم ارتقا را در زمانی که استفاده از پایگاه داده حداقل است برنامهریزی کنید.
از آنجا که اسکریپتهای استاندارد ارتقا و پایگاه دادهٔ شما بهطور مداوم در حال تکامل هستند، همچنین توصیه میشود بهطور مکرر یک پایگاه دادهٔ آزمایشی ارتقایافتهٔ دیگر درخواست کنید تا اطمینان حاصل شود فرایند ارتقا همچنان موفق است، بهویژه اگر تکمیل آن زمان زیادی میبرد. همچنین توصیه میشود که فرایند ارتقا را روز پیش از ارتقای پایگاه دادهٔ تولید بهطور کامل تمرین کنید.
مهم
ورود به تولید بدون آزمایش قبلی میتواند منجر به موارد زیر شود:
ناتوانی کاربران در تطبیق با تغییرات و ویژگیهای جدید
اختلال در کسبوکار (مثلاً از دست رفتن امکان اعتبارسنجی یک اقدام)
تجربهٔ ضعیف مشتری (مثلاً یک وبسایت تجارت الکترونیک که درست کار نمیکند)
فرایند ارتقای یک پایگاه دادهٔ تولیدی شبیه ارتقای یک پایگاه دادهٔ آزمایشی است، اما با چند استثنا.
فرایند مشابه دریافت یک پایگاه دادهٔ آزمایشی ارتقایافته است، بهجز برای گزینهٔ purpose که باید به جای تست روی تولید تنظیم شود.
هشدار
هنگامی که ارتقا درخواست میشود، پایگاه داده تا پایان ارتقا غیرقابل دسترس خواهد بود. پس از تکمیل فرایند، بازگشت به نسخهٔ قبلی امکانپذیر نیست.
این فرایند مشابه دریافت یک پایگاه دادهٔ آزمایشی ارتقایافته در شاخهٔ تولید است.
فرایند بهمحض اعمال یک commit جدید روی شاخه trigger میشود. این اجازه میدهد فرایند ارتقا با استقرار کد منبع ارتقایافتهٔ ماژولهای سفارشی همگامسازی شود.
مهم
پایگاه داده در طول فرایند غیرقابل دسترس است. اگر چیزی اشتباه پیش برود، پلتفرم بهصورت خودکار ارتقا را برمیگرداند، همانطور که برای یک بهروزرسانی معمولی این کار را میکند. در صورت موفقیت، یک پشتیبان از پایگاه داده گرفته میشود.
برای تکمیل کل فرآیند ارتقا، بهروزرسانی ماژولهای سفارشی شما باید موفقیتآمیز باشد. قبل از امتحان آن در production، اطمینان حاصل کنید وضعیت ارتقای staging شما successful است. اطلاعات بیشتر در مورد نحوه ارتقا ماژولهای سفارشی خود را میتوانید در ارتقای یک پایگاهدادهٔ سفارشیشده بیابید.
دستور ارتقای یک پایگاه داده به تولید مشابه دستور ارتقای یک پایگاه دادهٔ آزمایشی است بهجز برای آرگومان test که باید با production جایگزین شود:
$ python <(curl -s https://upgrade.odoo.com/upgrade) production -d <your db name> -t <target version>
یک پایگاه دادهٔ تولیدی ارتقایافته را میتوان همچنین از طریق صفحهٔ Upgrade درخواست کرد.
پس از آپلود پایگاه داده، هر تغییری در پایگاه دادهٔ تولیدی شما در پایگاه دادهٔ ارتقایافتهٔ شما حضور نخواهد داشت. به همین دلیل توصیه میکنیم در طول فرایند ارتقا از آن استفاده نکنید.
مهم
هنگام درخواست یک پایگاه دادهٔ ارتقایافته برای اهداف تولید، کپی بدون filestore ارسال میشود. بنابراین، filestore پایگاه دادهٔ ارتقایافته باید پیش از این با filestore تولید merge شود.
در صورت بروز مشکلی با پایگاه دادهٔ تولید خود، میتوانید با رفتن به صفحهٔ پشتیبانی و انتخاب «An issue related to my upgrade (production)» از Odoo درخواست کمک کنید.
توافقنامهٔ سطح خدمات (SLA)¶
با Odoo Enterprise، ارتقای یک پایگاه داده به آخرین نسخهٔ Odoo رایگان است، از جمله هر پشتیبانی موردنیاز برای اصلاح ناسازگاریهای احتمالی در پایگاه دادهٔ ارتقایافته.
اطلاعات دربارهٔ خدمات ارتقای موجود در Enterprise Licence در Odoo Enterprise Subscription Agreement در دسترس است. با این حال، این بخش روشن میکند که چه خدمات ارتقایی ارائه میشود.
خدمات ارتقای پوششدادهشده توسط توافقنامهٔ سطح خدمات¶
پایگاههای داده میزبانیشده در پلتفرمهای ابری Odoo (Odoo Online و Odoo.sh) یا self-hosted (On-Premise) میتوانند در همه حال از خدمات ارتقا بهرهمند شوند برای:
ارتقای تمام اپلیکیشنهای استاندارد؛
ارتقای تمام سفارشیسازیهای ایجادشده با اپلیکیشن استودیو، تا زمانی که استودیو همچنان نصب است و اشتراک مربوطه همچنان فعال است؛ و
ارتقای تمام توسعهها و سفارشیسازیهای پوششدادهشده توسط یک اشتراک نگهداری سفارشیسازیها.
خدمات ارتقا به تبدیل و تطبیق فنی یک پایگاه داده (ماژولها و دادههای استاندارد) محدود است تا با نسخهٔ هدف ارتقا سازگار شود.
خدمات ارتقایی که توسط SLA پوشش داده نمیشوند¶
خدمات مرتبط با ارتقای زیر شامل نمیشوند:
پاکسازی دادهها و پیکربندیهای موجود در زمان ارتقا؛
ارتقای ماژولهای اضافی پوششدادهنشده توسط یک قرارداد نگهداری که بهصورت داخلی یا توسط اشخاص ثالث، از جمله شرکای Odoo، ایجاد شدهاند؛ و
آموزش استفاده از ویژگیها و گردشهای کار نسخهٔ ارتقایافته.
همچنین ببینید