![لاجوردی](http://pezhvak24.ir/dl/10kcor/cscd/article/vsts-devops-quick-guide-to-setup-vsts-continuous-integration/Images/image001.jpg)
در سال های اخیر موج جدیدی در صنعت نرم افزار به وجود آمده است. فناوران قبلاً فناوریها، چارچوبها، زبانهای برنامهنویسی و پلتفرمهای زیادی ساختهاند، بنابراین سؤال بزرگ بعدی این است:
استفاده از فضای ابری در چند سال گذشته واقعاً صنعت را متحول کرده است و همچنین بستری مشخص برای پاسخ به این سؤال فراهم کرده است. برای انتقال کد از ماشینهای توسعهدهندگان به زیرساختهای cloud/on-prem، ابزارها و پلتفرمهای زیادی مانند Jenkins، Octopus Deploy، TeamCity، VSTS و غیره در بازار موجود است. کدام ابزار/تکنیک می تواند کار را با کارایی، قابلیت اطمینان و حداقل تلاش انجام دهد. وقتی در پروژههای مشتری هستیم، زمان محدودی داریم، و مهم نیست که توسعهدهنده از او قدردانی میکند اگر بیشتر وقت آنها صرف نیازهای تجاری، درک، توسعه و آزمایش شود، نه پیکربندی ابزارهای ساخت/انتشار.
من دست خود را روی تعدادی از ابزارهای ذکر شده در بالا امتحان کرده ام، می توانم بگویم که هر کدام از آنها، خواه جنکینز/اختاپوس استقرار/تیم سیتی/وی اس تی اس باشد، نقاط قوت و ضعف خود را دارند. به نظر من VSTS همه ابزارها و ویژگی هایی را دارد که می تواند برای هر پروژه/تکنولوژی با کمترین تلاش وارد بازار شود.
![لاجوردی](http://pezhvak24.ir/dl/10kcor/cscd/article/vsts-devops-quick-guide-to-setup-vsts-continuous-integration/Images/image002.jpg)
من قبلاً فرض می کنم که شما یک حساب VSTS دارید، اگر نه ساده است. به VSTS بروید و یک حساب کاربری جدید ایجاد کنید. برای آن به یک حساب Hotmail/Outlook نیاز دارید.
![لاجوردی](http://pezhvak24.ir/dl/10kcor/cscd/article/vsts-devops-quick-guide-to-setup-vsts-continuous-integration/Images/image003.jpg)
پس از اتمام، یک مجموعه VSTS برای شما ایجاد می شود که MyFirstProject به عنوان پروژه پیش فرض است. ما یک پروژه جدید با نام VSTS DevOps با استفاده از دکمه New Project ایجاد خواهیم کرد
![لاجوردی](http://pezhvak24.ir/dl/10kcor/cscd/article/vsts-devops-quick-guide-to-setup-vsts-continuous-integration/Images/image004.jpg)
در زیر یک راهنمای سریع برای پیکربندی یک پروژه برای VSTS Continuous Integration در زیر آمده است، من برای اهداف آزمایشی از پروژه ASP.NET MVC استفاده می کنم. اما اگر در حال ساخت پروژه در هر فناوری/پلتفرمی مانند .NET/Java/Mobile/Docker و غیره هستید، VSTS از هر کدام پشتیبانی کامل دارد.
- اجازه دهید یک پروژه ساده وانیلی ASP.NET MVC ایجاد کنیم. آن را بسازید و اجرا کنید. من تغییرات متنی را در قالب پیش فرض صفحه فهرست به شرح زیر انجام داده ام.
- Visual Studio را با استفاده از Team Explorer به VSTS متصل کنید.
- به اکسپلورر کنترل راه حل بروید و در قسمت سمت راست کلیک کنید و Add Items to Folder را انتخاب کنید.
- هنگامی که کد از VS بررسی شد، می توانید به VSTS بروید و مورد منوی کد را از breadcrumb انتخاب کنید.
- اکنون به تب Build بروید و تعریف جدید را کلیک کنید.
- محل منبع کد و مسیر پوشه به پوشه پروژه را انتخاب کنید. شما طیف گسترده ای از گزینه ها برای انتخاب محل کد منبع دارید. یعنی GitHub، GitHub Enterprise، Subversion، Bitbucket و External Git. من قبلاً وبلاگی در مورد نحوه استفاده از کنترل منبع Github برای ادغام با VSTS DevOps ارسال کرده ام.
- اکنون Build Template را انتخاب می کنیم. VSTS خارج از جعبه لیستی طولانی از الگوهای آماده را به شما ارائه می دهد که می توانید مانند تصویر زیر از آنها برای پیکربندی VSTS CI استفاده کنید. در مورد ما، ما یک قالب خالی را انتخاب کرده و آن را برای پروژه خود پیکربندی می کنیم.
- بیایید چند کار را به تعریف خود اضافه کنیم. درست مانند هر پروژه دات نت ابتدا به بسته های Nuget نیاز داریم، سپس با استفاده از MSBuild راه حل بسازیم و در نهایت پس از موفقیت، آرتیفکت ها به پوشه اشکال زدایی یا انتشار در bin فشار داده می شوند. به طور مشابه، ما NuGet Task، VS Build task، Copy Build Files و Publish Files را اضافه می کنیم تا یک قالب ساده برای ساخت و بسته بندی پروژه MVC خود بسازیم.
- بیایید اکنون هر یک از وظایف انتخاب شده را به صورت زیر پیکربندی کنیم.
- همانطور که در مرحله 9، ما قبلاً تمام وظایف را پیکربندی کرده ایم، مرحله بعدی این است که آزمایش کنیم که آیا تمام تنظیمات مطابق دلخواه کار می کنند یا خیر. اگر این کار را انجام دهند، در پایان ساخت نتیجه موفقیت آمیزی خواهیم داشت. در نتیجه ساخت، یک برگه آرتیفکت با مصنوعات قابل استقرار خواهیم داشت.
- در زیر اسکرین شات مربوط به گزارشهای ساختی است که در زمان واقعی به مرورگر ارسال میشوند. این واقعاً مفید است زیرا جزئیاتی را در مورد آنچه در پشت صحنه اتفاق میافتد و کارهایی که در حال حاضر در حال اجرا است میدهد.
- در ساخت اول ما، بازیابی NuGet ناموفق بود.
- آنچه بیان می کند این است که قادر به بازیابی چند بسته از مخزن NuGet نیست. یک راهحل سریع این است که وقتی کد مرحله 3 را بررسی میکنید، همه فایلهای شامل و خارجشده را مانند زیر بررسی کنید.
- درخواست ساخت بعدی با موفقیت انجام شد.
- حال اگر به تب Artifacts برویم گزینه Download and Explore را دریافت خواهیم کرد. اگر کاوش کنیم، میتوانیم مصنوعات را به صورت زیپ بستهبندی شده ببینیم،
![لاجوردی](http://pezhvak24.ir/dl/10kcor/cscd/article/vsts-devops-quick-guide-to-setup-vsts-continuous-integration/Images/image010.jpg)
![لاجوردی](http://pezhvak24.ir/dl/10kcor/cscd/article/vsts-devops-quick-guide-to-setup-vsts-continuous-integration/Images/image011.jpg)
![لاجوردی](http://pezhvak24.ir/dl/10kcor/cscd/article/vsts-devops-quick-guide-to-setup-vsts-continuous-integration/Images/image012.jpg)