Zapowiadałem na ten wpis, iż będzie on dotyczył wykorzystania ES oraz walidatorów, jednak powstał mały bałagan w projekcie czego skutkiem było wyodrębnienie CQRS do osobnego repozytorium.
github.com/krzysztofowsiany/cqrs
Biblioteka powiązana jest z napisanym już wcześniej modułami do implementacji testów.
Takie podejście pozwoliło mi na wykorzystanie po raz pierwszy mechanizmu pod modułów w GIT, EXP rośnie.:)
Mechanizm ten pozwala na dołączanie do repozytorium innych repozytoriów jako pod moduły i korzystanie z nich.
Pod moduły - GIT
Do konfiguracji pod modułów służy plik o nazwie .gitmodules.
Plik .gitmodules.
Należy określić, nazwę podmodułu, ścieżkę gdzie będzie znajdowało się dołączone repozytorium oraz jego adres.
Po dodaniu pliku .gitmodules wydając polecenie git submodule update aktualizujemy dodane podmoduły.
Travis
Dodatkowo zaadaptowałem projekt tak by można było wykorzystać narzędzie o nazwie Travis-CI.
Jest to darmowy serwer (dla oprogramowania Open Source) ciągłej integracji pozwalający na kontrolowanie poprawności działania aplikacji poprzez przygotowanie środowiska, instalację zależności, budowaniu, testowaniu, i raportowaniu tego procederu.
Travis wymaga konfiguracji zapisanej w pliku o nazwie .travis.yml.
Konfiguracja Travis-CI dla biblioteki CQRS.
Plik ten daje duże możliwości, i przykład jaki wykorzystałem jest bardzo prosty, polegający na określeniu plików projektu, instalacji wymaganych zależności, następnie uruchomienie samego skryptu budowania xbuild oraz wykonania testów.
Więcej o konfiguracji Travisa przy pomocy yamla pod adresem: docs.travis-ci.com/user/customizing-the-build.
Co ciekawe całe środowisko uruchomieniowe działa na Linuxie dlatego wykorzystywana jest tutaj platforma mono.
W celu wykorzystania musiałem nieco zmienić projekt CQRS-a, pozbyć się runnera dla VS, oraz obniżyć wersję xUnita do 1.9.2, w takiej konfiguracji udało mi się dokonać pierwszego builda.:D
travis-ci.org/krzysztofowsiany/cqrs:
Koniec
Co prawda krótki post, jednak ostatni święta i z nimi związane długie wyjazdy/powroty do rodziny. Dlatego wpis taki króciasty,
Jednak mam nadzieję, że interesujący.
Linki:
- docs.travis-ci.com/user/customizing-the-build,
- travis-ci.org,
- www.mono-project.com/docs/about-mono/supported-platforms/linux,
- github.com/krzysztofowsiany/cqrs,
- travis-ci.org/krzysztofowsiany/cqrs.
Dziękuję za wytrwałość i zachęcam do komentowania.
Jest to post przygotowany na potrzeby konkursu „Daj Się Poznać 2017” organizowanym przez Macieja Aniserowicza.
Blog | https://mrdev.pl |
Projekt | https://mrdev.pl/pictogr-pomysl |
GitHub | github.com/krzysztofowsiany/pictogr |
Snapchat | www.snapchat.com/add/gocom7 |
www.facebook.com/PictOgr-1729700930654225 | |
twitter.com/gemu_gocom | |
RSS | http://mrdev.pl/category/daj-sie-poznac-2017/feed |