Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Usługa Azure Functions umożliwia ciągłe wdrażanie zmian wprowadzonych w repozytorium kontroli źródła w połączonej aplikacji funkcji. Ta integracja kontroli źródła umożliwia przepływ pracy, w którym aktualizacja kodu wyzwala kompilację, pakowanie i wdrażanie z projektu na platformę Azure.
Zawsze należy skonfigurować ciągłe wdrażanie dla wersji testowej, a nie dla wersji produkcyjnej. W przypadku korzystania z miejsca produkcyjnego aktualizacje kodu są wypychane bezpośrednio do środowiska produkcyjnego bez weryfikowania na platformie Azure. Zamiast tego włącz ciągłe wdrażanie do slotu przejściowego, zweryfikuj aktualizacje w slocie przejściowym, a gdy wszystko działa poprawnie, można przełączyć kod slotu przejściowego do środowiska produkcyjnego. Jeśli łączysz się ze slotem produkcyjnym, upewnij się, że tylko kod jakości produkcyjnej trafia do zintegrowanej gałęzi kodu.
Kroki opisane w tym artykule pokazują, jak skonfigurować ciągłe wdrożenia kodu do aplikacji funkcji na platformie Azure przy użyciu Centrum wdrażania w witrynie Azure Portal. Możesz również skonfigurować ciągłą integrację przy użyciu interfejsu wiersza polecenia platformy Azure. Te kroki mogą dotyczyć miejsca przejściowego lub produkcyjnego.
Funkcje obsługują te źródła na potrzeby ciągłego wdrażania w aplikacji:
Obsługa kodu projektu w usłudze Azure Repos — jednej z usług w usłudze Azure DevOps. Obsługuje zarówno usługę Git, jak i Kontrola wersji serwera Team Foundation. Używany z dostawcą kompilacji Azure Pipelines. Aby uzyskać więcej informacji, zobacz Co to jest usługa Azure Repos?.
Możesz również połączyć aplikację funkcji z zewnętrznym repozytorium Git, ale wymaga to ręcznej synchronizacji. Aby uzyskać więcej informacji na temat opcji wdrażania, zobacz Technologie wdrażania w usłudze Azure Functions.
Uwaga
Opcje ciągłego wdrażania omówione w tym artykule są specyficzne dla wdrażania wyłącznie kodu. W przypadku wdrożeń aplikacji funkcji konteneryzowanych zobacz Włączanie ciągłego wdrażania kontenerów na platformie Azure.
Wymagania
Jednostką wdrożenia funkcji na platformie Azure jest aplikacja funkcji. Aby ciągłe wdrażanie zakończyło się pomyślnie, struktura katalogów projektu musi być zgodna z podstawową strukturą folderów oczekiwaną przez usługę Azure Functions. Podczas tworzenia projektu kodu przy użyciu narzędzi Azure Functions Core Tools, Visual Studio Code lub Visual Studio szablony usługi Azure Functions są używane do tworzenia projektów kodu z poprawną strukturą katalogów. Wszystkie funkcje w aplikacji funkcjonalnej są wdrażane jednocześnie i w tym samym pakiecie.
Po włączeniu ciągłego wdrażania dostęp do kodu funkcji w witrynie Azure Portal jest skonfigurowany jako tylko do odczytu, ponieważ źródło prawdy jest znane w innym miejscu.
Uwaga
Centrum wdrażania nie obsługuje włączania ciągłego wdrażania dla aplikacji funkcji z ograniczeniami sieciowymi dla ruchu przychodzącego. Zamiast tego należy skonfigurować przepływ pracy dostawcy kompilacji bezpośrednio w usłudze GitHub lub Azure Pipelines. Te przepływy pracy wymagają również używania maszyny wirtualnej w tej samej sieci wirtualnej co aplikacja funkcji jako własnego agenta (Azure Pipelines) lub własnego modułu uruchamiającego (GitHub).
Wybieranie dostawcy kompilacji
Kompilowanie projektu kodu jest częścią procesu wdrażania. Konkretny proces kompilacji zależy od konkretnego stosu języka, systemu operacyjnego i planu hostingu. Kompilacje można wykonywać lokalnie lub zdalnie, ponownie w zależności od konkretnego hostingu. Aby uzyskać więcej informacji, zobacz Zdalna kompilacja.
Ważne
W celu zwiększenia bezpieczeństwa rozważ użycie dostawcy kompilacji obsługującego tożsamości zarządzane, w tym usługi Azure Pipelines i GitHub Actions. Usługa App Service (Kudu) wymaga włączenia uwierzytelniania podstawowego i pracy z poświadczeniami opartymi na tekście.
Funkcje obsługują tych dostawców kompilacji:
Usługa Azure Pipelines jest jedną z usług w usłudze Azure DevOps i domyślnym dostawcą kompilacji dla projektów usługi Azure Repos. Usługi Azure Pipelines można również używać do kompilowania projektów z usługi GitHub. W usłudze Azure Pipelines istnieje AzureFunctionApp
zadanie przeznaczone specjalnie do wdrażania w usłudze Azure Functions. To zadanie zapewnia kontrolę nad sposobem budowy, pakowania i wdrażania projektu. Obsługuje tożsamości zarządzane.
Pamiętaj o mocnych stronach i ograniczeniach tych dostawców podczas włączania integracji z systemem kontroli wersji. Może być konieczne zmianę typu źródła repozytorium w celu skorzystania z określonego dostawcy.
Konfigurowanie ciągłego wdrażania
Witryna Azure Portal udostępnia centrum wdrażania dla aplikacji funkcji, co ułatwia konfigurowanie ciągłego wdrażania. Konkretny sposób konfigurowania ciągłego wdrażania zależy zarówno od typu repozytorium kontroli źródła, w którym znajduje się kod, jak i wybranego dostawcy kompilacji.
W witrynie Azure Portal przejdź do strony aplikacji funkcji i wybierz pozycję Centrum wdrażania w obszarze Wdrażanie w okienku po lewej stronie.
Wybierz typ repozytorium źródłowego, w którym jest obsługiwany kod projektu, z jednej z następujących obsługiwanych opcji:
Wdrożenia z usługi Azure Repos korzystające z usługi Azure Pipelines są definiowane w portalu usługi Azure DevOps, a nie z poziomu aplikacji funkcji. Aby zapoznać się z przewodnikiem krok po kroku dotyczącym tworzenia wdrożenia opartego na usłudze Azure Pipelines z usługi Azure Repos, zobacz Ciągłe dostarczanie za pomocą usługi Azure Pipelines.
Po zakończeniu wdrażania do aplikacji zostanie wdrożony cały kod z określonego źródła. W tym etapie zmiany w źródle wdrożeniowym wyzwalają wdrożenie tych zmian w aplikacji funkcji w Azure.
Włączanie ciągłego wdrażania podczas tworzenia aplikacji
Obecnie można skonfigurować ciągłe wdrażanie za pomocą GitHub przy użyciu GitHub Actions podczas tworzenia aplikacji funkcji w portalu Azure. Możesz to zrobić na karcie Wdrażanie na stronie Tworzenie aplikacji funkcji.
Jeśli chcesz użyć innego źródła wdrożenia lub dostawcy kompilacji do ciągłej integracji, najpierw utwórz aplikację funkcji, a następnie wróć do portalu i skonfiguruj ciągłą integrację w Centrum wdrażania.
Włączanie uwierzytelniania podstawowego dla wdrożeń
W niektórych przypadkach aplikacja funkcji jest tworzona z wyłączonym dostępem uwierzytelniania podstawowego do punktu końcowego scm
. Spowoduje to zablokowanie publikowania przez wszystkie metody, które nie mogą używać tożsamości zarządzanych do uzyskiwania dostępu do punktu końcowego scm
. Wpływ wyłączenia punktu końcowego scm
na publikowanie został szczegółowo opisany w dokumencie Wdrażanie bez uwierzytelniania podstawowego.
Ważne
W przypadku korzystania z uwierzytelniania podstawowego poświadczenia są wysyłane w postaci zwykłego tekstu. Aby chronić te poświadczenia, należy uzyskać dostęp tylko do scm
punktu końcowego za pośrednictwem szyfrowanego połączenia (HTTPS) podczas korzystania z uwierzytelniania podstawowego. Aby uzyskać więcej informacji, zobacz Bezpieczne wdrożenie.
Aby włączyć uwierzytelnianie podstawowe do scm
endpointu:
W portalu Azure, przejdź do swojej aplikacji funkcji.
W menu po lewej stronie aplikacji wybierz pozycję Ustawienia>Ustawienia>Ogólne ustawienia.
Ustaw Poświadczenia publikowania uwierzytelniania podstawowego SCM na Włączone, a następnie wybierz Zapisz.