Rollback
در پروسه توسعه و استقرار پروژههای نرمافزاری یکی از مسائلی که اهمیت دارد stable ماندن نسخه جدید و دسترسیپذیری آن است.
اما نکتهای که وجود دارد این است که اشتباه انسانی همیشه وجود دارد و گریزی از آن نیست، اما میتوان با راه حلهای متفاوتی هزینه جبران این قبیل اشتباهات را کم کرد.
یکی از این راهها Service Rollback
است.
Service Rollback
سکوی ابری فندق تاریخچهای از Deploymentهای هر سرویس را ذخیره و نگهداری میکند تا شما با استفاده از آن بتوانید در صورت نیاز به هر نسخهای که میخواهید عملیات Rollback را انجام داده و آن نسخه را جایگزین نسخه فعلی کنید.
برای این منظور شما ابتدا باید توسط دستور زیر لیست تاریخچه Deploymentهای مربوط به سرویس فعلی را دریافت کنید.
پارامترهایی که برای این دستور استفاده شده است عبارتند از:
name--
برای مشخص کردن نام سرویسی است که قصد دارید تاریخچه Deploymentهای آن را مشاهده کنید.
بعد از آنکه لیست تاریخچه برای شما نمایش داده شد، با استفاده از دستور زیر میتوایند عملیات Rollback را برای سرویس مورد نظر انجام دهید.
پارامترهایی که برای این دستور استفاده شده است عبارتند از:
name--
برای مشخص کردن نام سرویسی که قصد دارید عملیات Rollback بر روی آن انجام شود.
version--
همان شناسه تاریخچه مربوط به سرویس است که در جدول نمایش داده شده با تیتر History Version
مشخص شده است.
نکته
توجه داشته باشید که Rollback یک راه حل موقت است و بهتر است بعد از انجام آن، مشکل نسخه جدید را برطرف کرده و سریعا جایگزین نسخه فعلی کنید.
هشدار
همچنین به این موضوع توجه کنید که نسخههایی که در تاریخچه مشخص شدهاند، لزوما نسخههای stable نیستند بلکه تاریخچهای از Deploymentهای شما هستند و این وظیفه کاربر است که قبل از انجام Rollback، مانیفست نسخه مورد نظر را بررسی کند.
اگر در لیست تاریخچههای Deployment که برای شما نمایش داده شده است، مطمئن هستید که نسخهای معیوب یا باگی به شما نمایش داده شده است، این امکان را فراهم کردهایم تا آن نسخه را برای همیشه حذف کنید تا در نمایشهای بعدی باعث ایجاد اشتباه در روند Rollback نشود.
برای این منظور میتوانید از دستور زیر استفاده کنید:
پارامترهایی که برای این دستور استفاده شده است عبارتند از:
name--
برای مشخص کردن نام سرویسی که قصد دارید یکی از تاریخچههای آن را حذف کنید.
version--
همان شناسه تاریخچه مربوط به سرویس است که در جدول نمایش داده شده با تیتر History Version
مشخص شده است.
هشدار
توجه داشته باشید که حذف کردن تاریخچه یک عملیات غیرقابل بازگشت است و نسخه حذف شده برای همیشه از سکوی ابری فندق حذف خواهد شد؛ لذا قبل از انجام عمل حذف، از تصمیم خود اطمینان حاصل فرمایید.
مدیریت Service History و Rollback
کلیه دستورات مربوط به بخش Service History
و Rollback
در ادامه توضیح داده شدهاند.
fandogh-cli
شما همچنین می توانید با وارد کردن دستورfandogh service --help
و fandogh service histoy --help
در fandogh-cli، لیست دستورات موجود را مشاهده کنید.
Service History
list
با استفاده از دستور fandogh service history list --name service_name
میتوانید یک secret ایجاد کنید.
name--
پارامتر name نمایانگر نام سرویسی است که میخواهید تاریخچه Deploymentهای آن را مشاهده کنید.
delete
با استفاده از دستور fandogh service history delete --name service_name --version history_version
میتوانید یک نسخه مشخص از Deployment سرویسی که نام آن را وارد کردهاید، حذف کنید.
name--
پارامتر name نمایانگر نام سرویسی است که میخواهید نسخهای مشخص از تاریخچه Deploymentهای آن را حذف کنید.
version--
پارامتر version نمایانگر نسخهای از Deployment است که میخواهید آن را حذف کنید.
Rollback
rollback
با استفاده از دستور fandogh service rollback --name service_name --version history_version
میتوانید به نسخه دلخواه عملیات Rollback را انجام دهید.
name--
پارامتر name نمایانگر نام سرویسی است که میخواهید عملیات Rollback را بر روی آن انجام دهید.
version--
پارامتر version نمایانگر نسخهای از Deployment است که میخواهید جایگزین نسخه فعلی شود.