Samouczek: automatyzowanie wdrażania rozwiązań przy użyciu GitHub Actions dla Microsoft Power Platform

W tym poradniku nauczysz się, jak:

  • Utwórz nowe repozytorium GitHub
  • Tworzenie dwóch przepływów pracy GitHub przy użyciu GitHub Actions dla Microsoft Power Platform

Przepływy pracy mogą automatycznie eksportować aplikację (jako rozwiązanie niezarządzane) ze środowiska programistycznego, generować artefakt kompilacji (rozwiązanie zarządzane) i wdrażać aplikację w środowisku produkcyjnym. W tym samouczku jest używane rozwiązanie ALMLab oraz środowiska, które skonfigurowałeś we wcześniejszych samouczkach.

Pokrewne samouczki: Rozpoczęcie pracy i Tworzenie aplikacji opartej na modelu.

Tworzenie konta GitHub

  1. Przejdź do https://github.com strony i wybierz pozycję Zarejestruj się lub Rozpocznij bezpłatną wersję próbną (lub zaloguj się, jeśli masz istniejące konto).

    Utwórz konto

  2. Po utworzeniu konta utwórz repozytorium, wybierając pozycję Utwórz repozytorium lub Nowy.

    Tworzenie repozytorium

    Możesz zobaczyć następujący alternatywny ekran docelowy:

    Utwórz nowe repozytorium

  3. Utwórz nowe repozytorium i nadaj mu poweractionslabnazwę . Upewnij się, że wybrano pozycję Dodaj plik README , aby zainicjować repozytorium, a następnie wybierz pozycję Utwórz repozytorium.

    Inicjuj repozytorium.

Tworzenie nowego klucza tajnego dla uwierzytelniania nazwy głównej usługi

  1. Przejdź do repozytorium i wybierz pozycję ustawienia . Rozwiń Secrets, a następnie wybierz pozycję Akcje.

  2. Na stronie Sekrety nadaj sekretowi nazwę PowerPlatformSPN. Wprowadź klucz tajny klienta z rejestracji aplikacji utworzonej w Microsoft Entra w polu Wartość, a następnie wybierz pozycję Dodaj klucz tajny. W dalszej części tego samouczka będziesz odwoływać się do klucza tajnego klienta w plikach YML, które definiują przepływy pracy GitHub.

    Utwórz klucz tajny nazwy głównej usługi

    Klucz tajny klienta/aplikacji jest teraz bezpiecznie przechowywany jako klucz tajny GitHub.

