Welcome to the first part about DevOps and automating the deployment for the .NET Core apps with the usage of Docker, Travis CI (I’ll also mention how to use BitBucket Pipelines) and Rancher. The purpose of this tutorial is to show you that setting up the CI & CD for the projects that you’re working on is not as complex as it may seem at the first glance. The slides for the presentation can be found here.
Currently, I’m working on my new open source project which hopefully will be announced by the end of October. One thing that I really missed during my work was integrating my GitHub repository with some kind of service which would present me how each Pull Request increases/decreases coverage and what’s the overall coverage on develop and master branch. After few hours I decided to try Codecov since it’s quite easy to setup and has a very clear visualization. ...
Dawno, dawno temu, za górami, za lasami, gdzie kakałko trzeba było na palenisku robić odganiając się patykiem od niedźwiedzi (a przynajmniej ja tak pamiętam te czasy) a aplikacje webowe tworzyło się w jednej technologii, życie było o wiele prostsze. Obecnie są to kombajny złożone z wielu technologii. Szczególnie to widać na przykładzie front-endu, który rozrósł się niesamowicie od czasu stworzenia pierwszych wersji Node.js. Jesteśmy wprost bombardowani nowymi frameworkami SPA, które coraz prześcigają się...
Powiedzmy, że mamy projekt który tworzy nam instalator. Fajnie. Projekt tworzy nam plik uruchomieniowy o nazwie MyInstaller.exe. Dobrze. Wysyłamy taki plik naszej koleżance z pracy. Super. Piszemy nowe funkcje i naprawiamy istniejące błędy. Extra. Tworzymy instalator zawierający nową wersję programu. Bosko. Musimy ręcznie zmienić nazwę z MyInstaller.exe na coś w stylu MyInstaller.1.1.exe. Smutek. Nie róbimy rzeczy, które może za nas komputer zrobić.
Koń czy tam testy jednostkowe – jakie są, każdy widzi. Nie? No dobra, nie do końca tak to działa, chodź sama idea testów jest dość prosta. Acz by dokładnie zagłębić się w tematykę skorzystamy ze źródła wiedzy, które pomogło uzyskać kilka milionów licencjatów i magistrów – wikipedii. Zgodnie z definicją powinniśmy je wykorzystywać do testowania najmniejszej części wytworzonego przez nas oprogramowania. Jednak postępowanie zgodnie z zasadami nie zawsze jest proste. Obecnie aplikację webowe składają się z w...
W dniu dzisiejszym zajmiemy się instalacją SonarQube na Windows i MS SQL oraz pierwszą analizą projektów .Net, .Net Core 2.0 i JavaScript.
Napisałem piękny i profesjonalnie wyglądający program. Chciałem go pokazać innym. Czułem w środku, że nie profesjonalnie jest przekazać .zip i kazać moim użytkownikom, go rozpakować i stworzyć sobie skróty do programu w menu start. Mój program zasługuje na lepsze traktowanie goddamn it.
Lots of developers do pet projects besides their job. Things are pretty straightforward when you work alone. You code some functionality, then commit the changes and push it to the repository like GitHub, Bitbucket or Gitlab. Simple is that. But at some point, your code might turn into a full product. Folks start using it, new contributors come and your repository becomes their workspace as well. As you probably guess, if you want to keep the control over t...
W poprzednim wpisie zajęliśmy się podstawową konfiguracją Team City, teraz nadszedł czas na Octopus’a.
Nowoczesne aplikacje rozproszone cechują się tym, że mogą wykorzystywać o wiele więcej zasobów niż tylko serwer i baza danych. Co w przypadku kiedy chcemy, aby nasza aplikacja korzystała z dwóch web serwisów, bazy danych, serwera redis dla szybkiego chache-owania, stack ELK (Elasticsearch, Logstash, Kibana) dla logów, wyszukiwania etc. Sami przyznacie, że sporo elementów trzeba monitorować, deploy-ować etc. Chwalcie niebiosa, bo i o to niosę rozwiązanie! Na pomoc przychodzi nam Docker Compose służący do ...
Cześć. Jakiś czas temu natchnęło mnie i postanowiłem ogarnąć coś, żeby 2DXnegine budował się na serwerze Continous Integration. Dla niezaznajomionych z tematem Continous Integration to taki twór, który po każdym commicie będzie pobierał do siebie nasze źródła, kompilował je i odpalał testy - po tym wszystkim możemy gdzieś naszą zbudowaną aplikacje wystawić i robić jeszcze inne cuda, o których jeszcze nie pomyślałem. Na rynku istnieje parę...
O kod trzeba dbać – z tym raczej wszyscy się zgodzimy. Wysoka jakość kodu ma nam pomóc między innymi w rozwoju i utrzymaniu projektów. Oczywiście wspomniana wysoka jakość kodu nie bierze się z niczego. Jest to efekt codziennej pracy i dbania o każdy szczegół. Na rynku istnieją narzędzia, które umożliwiają monitorowanie jakości kodu na bieżąco. Jeżeli nie chcesz wpaść w dług technologiczny na pewno warto się z nimi zapoznać!
Docker, konteneryzacja aplikacji, mikroserwisy to nie jest tylko pozamykanie jakiś małych części aplikacji w oddzielne kontenery i zdeploy-owanie ich na jakaś chmurę w celu jej uruchomienia. Sam docker to dużo bardziej skomplikowane narzędzie niż mogłoby się wydawać. Za jego pomocą możemy tworzyć całe ekosystemy zawierające wirtualne sieci, usługi typu service discovery a nawet (od niedawna) za pomocą orchiestrator-a, skalować naszą aplikację. W dzisiejszym poście chciałbym poświęcić kilka słów wirtualny...
Do You ever wanted to run C# code in a scripty inline way to check if code will execute the way you want? This could be especially useful when you don’t have powerful visual studio with repl(interactive) and You are writing C# in something lightweight like vs code. I decided to write this post because installing scriptcs is cumbersom...
Dawno już nie było wpisu o Gitlab-ie. Jeszcze dawniej nie jadłem sałatki, acz nie przesadzajmy ze skrajnościami. Zafascynowany ostatnio możliwościami jakie daje .NET core chciałbym wam krótko przedstawić sposób na wykorzystanie Gitlab CI w aplikacjach opartych tę technologię. W tym wpisie poruszę wykorzystanie:Gitlab CI Runnera do uruchamiania procesu lokalnieDocker-a i Gitlab CI do budowania obrazu na każdym commit-cieGitlab CI do uruchamiania testów Nie zaskoczę informując, że należy rozpocząć od wyg...
Ostatnio jednym z zadań, którego postanowiłem się podjąć, było wprowadzenie do projektu prostego rodzaju Continuous Integration oraz Delivery. Do wymagań należało wprowadzenie kilku środowisk, każde miało posiadać inne ustawienia, a co najważniejsze możliwość deploy’u on demand, czyli na kliknięcie przycisku, bez żadnego ręcznego kopiowania. Po 2 dniach ciężkiej pracy i czarowania z pomocą PowerShell’a udało się, wszystko zaczęło działać jak powinno. Powiodło się przy pomocy TeamCity ora...
Zastanawiałeś się kiedyś jak właściwie tworzy się uwielbiane przez wszystkich paczki NuGet? Każdy dobrze wie jak je pobrać i jak ich używać, ale jak ją stworzyć? Dowiesz się tego w tym wpisie!
Cześć. Dziś będzie trochę o narzędziach pracy. Jak wiadomo przynajmniej do niedawana, jako .NET developerzy mieliśmy jedno IDE, czyli Visual Studio ewentualnie jak ktoś chciał mógł używać MonoDevelop. Obecnie po ostatnim otwarciu się Microsoftu na świat Open Source pojawiało się masę edytorów wspierających C# i IntelliSense za pomocą OmniSharp. Dodatkowo kawałek .NET'owego tortu chce uszczknąć JetBrains za pomocą swojego IDE Rider. Jak widać w ...
Z LINQPad korzystam niemalże codziennie. Wykonuje w nim dowolny kod języka C#. Zdarza się, że zastępuje mi Visual Studio. Wyparł całkowicie SQL Server Management Studio we wszystkich rodzajach zapytań SQL do bazy danych. LINQPad jest lekki i szybki (w odróżnieniu od VS i SSMS). Jeśli chcesz przekonać się jak bardzo wartościowe jest to narzędzie, to zapraszam do lektury. ...
Last night I started working on my new tech presentation which is going to consist mostly on live demos. Because of limited time (which is usually about 50 minutes) and few topics to discuss, I decided to use code snippets in my Visual Studio Code. Thanks to that, I’ll focus more on the „talk flow” rather than my typing which is not so good when I’m stressed. Creating snippets in VSC Let’s start with creating an example C# snippet just to present the way it works....