Zarządzanie wdrożeniami i wersjami

Jeśli masz włączone automatyczne wdrażanie, za każdym razem, gdy przenosisz nowe zatwierdzenie do gałęzi głównej w repozytorium GitHub, App Hosting automatycznie wdraża nową wersję aplikacji. Stan wdrożenia możesz sprawdzić w Firebase konsoli lub w usłudze App Hosting GitHub.

Dodatkowo, App Hosting obsługuje wdrażanie aktywowane ręcznie na potrzeby integracji CI/CD lub w innych przypadkach, gdy chcesz wymusić wdrożenie.

Wyświetlanie wdrożeń

Konsola Firebase zapewnia dostęp do szczegółowych informacji o wszystkich wdrożeniach aplikacji.

Otwórz Hosting i usługi bezserwerowe> App Hosting, i kliknij Wyświetl obok backendu, którego wdrożenia chcesz zobaczyć. Karta Wdrożenia backendu zawiera tabelę z historią wszystkich wdrożeń tego backendu.

Każdy wpis wdrożenia zawiera linki do zadania Cloud Build i zmiany lub zatwierdzenia, które spowodowały wdrożenie, a także podstawowe informacje o autorze, dacie utworzenia i stanie wdrożenia.

  • Zadanie Cloud Build to środowisko kompilacji, w którym App Hosting uruchamia polecenie kompilacji aplikacji. Dostęp do Cloud Build logów możesz uzyskać, klikając identyfikator kompilacji.
  • Zmiana to zatwierdzenie w GitHubie lub inne działanie, które spowodowało wdrożenie.

Ręczne aktywowanie wdrożenia

Jeśli chcesz ręcznie aktywować wdrożenie ze źródła GitHub bez przenoszenia nowego zatwierdzenia, możesz utworzyć wdrożenie w konsoli Firebase lub w interfejsie wiersza poleceń Firebase. Jest to przydatne w takich przypadkach jak:

  • wymuszenie ponownego wygenerowania treści statycznych;
  • umożliwienie systemowi CI/CD aktywowania wdrożeń;
  • ograniczenie wdrożeń produkcyjnych do określonych dat lub godzin.

Aby aktywować wdrożenie w konsoli Firebase:

  1. W konsoli Firebase otwórz Hosting i usługi bezserwerowe > App Hosting.
  2. Kliknij Wyświetl obok backendu, dla którego chcesz utworzyć wdrożenie.
  3. W podsumowaniu panelu backendu kliknij Utwórz wdrożenie.
  4. Wybierz gałąź do wdrożenia.
  5. Wybierz zatwierdzenie do wdrożenia – najnowsze lub wcześniejsze określone przez jego identyfikator.
  6. Kliknij Utwórz. W tabeli historii wdrożeń wyświetla się stan i numer kompilacji wdrożenia. Po zakończeniu procesu wdrożenia to wdrożenie jest wyświetlane jako bieżące.

Aby aktywować wdrożenie w interfejsie wiersza poleceń Firebase, uruchom to polecenie i po wyświetleniu prośby wybierz gałąź wdrożenia:

firebase apphosting:rollouts:create BACKEND_ID

Możesz też rozpocząć wdrożenie najnowszego zatwierdzenia w określonej gałęzi, używając opcji --git-branch:

firebase apphosting:rollouts:create BACKEND_ID
--git_branch BRANCH_NAME

Możesz też utworzyć wdrożenie z określonym zatwierdzeniem, używając opcji --git-commit:

firebase apphosting:rollouts:create BACKEND_ID
--git_commit COMMIT_ID

Przywracanie poprzedniego wdrożenia

App Hosting umożliwia przywrócenie poprzedniego wdrożenia na 2 sposoby:

  • Natychmiastowe wycofanie zmian bez ponownej kompilacji
  • Ponowna kompilacja i wycofanie zmian do poprzedniej wersji

Tworzenie natychmiastowego wycofania

Czasami może być konieczne szybkie przywrócenie starszej wersji aplikacji – na przykład jeśli wykryjesz krytyczny błąd w nowo wdrożonej wersji lub masz niestabilną kompilację, która blokuje nowe wdrożenia. W takich przypadkach możesz przywrócić wybrany obraz kontenera z poprzedniego wdrożenia. Ten obraz nie jest ponownie kompilowany, ale używa kodu i konfiguracji środowiska z momentu jego pierwszej kompilacji.

