Przejdź do głównej zawartości

dot net core i ciągłe wdrażanie aplikacji w VSTS

Dzisiaj opowiem o tym jak możemy skonfigurować ciągłe wdrożenie naszej aplikacji za pomocą Visual Studio Team Services.
Moim celem będzie automatyzacja procesu wdrożenia aby przebiegał on w następujący sposób:

1. Programista wykonuje zmianę w kodzie i wysyła swoje zmiany do repozytorium git
2. Serwer ciągłej integracji wykrywa zmianę w systemie git i wykonuje następujące czynności:
- pobranie projektu z gita
- zbudowanie projektu
- ewentualne uruchomienie testów jednostkowych, integracyjnych i systemowych
- przygotowanie projektu do umieszczenia na docelowym serwerze
- skopiowanie projektu na docelowy serwer.


Naszym celem jest ograniczenie pracy programisty do punktu pierwszego.
Cała reszta, tj. punkt 2 zostaje wykonana przez serwer ciągłej integracji.
Serwerem tym może być Jenkins, TeamCity, albo VSTS. O tym właśnie dzisiaj opowiemy.
Co należy zrobić aby go skonfigurować? Po pierwsze wejść tu: https://www.visualstudio.com/pl/
Na początku konfigurujemy projekt, dodajemy nowe repozytorium gita, a następnie definiujemy tak zwanego builda.
Build zasadniczo skłąda sie z kroków które dowolnie definiujemy.
Oto jak ja to zrobiłem dla projektu asp.net core MVC, który wdrażamy na linuxie(bo dzięki nowej wersji .NETa teraz my programiści .NET nie musimy już ograniczać się do Windowsa):

Finalny widok naszego builda:




Definicje poszczególnych kroków


1 - Pobranie projektu z gita




2 - instalacja bowera



3 - dodanie bowera do zmiennej środowiskowej $PATH



Zauważmy, że mimo iż wdrażamy aplikacje na serwerze z linuxem to samo budowanie projektu przebiega na środowisku Windows.

4 - wyświetlenie wersji bowera



Ten krok jest opcjonalny. Chcę jedynie pokazać możliwości jakie daje nam wiersz poleceń.

5 - pobranie pakietów wykorzystywanych przez projekt




6 - przygotowanie projektu do wdrożenia



7 - skopiowanie plików na serwer linux



8 - uruchomienie serwera Kestrel na maszynie z linuxem

Komentarze

  1. Na coś takiego czekałem! Świetny krok M$. Dzięki takiemu podejściu bede mógł wykorzystać swoje stare nawyki administracyjne związane właśnie z systemem Linux :-)

    OdpowiedzUsuń

Prześlij komentarz

Popularne posty z tego bloga

Unleash the power of ChatGPT in your C# applications with NGpt - C# OpenAI GPT client

Meet NGpt - OpenAI GPT C# client library that will make your conversations with ChatGPT a breeze! Have you ever been struggling building your own smart AI application in C#? Well, now you can use ChatGpt inside your application! Introducing NGpt, the powerful .NET library that lets you integrate ChatGPT seamlessly into your C# applications. No more nigts spent on building your own AI solitions, no more convoluted logic and building complex business rules - just pure AI bliss. In this blog post, we'll dive into the wonderful world of NGpt and show you how easy it is to use. You might even find a few laughs along the way. The Magic of NGpt NGpt is a transient fault-tolerant .NET 6 OpenAI client that simplifies ChatGPT integration for C# developers. It's like your friendly neighborhood Spider-Man - always there to help you out when you need it most. With just your OpenAI API key, you can start coding AI applications in C# faster than you can say "Peter Parker." Let...

Specflow czyli BDD w praktyce

Dzisiaj pokażę w praktyce w jaki sposób zbieram wymagania korzystając z narzędzia Specflow. Na początku przypomnę nasze historie użtkownika. Potem skonfigurujemy dodatek Specflow Visual Studio. Na końcu pokażę jak wygląda język Gherkin i zaimplementujemy pierwszą historię użytkownika US1. Oto lista funkcjonalności, które będę implementował w aplikacji Perfect Life: US1: Jako użytkownik aplikacji mobilnej chcę ekran logowania aby mieć możliwość zapisywania swoich postępów US2: Jako użytkownik aplikacji mobilnej chcę mieć kalkulator wskaźnika BMI aby móc mierzyć poziom swojej kondycji US3: Jako użytkownik aplikacji mobilnej chcę widzieć wykresy aby móc wizualnie interpretować swoje postępy US4: Jako użytkownik aplikacji mobilnej chcę mieć możliwość rozwiązania quizu, żeby zbadać wskaźnik Body Age US5: Jako użytkownik aplikacji mobilnej chcę pobierać pliki PDF aby mieć dostęp do planów dietetycznych US6: Jako administrator aplikacji chcę zapisywać dane telemetryczne aby móc an...

Up and running with Laravel

Today I'll show you how to start working with Laravel - a modern PHP framework. After reading this article you'll be able to: - Install XAMPP - Configure Virtual Hosts on Apache - Create your first application in Laravel - Run the application - Start coding As a first step I encourage you to visit Laravel.com to get some background knowledge about Laravel. Laravel is a PHP framework which is build on top of the MVC pattern (MVC stands for Model View Controller). You can find general explanation of MVC design pattern with some code examples written in Java here . I assume that you've already installed XAMPP which has version for Linux, Windows and OS X. Personally I'm using Windows in this tutorial but on each operating system it should work similarly. You can get the installer of XAMPP from this page: https://www.apachefriends.org/pl/index.html. When installer prompts you which options you want to install, you need to select Apache and you are free to...