> For the complete documentation index, see [llms.txt](https://kompendium.cloudlets.zone/kompendium/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kompendium.cloudlets.zone/kompendium/wdrozenia/automatyczne-wdrazanie-aktualizacji-git-svn.md).

# Automatyczne wdrażanie aktualizacji Git/SVN

Na [Cloudlets.Zone](https://cloudlets.zone) można skonfigurować okresowe automatyczne aktualizacje wdrożeń z użyciem powszechnie stosowanych systemów kontroli wersji Git/SVN. Po prostu zaktualizuj swój kod, dokonaj zatwierdzenia, a wszystkie zmiany w Twoim projekcie VCS zostaną automatycznie przesłane do środowiska developerskiego lub produkcyjnego po określonym przedziale czasu. W odróżnieniu od haków Git, funkcja automatycznego wdrażania na Cloudlets.Zone nie wymaga żadnych dodatkowych konfiguracji po stronie repozytorium projektu.&#x20;

## Przygotowanie projektu <a href="#preparing-a-project" id="preparing-a-project"></a>

1. Zaczynamy od uruchomienia kreatora środowiska i wyboru technologii zgodnej z projektem, po który sięgać będziemy do repozytoriów Git/SVN. Rozważymy to na przykładzie węzła kompilacji Maven dla Javy - jednak każdy inny serwer aplikacji może być skonfigurowany podobnie.

![](/files/Qhjnx6hzZ1E8eCFjqMnL)

{% hint style="info" %}
Środowiska Java wymagają dodatkowego węzła Maven do budowania i wysyłania kodu do serwera aplikacji, podczas gdy w przypadku pozostałych języków, mechanizm ten jest obsługiwany natywnie przez węzły obliczeniowe.
{% endhint %}

2\. Po utworzeniu środowiska kliknij przycisk **Dodaj projekt** obok odpowiedniego węzła (np. *Maven* dla Java lub serwera aplikacji dla dowolnego innego języka).

![](/files/Y9IRu0JzbxGYSDv3K9Nj)

3\. W otwartym oknie przejdź do zakładki z rodzajem używanego VCS i wypełnij wymagane pola: wprowadź **adres URL** do potrzebnego repozytorium, określ szczegóły uwierzytelnienia oraz wskaż nazwę kontekstu, w którym ma być umieszczona Twoja aplikacja.

Ponadto w przypadku użycia węzła kompilacji Maven, należy dodatkowo określić **nazwę projektu** i **środowisko**, w którym ma zostać wdrożony.

![](/files/K5xu8cDoOOuaLdnx08Cy)

{% hint style="info" %}
**Wskazówki.** Ta ramka zawiera opis poszczególnych ustawień, które mogą się przydać do zorganizowania właściwej interakcji systemu ze zdalnym repozytorium:

* **Sprawdź i automatycznie instaluj aktualizacje** - służy do wskazania, czy chcesz wdrożyć projekt natychmiast po jego dodaniu, czy odroczyć tę operację (w celu późniejszej ręcznej inicjacji).
* Opcja **Automatycznego rozwiązywania konfliktów** jest domyślnie zaznaczona i stanowi odpowiednik polecenia  *git  reset  –hard*. Służy do zapobiegania występowaniu konfliktów scalania podczas kolejnych aktualizacji projektu, które mogą mieć miejsce, jeśli ten sam plik został zmodyfikowany zarówno w zdalnym repozytorium, jak i w Twoim projekcie utrzymywanym na Cloudlets.Zone. Jeżeli pojawi się taki problem, ten sprzeczny plik zostanie zaktualizowany zgodnie z wersją repozytorium (która jest uważana za nadrzędną), odrzucając zmiany wprowadzone lokalnie. Zalecamy, aby nie wyłączać tej opcji, chyba że dokładnie wiesz, co robisz.
* Opcja **Uruchom instalację bez przestojów** (obecnie dostępna tylko dla PHP) pozwala na ciągłe wdrażanie aktualizacji aplikacji, znajdujących się w kontekście *ROOT*, bez przerw w pracy aplikacji. Jeżeli opcja ta jest włączona, Twój wybór zostanie zapamiętany i wykorzystany podczas wszystkich kolejnych automatycznych aktualizacji.

![](/files/OQO1GP1lMi5nne1zxbr1)
{% endhint %}

4\. Po kliknięciu przycisku zastosuj nastąpi instalacja projektu.&#x20;

![](/files/aVjxtdnQtQGqp7yVshmu)

Wdrożenie zakończyło się sukcesem. Projekt jest dostępny z poziomu [www](http://www).

![](/files/lUGy6R52a9kRgh5Hlbsr)

## Śledzenie automatycznych aktualizacji <a href="#tracking-auto-updates" id="tracking-auto-updates"></a>

Aby monitorować przetwarzanie automatycznego wdrażania i jego wyniki, możesz przejrzeć odpowiedni plik dziennika (o nazwie ***vcs\_update***) dla odpowiedniego serwera aplikacji lub węzła Maven.

![Logi menadżera wdrożeń](/files/Br6w1sZ5JO09XPCKg6Nj)

{% hint style="info" %}
Możesz również ponownie skonfigurować wdrożoną aplikację za pomocą ustawień aplikacji Git/SVN, przechodząc do swojego środowiska i wybierając  przycisk **Edytuj**  obok odpowiedniego projektu. Zobaczysz otwartą ramkę, podobną do tej, która była używana do dodawania projektu, w której możesz zmienić stan dowolnej z opcji opisanych powyżej (wystarczy kliknąć  **Zastosuj**, aby potwierdzić nowe ustawienia).
{% endhint %}

To wszystko! Po dokonaniu tych prostych konfiguracji możesz kontynuować pracę z repozytorium Git/SVN, bez konieczności ponownego wracania do naszego [Panelu Usługi Cloudlets.Zone](https://app.controller.cloudlets.zone/). Możesz mieć pewność, że wszystko będzie automatycznie aktualizowane w Twoim środowisku!