Utwórz przepływ pracy, aby wyeksportować i rozpakować plik rozwiązania do nowej gałęzi

  1. Wybierz pozycję Akcje, a następnie wybierz pozycję Skonfiguruj przepływ pracy samodzielnie. Możesz też wybrać pozycję Konfiguruj w polu Prosty przepływ pracy w sekcji sugerowanej dla tego repozytorium .

    Konfigurowanie przepływu pracy.

  2. Zostanie wyświetlony nowy plik YAML z podstawowym przepływem pracy, który pomoże Ci rozpocząć pracę z akcjami GitHub.

    Przykładowy plik YML

  3. Usuń wstępnie utworzoną zawartość, a następnie wklej zawartość z pliku export-and-branch-solution-with-spn-auth.yml. Zmień nazwę pliku na export-and-branch-solution.yml.

    Zmień nazwę i zastąp zawartość.

  4. Zaktualizuj <ENVIRONMENTURL>, podając adres URL środowiska programistycznego, z którego chcesz eksportować (na przykład: https://poweractionsdev.crm.dynamics.com).

  5. Zaktualizuj <APPID> i <TENANT ID>, wpisując własne wartości.

    • Jeśli używasz poświadczeń, wklej zawartość pliku export-and-branch-solution.yml zamiast zawartości pliku export-and-branch-solution-with-spn-auth.yml. Zastąp <USERNAME> nazwą użytkownika używaną do nawiązywania połączenia ze środowiskiem.

      Zmień nazwę i zastąp zawartość

    Napiwek

    Jeśli nie znasz GitHub Actions i chcesz dowiedzieć się więcej, zapoznaj się z oficjalną dokumentacją pod adresem https://docs.github.com/en/actions.

  6. Teraz możesz wykonać commit zmian. Wybierz opcję Rozpocznij zatwierdzanie, wpisz Utwórz eksport YML w polu tytuł, a następnie Dodaj opis (opcjonalnie). Następnie wybierz opcję Zatwierdź nowy plik.

    Rozpocznij zatwierdzanie.

Gratulacje. Pierwszy przepływ pracy GitHub został utworzony przy użyciu następujących akcji:

  • Kim jestem: Gwarantuje, że możesz pomyślnie połączyć się ze środowiskiem, z którego chcesz eksportować.
  • Eksport rozwiązania: Eksportuje plik rozwiązania ze środowiska programistycznego.
  • Rozpakowane rozwiązanie: plik rozwiązania eksportowany przez serwer jest skompresowanym plikiem (zip) ze skonsolidowanymi plikami konfiguracji. Te pliki początkowe nie są odpowiednie do zarządzania kodem źródłowym, ponieważ nie są one ustrukturyzowane, aby umożliwić systemom zarządzania kodem źródłowym prawidłowe wykrywanie różnic w plikach i przechwytywanie zmian, które chcesz zatwierdzić w kontroli wersji. Należy rozpakować pliki rozwiązania, aby były odpowiednie do przechowywania i przetwarzania w systemie kontroli wersji.
  • Rozwiązanie gałęzi: Tworzy nową gałąź do przechowywania wyeksportowanego rozwiązania.

Przetestuj proces eksportu i rozpakowywania

  1. Następnie przetestuj, czy przepływ pracy działa. Przejdź do pozycji Actions, wybierz pozycję Uruchom przepływ pracy, a następnie wybierz pozycję Uruchom przepływ pracy. Jeśli używasz innej nazwy rozwiązania niż ALMLab, zmień tutaj wartość, ale zachowaj te same wartości.

    Uruchom przepływ pracy.

  2. Po 5–10 sekundach przepływ pracy rozpoczyna się. Możesz wybrać uruchomiony przepływ pracy, aby monitorować postęp.

    Kliknij, aby wyświetlić przepływ pracy.

    Wybierz i wyświetl przepływ pracy.

  3. Po zakończeniu przepływu pracy sprawdź, czy została utworzona nowa gałąź z rozwiązaniem rozpakowanym do folderu solutions/ALMLab. Przejdź do karty Code i rozwiń listę rozwijaną branches.

  4. Wybierz gałąź utworzoną przez akcję.

  5. Sprawdź, czy katalog solutions/ALMLab został utworzony w nowej gałęzi. Następnie utwórz pull request, aby scalić zmiany do głównej gałęzi. Wybierz pozycję Wnieś wkład, a następnie w menu wysuwanym wybierz pozycję Otwórz pull request.

  6. Na ekranie Otwórz pull request dodaj tytuł i opis, jeśli chcesz, a następnie wybierz pozycję Utwórz pull request.

  7. Ekran zostanie zaktualizowany w celu wyświetlenia nowego pull request. Po utworzeniu pull request zostanie wyświetlone potwierdzenie, że gałąź nie ma konfliktu z gałęzią główną. To potwierdzenie oznacza, że można automatycznie scalić zmiany do gałęzi głównej. Wybierz pozycję Scal pull request, a następnie wybierz pozycję Potwierdź scalanie. Opcjonalnie wybierz pozycję Usuń gałąź, aby usunąć teraz nieistniejącą gałąź.

    Wyświetlanie gałęzi

  8. Wróć do domyślnej gałęzi (głównej) i sprawdź, czy rozwiązanie jest tam dostępne.

Tworzenie przepływu pracy, który można ponownie wykorzystać, w celu skompilowania artefaktu i zaimportowania do środowiska produkcyjnego

W tej sekcji utwórz dodatkowy przepływ pracy, który:

  • Tworzy rozwiązanie zarządzane i publikuje je jako artefakt GitHub
  • Importuje artefakt kompilacji do środowiska produkcyjnego.
  1. Przejdź do pozycji Akcje i wybierz pozycję Nowy przepływ pracy.

    Utwórz nowy przepływ pracy.

  2. Wybierz samodzielnie skonfiguruj przepływ pracy.

    Konfigurowanie przepływu pracy.

  3. Zmień tytuł przepływu pracy na release-solution-to-prod-with-inputs. Skopiuj zawartość z pliku release-solution-to-prod-with-inputs.yml i wklej ją do okna Edytuj nowy plik.

    Zmień nazwę i wklej kod.

  4. Zatwierdź zmiany. Wybierz opcję Rozpocznij commit, a następnie dodaj tytuł i opis (opcjonalnie). Następnie wybierz opcję Zatwierdź nowy plik.

    Zatwierdź zmiany.

Wywołaj przepływ pracy, który można ponownie wykorzystać, przy zdarzeniu wydania

W tej sekcji wywołasz przepływ pracy wielokrotnego użytku w zdarzeniu release.

  1. Przejdź do pozycji Akcje i wybierz pozycję Nowy obieg pracy.

    Utwórz nowy przepływ pracy.

  2. Wybierz opcję samodzielnej konfiguracji przepływu pracy.

    Skonfiguruj przepływ pracy.

  3. Zmień tytuł przepływu pracy na release-action-call. Skopiuj zawartość z pliku release-action-call.yml i wklej ją na ekranie Edytowanie nowego pliku .

    Zmień nazwę i wklej kod.

  4. Zaktualizuj następujące zmienne w nowym pliku przepływu pracy:

    • Zaktualizuj <BUILD_ENVIRONMENT>, podając adres URL środowiska kompilacji używanego do generowania rozwiązania zarządzanego. Na przykład: https://poweractionsbuild.crm.dynamics.com.
    • Zaktualizuj <PROD_ENVIRONMENT> przy użyciu adresu URL środowiska produkcyjnego, do którego wdrażasz. Na przykład: https://poweractionsprod.crm.dynamics.com.
    • Zaktualizuj <APP_ID> identyfikatorem aplikacji (klienta), który znajdziesz w sekcji Rejestracje aplikacji portalu Microsoft Azure, wybierając rejestrację utworzoną wcześniej w tym samouczku.
    • Zaktualizuj <TENANT_ID> identyfikatorem katalogu (dzierżawy), który znajduje się w aplikacji Rejestracje aplikacji portalu Microsoft Azure, wybierając rejestrację utworzoną wcześniej w tym samouczku.
  5. Zatwierdź zmiany. Wybierz opcję Rozpocznij commit, a następnie dodaj tytuł (opcjonalnie) i opis (opcjonalnie). Następnie wybierz opcję Zatwierdź nowy plik.

    Zatwierdź zmiany.

Przetestuj przepływ pracy wdrażania na produkcję

Teraz możesz przetestować ostatni przepływ pracy. Ten przepływ pracy jest wyzwalany po wdrożeniu nowej wersji w środowisku produkcyjnym.

  1. Przejdź do Wydania.

    Przejdź do wydań.

  2. Wybierz Utwórz nową wersję.

  3. Dodaj tag wydania i tytuł, a następnie wybierz pozycję Publikuj wydanie.

  4. Wybierz Akcje w celu wyświetlenia uruchomionego przepływu pracy.

    Wybierz, aby wyświetlić przepływ pracy.

  5. Wybierz uruchomiony przepływ pracy, aby wyświetlić działania w trakcie ich wykonywania.

    Wyświetl przepływ pracy.

  6. Zaczekaj na zakończenie każdej czynności.

    Wyświetl gałąź.

  7. Po zakończeniu przepływu pracy zaloguj się do środowiska produkcyjnego i sprawdź, czy rozwiązanie zostało wdrożone jako rozwiązanie zarządzane.

Wdróż aktualizację i przejrzyj zmiany przed wdrożeniem produkcyjnym

Przetestuj cały proces, a następnie sprawdź, jak można wyświetlać i weryfikować zmiany w samej aplikacji przed wdrożeniem jej w środowisku produkcyjnym.

  1. Przejdź do rozwiązania ALMLab w środowisku programistycznym i wybierz pozycję Edytuj lub wybierz nazwę wyświetlaną rozwiązania.

    Edytuj rozwiązanie.

  2. Wybierz i wyświetl tabelę Wniosek o czas wolny.

    Wyświetl tabelę.

  3. Wybierz pozycję + Dodaj kolumnę i utwórz nową kolumnę, jak pokazano na poniższej ilustracji.

    Dodaj kolumnę.

    Zaktualizowane wartości pól:**

    • Wyświetlana nazwa: Zatwierdzone
    • Typ danych: Tak/Nie
  4. Wybierz opcję Gotowe.

  5. Kliknij przycisk Zapisz tabelę. Dodaj kolumnę.

  6. Wróć do karty Actions repozytoriów GitHub, wybierz pozycję Uruchom przepływ pracy i wybierz przycisk Uruchom przepływ pracy.

    Uruchom przepływ pracy.

  7. Po 5–10 sekundach przepływ pracy uruchamia się. Wybierz uruchomiony przepływ pracy, aby monitorować jego postęp.

    Wybierz przepływ pracy.

    Wyświetl przepływ pracy.

  8. Po zakończeniu przepływu pracy przejdź do nowej gałęzi, wybierając pozycję Code, a następnie pozycję Gałęzie.

    Przejdź do gałęzi.

  9. Wybierz utworzoną gałąź, rozwijając contribute i wybierając pozycję Otwórz pull request.

  10. Dodaj tytuł (opcjonalnie), a następnie wybierz pozycję Utwórz pull request.

  11. Po zaktualizowaniu zawartości wybierz kartę Pliki zmienione .

  12. Zwróć uwagę, że zmiany w rozwiązaniu są podświetlone na zielono, aby wskazać, że ta sekcja pliku została dodana w porównaniu z tym samym plikiem w gałęzi głównej.

  13. Wróć do karty Rozmowa. Wybierz pozycję Żądania pobrania, a następnie wybierz utworzone wcześniej żądanie pobrania.

  14. Na stronie Żądanie pull request wybierz pozycję Squash and merge, aby scalić zaktualizowany plik rozwiązania z gałęzią główną. Opcjonalnie usuń gałąź, która jest teraz scalona z gałęzią main.

    Otwórz pull request dla nowej gałęzi, wyświetl zmiany i scal z domyślną gałęzią

  15. Wykonaj kroki opisane w sekcji Przetestuj przepływ pracy publikacji do środowiska produkcyjnego, aby utworzyć nową wersję i sprawdzić, czy zaktualizowane rozwiązanie zostało wdrożone w środowisku produkcyjnym.

Gratulacje. Pomyślnie skonfigurowano przykładowy przepływ pracy ciągłej integracji/ciągłego wdrażania przy użyciu GitHub Actions!

Zobacz też

Zautomatyzuj przepływ pracy od pomysłu do produkcji