ابزار توسعهدهنده Azure جدید مایکروسافت، توسعه در ابر Azure را از استقرار محیطهای توسعهدهنده تا اجرای CI/CD ساده میکند.
وقتی صحبت از فناوریهای جدید و پروژههای جدید به میان میآید، اغلب در مورد منحنیهای یادگیری صحبت میکنیم، منحنی در ابتدا شیب دار اما صاف را تصور میکنیم که در نهایت یکسان میشود. البته در عمل بیشتر یک سری مراحل است که برخی از آنها مانند صخره هستند. یکی از بالاترین این مراحل، ایستادن محیط های هدف و قرار دادن داربست کد با کتابخانه ها، SDK ها و پیش نیازهای مورد نیاز ما است.
هر مرحله یک تاخیر است—ساعتها یا حتی روزهایی که میتوانیم کد بنویسیم و مشکلات را حل کنیم. این مسئله ای است که برای دستگاه های توسعه خودمان به اندازه کافی سخت است، اما زمانی که با پلتفرم های بومی ابری کار می کنیم که اکنون مسئول ارائه زیرساخت های مجازی و هماهنگ سازی کانتینرهای ایستاده هستیم، پیچیده تر می شود. ممکن است ما مسئول زیرساخت نباشیم، اما اگر میخواهیم کد مدرن را به سرعت و کارآمد ارائه کنیم، باید هم عملیات پلتفرم و هم برنامه کاربردی را درک کنیم، به خصوص اگر در آینده آن کد را به تیمهای عملیاتی تحویل دهیم.
ما به راهی برای مقابله سریع با ابزارها و خدماتی که برای پشتیبانی از پلتفرم های توسعه خود نیاز داریم نیاز داریم. ما به رویکردی نیاز داریم که بهترین شیوه ها را هم از نظر زیرساخت و هم از نظر محیط امنیتی آن تجسم کند. ما به عنوان توسعهدهندگان، آموزش ندیدهایم که به این چیزها فکر کنیم. ما به تیم های عملیاتی و امنیتی متکی هستیم تا اینها را برای ما پیاده سازی کنند. اگر میتوانستیم این فرآیند را به صورت سلفسرویس کنیم، آن منابع گرانقیمت بهتر میتوانستند بیشتر بر روی ساختن و استقرار محیطهای توسعه متمرکز شوند. آنها می توانند روی اجرای و ایمن سازی خدمات زنده تمرکز کنند.
معرفی Azure Developer CLI
مایکروسافت اخیراً یک پیشنمایش عمومی برای ابزاری اعلام کرده است که برای این کار طراحی شده است، همراهی با Azure CLI آشنا که بسیار شبیه به پیشنویس متمرکز بر Kubernetes عمل میکند و تمام ویژگیهای مورد نیاز شما را ارائه میکند. برای شروع کدنویسی برخلاف Draft، CLI برنامهنویس Azure یک خیلی بیشتر، با ابزارهایی که از کدنویسی، فرآیند ساخت، استقرار و نظارت بر برنامه ها پشتیبانی می کنند و همچنین راه اندازی و اجرای CI/CD (ادغام مداوم و تحویل مداوم) را در طول چرخه عمر توسعه نرم افزار پشتیبانی می کند. Azure DevOps برای اطمینان از اینکه کد شما در هنگام به روز رسانی مستقر می شود.
شما حتی میتوانید با استفاده از یک فرمان، با دیگری برای حذف منابع مستقر شده در زمانی که دیگر مورد نیاز نیستند. از آنجایی که یک ابزار خط فرمان است، Azure Developer CLI در هر جایی که ترمینال دارید اجرا می شود، با استفاده از ترمینال رایانه شخصی توسعه دهنده شما، پوسته ابری Azure، یا حتی پایانه های ساخته شده در ویرایشگرهایی مانند Visual Studio Code یا در IDE های محبوب مانند Visual Studio. . نیازی به یادگیری چیزهای متفاوت برای هر محیط نیست. هر جا که آنها را اجرا می کنید، دستورات یکسان باقی می مانند.
زیر سرپوش یک زبان قالب YAML است که برنامه ها و منابع و همچنین زیرساخت مبتنی بر Bicep را به عنوان کدی برای پیکربندی محیط های Azure شما توصیف می کند. مایکروسافت در ابتدا نمونههایی را برای زبانهای رایج مانند پایتون، جاوا اسکریپت و سی شارپ همراه با تنظیماتی برای سرویسهای پلتفرم متداول Azure ارائه میکند. پشتیبانی جاوا برنامه ریزی شده است، امیدواریم ابزارهای بهار Azure را با خود همراه داشته باشد. مایکروسافت لیستی از الگوهای فعلی خود را در GitHub نگه میدارد، از جمله ساخت کد C# در Azure Cosmos DB یا راهاندازی میکروسرویس Dapr در برنامههای کانتینر Azure.
در حال حاضر، این ابزار از خدمات Azure App، توابع، برنامههای کانتینر Azure و برنامههای وب استاتیک Azure پشتیبانی میکند، با سرویس Azure Kubernetes به زودی. در این مرحله ابزاری برای ایجاد زیرساختهایی فراتر از قابلیتهای پلتفرم Azure نیست، اگرچه دلیلی وجود ندارد که از پشتیبانی Bicep آن برای استقرار زیرساختها و شبکه کامل استفاده نشود. در حال حاضر، بهتر است به عنوان ابزاری برای ایستادن سریع محیط های توسعه دهندگانی که ویژگی های رایج Azure را هدف قرار می دهند، در نظر گرفته شود. اگر میخواهید کارهای بیشتری انجام دهید، باید منابع خود را به گروههای منابعی که برای شما ایجاد میکند اضافه کنید.
استفاده از Azure Developer CLI
شروع به کار با Azure Developer CLI به اندازه کافی آسان است. اگر در حال ساخت برنامه های مدرن هستید، باید بیشتر پیش نیازها را از قبل بر روی رایانه شخصی خود نصب کرده باشید. اینها شامل نسخههای بهروز Git و GitHub CLI، Azure CLI و یک محیط Node.js شامل npm است. جالب اینجاست که از ظرفیتهای توسعهدهنده کد ویژوال استودیو نیز پشتیبانی میشود (یک کامل محیط توسعه در یک ظرف Docker، از جمله ویرایش از راه دور و اشکال زدایی) و برای GitHub Codespaces. پشتیبانی از محیطهای DevBox اخیراً اعلامشده هنوز اعلام نشده است، اما این محیطها مکانی منطقی برای میزبانی کانتینرهای برنامهنویس هستند و میتوانند با Azure Development CLI زمانی که برای ساخت برنامههای Azure استفاده میشوند، از قبل پیکربندی شوند.
با همه پیش نیازها، Azure Developer CLI را از طریق PowerShell در ویندوز نصب کنید یا روی macOS و Linux curl کنید. مهم است که ابزاری مانند این چند پلتفرمی باشد. استراتژی مایکروسافت این است که به جایی برود که توسعهدهندگان هستند، و پشتیبانی از همه سیستمعاملهای توسعهدهنده رایج برای این استراتژی کلیدی است.
اولین ساخت شما باید استفاده از یکی از الگوهای از پیش ساخته شده باشد. تا با استفاده از دستور azd up
سرویس را برای ایجاد منابع هدف خود امتحان کنید. CLI از شما نامی برای گروه منبع Azure می خواهد که محیط توسعه شما را میزبانی می کند، مکان Azure که در آن ایجاد می شود و اشتراک Azure که برای صورتحساب استفاده می شود. ارزش مطالعه محتوای این الگوها را دارد زیرا آنها یک آموزش مفید برای ساختن قالب شما هستند.
CLI منابع لازم را آماده میکند و هر کدی را از یک مخزن GitHub مرتبط بارگیری و راهاندازی میکند. در نهایت، فهرستی از منابعی که ایجاد کرده است، به همراه پیوندی به محتوای مربوطه در پورتال Azure نمایش می دهد. اگر کد مستقر شده شامل نقاط پایانی یا رابطهای کاربری وب باشد، همه اینها فهرست میشوند و پیوندهایی را برای آزمایش برنامه در اختیار شما قرار میدهند. مخزن در محیط توسعه شما در دایرکتوری که دستور azd up
را اجرا کرده اید، کلون می شود. سپس می توانید با کد به صورت محلی کار کنید و از git برای ادغام کد با شاخه های GitHub مناسب استفاده کنید. برای بستن سرویس ها و پاکسازی محیط محلی و Azure خود، از دستور azd down
استفاده کنید.
الگوهای برنامه خود را بسازید
از پروژه های موجود می توان برای ساخت قالب های خود استفاده کرد. فایلهای قالب Azure Developer CLI ساختار مشخصی دارد که بسیار یادآور فرمت bindle است که توسط Deis Lab WebAssembly استفاده میشود. جالب است که ببینیم آیا در نهایت از bindle برای کار با محیطهای توسعه مختلف استفاده میکند که در آن به استقرارهای متفاوتی نیاز است، به ویژه در مورد برنامههای لبه محدود شده با منابع.
با تنظیم یک فهرست پروژه شروع کنید و کد منبع برنامه را به آن اضافه کنید. پس از ایجاد آن، Azure Developer CLI می تواند یک الگوی خالی برای کد و زیرساخت شما ایجاد کند. این شامل جزئیات محیط هدف است. می توانید فایل .env حاصل را با جزئیات اشتراک Azure و مکان هدف خود از قبل پر کنید تا استقرار خودکار انجام شود. در مرحله بعد، یک دایرکتوری جدید به نام infra ایجاد کنید که حاوی یک فایل پیکربندی بر اساس فایل .env است که قبلاً ایجاد شده است، به همراه فایل های Bicep برای سرویس های مختلفی که برنامه شما استفاده می کند، به عنوان مثال، پیکربندی یک محیط Azure Container App آماده برای کد شما. ظروف.
در نهایت، با ایجاد یک فایل YAML که فایلهای تعریف پروژه شما را در یک الگو جمع میکند، کار را به پایان برسانید. سپس می توانید با استفاده از فایل azure-dev.yml
ایجاد شده به عنوان بخشی از گردش کار، آن الگو را بردارید و در یک GitHub Action از آن استفاده کنید، زیرا آنها به یک مخزن متعهد هستند تغییرات را در محیط Azure خود اعمال کنید. . از azd CLI برنامهنویس Azure استفاده کنید دستور pipeline config
برای تنظیم یک اقدام. پس از ایجاد، هر تغییر محلی متعهد به GitHub در مخزن شما ذخیره می شود و سپس در محیط Azure شما مستقر می شود و آماده آزمایش است.
مایکروسافت کارهای زیادی انجام داده است تا Azure Developer CLI را در زنجیرههای ابزار موجود جا دهد. این کامل نیست، به جای ادغام با خطوط لوله Azure DevOps، به اقدامات GitHub متکی است. با این حال، واضح است که کار در حال انجام است و مایکروسافت قصد دارد ویژگیهای جدیدی را با سرعت نسبتاً سریع اضافه کند، بنابراین میتوان انتظار داشت که بازخورد توسعهدهندگان تیم را در مورد آنچه برای ارائه سریع برنامههای بومی ابری لازم است و اینکه چگونه میتواند به حرکت از حالت اولیه کمک کند، راهنمایی کند. استقرار الگو در برنامههای کاربردی زنده: به عنوان مثال، افزودن پشتیبانی برای تولیدکنندههای کد مانند Yeoman و Draft، و همچنین چارچوبهای رایج مانند ASP.NET یا Spring.
این اولین پیشنمایش عمومی مطمئناً شروعی امیدوارکننده است. جالب است که ببینیم آیا مایکروسافت میتواند شتاب خود را حفظ کند و در عین حال از پشتیبانی از قلب چرخه عمر توسعه نرمافزار منحرف نشود: راهاندازی کد و اجرا و آمادهسازی برای استقرار تولید.
پست های مرتبط
در حال آزمایش Azure Developer CLI
در حال آزمایش Azure Developer CLI
در حال آزمایش Azure Developer CLI