Aby utworzyć natychmiastowe wycofanie:

  1. W konsoli Firebase otwórz Hosting i usługi bezserwerowe > App Hosting.
  2. Kliknij Wyświetl obok backendu, dla którego chcesz utworzyć wycofanie.
  3. Kliknij kartę Wdrożenia.
  4. W tabeli Historia backendu kliknij menu z 3 kropkami obok poprzedniej kompilacji.
  5. Kliknij Wycofaj zmiany do tej kompilacji i potwierdź.

Ponowna kompilacja i wycofanie zmian

Jeśli chcesz przywrócić starszą wersję aplikacji, ale zachować bieżącą konfigurację, możesz ponownie skompilować aplikację w ramach procesu wycofywania. Jeśli na przykład najnowsza wersja zaktualizowała wartość klucza interfejsu API w Secret Manager, ponowna kompilacja może zapewnić, że po wycofaniu w aplikacji będzie używany nowy klucz.

Aby ponownie skompilować i wycofać zmiany:

  1. W konsoli Firebase otwórz Hosting i usługi bezserwerowe > App Hosting.
  2. Kliknij Wyświetl panel obok backendu, dla którego chcesz utworzyć wycofanie.
  3. Kliknij kartę Wdrożenia.
  4. Kliknij Utwórz wdrożenie.
  5. W oknie Utwórz wdrożenie kliknij Wcześniejsze zatwierdzenie i wpisz identyfikator zatwierdzenia wersji, którą chcesz ponownie skompilować i wycofać zmiany. Identyfikator zatwierdzenia jest częścią „Szczegółów zmiany” każdego wdrożenia wymienionego w Historii wdrożeń i jest umieszczony w nawiasach w etykiecie.
  6. Aby rozpocząć wycofywanie, kliknij Utwórz.

Zmienianie ustawień wdrożenia

Możesz zmienić gałąź główną wdrożeń oraz wyłączyć lub włączyć automatyczne wdrażanie za pomocą elementów sterujących w widoku Ustawienia > Wdrożenie na panelu backendu.

  1. W konsoli Firebase otwórz Hosting i usługi bezserwerowe > App Hosting.
  2. Kliknij Wyświetl obok backendu, w którym chcesz zaktualizować ustawienia wdrożenia.
  3. Na panelu backendu kliknij Ustawienia. Domyślny widok zawiera informacje o domenach i domenach niestandardowych.
  4. Kliknij widok Wdrożenie. W tym widoku możesz zmienić gałąź główną wdrożeń oraz wyłączyć lub włączyć automatyczne wdrażanie. Dostępne są też opcje ustawienia katalogu głównego aplikacji i środowiska backendu (zobacz Wdrażanie w wielu środowiskach).

Zarządzanie automatycznymi wdrożeniami

Domyślnie App Hosting przyjmuje „wymaganą” listę wszystkich plików, co oznacza że każde nowe zatwierdzenie w repozytorium powoduje nową kompilację i wdrożenie. Aby jednak zaoszczędzić czas i uniknąć niepotrzebnych wdrożeń, możesz skonfigurować App Hosting tak, aby pomijał kompilacje na podstawie określonych ścieżek plików zmodyfikowanych w zatwierdzeniu.

Możesz to skonfigurować w sekcji Ustawienia > Wdrożenia > Aktywatory wdrożeń. Jeśli chcesz, aby każde nowe zatwierdzenie w repozytorium powodowało nową kompilację i wdrożenie, możesz pozostawić pole Wymagane ścieżki puste. Możesz też określić, które katalogi lub pliki mają zawsze aktywować wdrożenie. Jeśli określisz katalogi, dodaj wszystkie ścieżki, w których zmiany mają aktywować wdrożenie.

Katalogi lub pliki dodane do Ignorowanych ścieżek nigdy nie spowodują automatycznego wdrożenia. Jeśli podkatalog znajduje się zarówno na liście wymaganych, jak i ignorowanych ścieżek, automatyczne wdrożenie nie zostanie aktywowane. Jeśli wypełnisz tylko listę ignorowanych ścieżek, App Hosting automatycznie wypełni pole „*” dla wymaganych ścieżek.

Zrzut ekranu interfejsu opisanego na tej stronie.

Jeśli przeniesiesz zatwierdzenie, w którym żadne ze zmienionych plików nie pasuje do wymaganych ścieżek (lub jeśli wszystkie zmiany są wyraźnie wykluczone przez ignorowane ścieżki), App Hosting nadal potwierdzi otrzymanie zdarzenia GitHub, ale oznaczy stany kompilacji i wdrożenia jako SKIPPED, i nie aktywuje automatycznego wdrożenia.