Dostosowywanie przepływu pracy w Lab Management
Opublikowano: czerwiec 2016
Możesz użyć domyślnego szablonu laboratorium (LabDefaultTemplate) ze środowiskami laboratoryjnymi do automatyzacji kompilowania aplikacji, wdrażania nowej kompilacji do środowiska laboratoryjnego i wykonywania testów na nowej kompilacji. Informacje na temat używania laboratorium szablon domyślny, zobacz Tworzenie przepływów pracy Kompilacja-Wdrażanie-Testy dla środowiska SCVMM i Tworzenie przepływu pracy Kompilacja-Wdrażanie-Testy dla środowiska standardowego. Jednak każdy proces kompilacji, wdrażania i przetestowania może się nieznacznie różnić z powodu różnych wymagań. Na przykład jeden przepływ pracy może wymagać kopiowania plików binarnych testu z regularnych lokalizacji kompilacji, podczas gdy inny przepływ pracy wymaga kopiowania plików binarnych testu z lokalizacji tymczasowej. Lub jeden przepływ pracy może wymagać, że środowisko laboratoryjne jest zapisywane w bibliotece środowiska SCVMM, tak aby testerzy mogli wdrożyć je, natomiast inny przepływ pracy nie zapisuje w ogóle środowiska laboratoryjnego. Ponieważ domyślny szablon laboratorium jest oparty na Windows Workflow 4.0, jest pełni rozszerzalny i dostosowywalny, więc można dostosować LabDefaultTemplate, aby spełnić szczególne wymagania. W tym temacie opisano ogólne kroki dostosowywania szablonu domyślnego lab.
Wymagania
- Enterprise programu Visual Studio Visual Studio Test Professional
Poniżej przedstawiono kilka scenariuszy, w których dostosowanie domyślnego szablonu laboratorium jest użyteczne:
Dostosowanie do określenia lokalizacji plików binarnych testów innej niż lokalizacja kompilacji
Dostosowanie do obsługi programów instalacyjnych aplikacji wymagających ponownego uruchomienia komputera po wdrożeniu
Dostosowanie do odczytu plików kontroli źródła
Dostosowywanie do uzyskiwania dostępu do lokalizacji kompilacji przy użyciu konta agenta kompilacji
Dostosowanie do uzyskania dostępu do innych lokalizacji za pomocą konta usługi laboratorium
Podstawowe pojęcia dostosowywania przepływu pracy
Istnieją trzy podstawowe pojęcia związane z dostosowywaniem przepływu pracy:
Szablon Szablon definiuje kolejność działań lub czynności, które są częścią przepływu pracy. Szablon jest oparty na Windows Workflow Foundation w wersji 4.0 i jest przechowywany jako plik .xaml w Kontroli źródła. Aby załadować szablon do Edytora przepływu pracy, kliknij dwukrotnie plik .xaml. W Edytorze można zobaczyć różne rodzaje działań i sekwencji, które określają przepływ pracy. Następnie możesz użyć zmiennych o różnych zakresach, logiki warunkowej, pętli, itp do programowania szablonu, tak jak w każdym innym języku programowania. Windows Workflow Foundation umożliwia dostosowanie szablonu domyślnego laboratorium do własnych potrzeb.
Działania Działanie jest elementem składowym przepływu pracy i domyślny szablon laboratorium używa wielu działań. Możesz znaleźć dodatkowe działania w Przybornik pod Działania związane z zarządzaniem laboratorium Team Foundation. Aby użyć działania w przepływie pracy, przeciągnij je z przybornika do Edytora przepływu Visual Studio, aby wyznaczyć lokalizację w szablonie. Można określić parametry wejściowe i wyjściowe sprawdzając właściwości działania. Aby uzyskać więcej informacji na temat każde działanie Lab Management, zobacz Działania związane z przepływem pracy w Lab Management. Jeśli działania, które są dołączone do produktu, nie są wystarczające dla Twoich wymagań, można dodać nowe działania.
Argumenty Można utworzyć nowe argumenty wejściowe dla danych wejściowych od użytkownika i przekazać te wartości do działań. Wybierz kartę Argumenty u dołu okna edytora przepływu pracy, aby wyświetlić istniejące argumenty. Jeśli tworzysz nowe argumenty, pojawią się one w sekcji Parametry procesu kompilacji karty Proces w definicji kompilacji.
Pomyśl o tych pojęciach podczas analizowania dwóch poniższych przykładów, gdzie potrzebne jest dostosowanie. Pierwszy przykład mówi o tym, jak zmienić argument in istniejącego działania w szablonie, a drugi przykład mówi o tym, jak dodawać nowe działania z przybornika. Przykłady te powinny dać Ci wystarczający kontekst, aby zgodnie z wymaganiami dostosować szablonu domyślny laboratorium.
Przed rozpoczęciem dostosowywania
Istnieją pewne ogólne kroki, które należy wykonać przed rozpoczęciem dostosowywania domyślnego szablonu lab. Poniższy diagram ilustruje te kroki.
Aby przygotować się do dostosowywania
W programie Team Explorer kliknij dwukrotnie węzeł Kontrola źródła dla projektu zespołowego.
W Eksploratora kontroli źródła, rozwiń drzewo kontroli źródła i Znajdź $/ < nazwa_projektu > / BuildProcessTemplates folder.
Zmapuj ten folder do folderu lokalnego, na przykład C:\Sources.
Kliknij prawym przyciskiem myszy plik LabDefaultTemplate.11.xaml, a następnie wybierz Pobierz najnowszą wersję.
Utwórz kopię pliku LabDefaultTemplate.11.xaml i nadaj mu nową nazwę, na przykład LabDefaultTemplate_customize.11.xaml
Dodaj ten nowy plik do kontroli źródła.
Kliknij dwukrotnie nowy plik. Plik zostanie otwarty w Edytorze przepływu pracy Visual Studio.
Następnie dostosujesz kopię domyślnego szablonu laboratorium, która właśnie wykonana.
Dostosowanie do określenia lokalizacji plików binarnych testów innej niż lokalizacja kompilacji
Domyślny szablon przepływu pracy, LabDefaultTemplate, zakłada, że lokalizacja plików binarnych testu jest taka sama, jak lokalizacja upuszczania kompilacji. Jednak w danej sytuacji kod testu może nie być kompilowany obok kodu produktu. W takim przypadku można dostosować szablon, tak aby pliki binarne testu były pobierane z innej lokalizacji. To dostosowanie obejmuje trzy kroki, jak pokazano na poniższej ilustracji.
Definiowanie przepływu pracy argumentu in do określenia ścieżki testowej plików binarnych
Aby zdefiniować argument in
W dolnej części okna edytora przepływu pracy kliknij kartę Argumenty.
Wybierz Utwórz argument. W polu tekstowym wpisz nazwę argumentu, na przykład TestBinariesLocation. Na liście rozwijanej Kierunek wybierz pozycję Wejście. Na liście rozwijanej Typ argumentu wybierz pozycję Ciąg.
Przekazywanie wartości argumentu do działania ExecuteRemoteTestRun
Ta działalność tworzy test zdalny, czeka, aż zakończy się test, a następnie aktualizuje informacje o kompilacji za pomocą statystyk z przebiegu testu.
Aby przekazać wartość argumentu
W edytorze przepływu pracy przewiń do działania Uruchomione testy. Chociaż nazwa wyświetlana działania to Uruchomione testy, typem działania jest ExecuteRemoteTestRun.
Kliknij prawym przyciskiem myszy działanie, a następnie wybierz Właściwości. Okno Właściwości otwiera się w prawym dolnym rogu i wyświetla argumenty in i out dla tego działania. Jednym z wewnętrznych argumentów tego działania jest TestDirectory, który ustawia ścieżkę lokalizacji plików binarnych testów.
W oknie Właściwości kliknij Katalog testowy. Na końcu wiersza kliknij przycisk z wielokropkiem (...).
W Edytorze wyrażeń wpisz TestBinariesLocation, a następnie wybierz przycisk OK.
W menu Plik wybierz polecenie Zapisz plik LabDefaultTemplate_customize.11.xaml
Na pasku eksploratora kontroli źródła menu wybierz polecenie ewidencjonowania ikonę.
Możesz teraz użyć niestandardowy plik .xaml, aby utworzyć nowe definicje kompilacji. Nowy argument TestBinariesLocation pojawią się w części Różne karty Proces w definicji kompilacji, i możesz tam przypisać wartość.
Dostosowanie do obsługi programów instalacyjnych aplikacji wymagających ponownego uruchomienia komputera po wdrożeniu
Domyślny szablon lab, nie uruchamia ponownie środowiska laboratoryjnego po wdrożeniu aplikacji. Możesz chcieć dostosować szablon do obsługi aplikacji, które mogą wymagać ponownego uruchomienia po ich wdrożeniu. Jeśli wdrożono aplikację ręcznie w środowisku laboratoryjnym, należy ponownie uruchomić tylko komputer, gdzie aplikacja została zainstalowana. Visual Studio Zarządzanie Lab nie obsługuje operacji na maszynach wirtualnych w środowisku. W związku z tym, aby ponownie uruchomić go na komputerze, trzeba ponownie uruchomić wszystkie komputery w środowisku laboratoryjnym.
Ostrzeżenie
Upewnij się, że skrypty wdrażania nigdy nie spowodują ponownego uruchomienia komputera.W takim przypadku agent kompilacji uruchamiający skrypt wdrażania straci połączenie z kontrolerem kompilacji i przepływ pracy może się zatrzymać.
Ponowne uruchamianie maszyn wirtualnych po wdrożeniu nowej kompilacji wymaga dodania trzech działań do LabDefaultTemplate:
Zatrzymaj środowisko
Uruchom środowisko
Poczekaj, aż maszyny wirtualne zostaną uruchomione zanim będziesz kontynuować przepływ pracy.
Zatrzymaj środowisko
Możesz dodać działanie stop środowiska do domyślnego szablonu przepływu pracy przeciągając działanie StopLabEnvironment z Przybornika do szablonu przepływu pracy i inicjując zmienne aktywności.
Aby zatrzymać środowisko
W edytorze przepływu pracy przewiń do działania o nazwie wyświetlanej Wdrażanie aplikacji powiodło się.
Na pasku menu wybierz Widok, Przybornik. Przybornik otwiera się po lewej stronie i wyświetla listę Działalności związane z kompilacją Team Foundation. Przewijaj listę czynności, aż pojawi się lista Działania związane z zarządzaniem Team Foundation Lab.
W przyborniku wybierz działanie StopLabEnvironment. Przeciągnij go do edytora przepływu pracy i umieść przed aktywnością Pomyślne rozmieszczanie aplikacji.
Kliknij prawym przyciskiem myszy działanie, a następnie kliknij Właściwości. Okno właściwości ukazuje argumenty in i out argumenty dla tego działania. Zwróć uwagę, że przepływ pracy ma już zmienną o nazwie LabEnvironmentUri, która odnosi się do środowiska identyfikatora URI.
Wybierz zakładkę Zmienne. Wyświetlana jest lista zmiennych.
W wierszu LabEnvironmentUri i w kolumnie Domyślnie kliknij dwukrotnie pozycję Wprowadź wyrażenie VB. W polu tekstowym wpisz LabEnvironmentUri. Edytor wyświetli wszystkie istniejące użycia parametru, i będziesz mógł wybrać z tej listy wartość, nie będziesz jej musiał wpisywać.
Uruchom środowisko
Możesz dodać działanie start środowiska do domyślnego szablonu lab przeciągając działanie StartLabEnvironment z Przybornika do szablonu przepływu pracy i inicjując zmienne aktywności.
Aby uruchomić środowisko
W przyborniku wybierz działanie StartLabEnvironment. Przeciągnij go do edytora przepływu pracy i umieść przed aktywnością Pomyślne rozmieszczanie aplikacji, ale po aktywności StopLabEnvironment.
Kliknij prawym przyciskiem myszy działanie, a następnie kliknij Właściwości. Okno właściwości ukazuje argumenty in i out argumenty dla tego działania. Ponownie zwróć uwagę na przepływ pracy, który ma już zmienną o nazwie LabEnvironmentUri, która odnosi się do środowiska identyfikatora URI.
Wybierz zakładkę Zmienne. Wyświetlana jest lista zmiennej.
W wierszu LabEnvironmentUri i w kolumnie Domyślnie kliknij dwukrotnie pozycję Wprowadź wyrażenie VB. W polu tekstowym wpisz LabEnvironmentUri. Edytor wyświetli wszystkie istniejące użycia parametru, i będziesz mógł wybrać z tej listy wartość, nie będziesz jej musiał wpisywać.
Poczekaj, aż maszyny zostaną uruchomione ponownie zanim będziesz kontynuować przepływ pracy.
Możesz dodać czas oczekiwania na uruchomienie maszyn wirtualnych przeciągając działanie Opóźnij z Przybornika do szablonu przepływu pracy i inicjując zmienne aktywności. Ta działalność znajduje się na karcie Elementy podstawowe w Przyborniku.
Aby czekać uruchomienie maszyn wirtualnych
Z przybornika wybierz podstawowych karty.
Kliknij aktywność Opóźnienie. Przeciągnij go do edytora przepływu pracy i umieść go przed aktywnością Pomyślne rozmieszczanie aplikacji, ale po aktywności StartLabEnvironment.
Kliknij prawym przyciskiem myszy działanie, a następnie kliknij Właściwości. Okno właściwości ukazuje argumenty in i out argumenty dla tego działania. Zwróć uwagę, że przepływ pracy ma już zmienną o nazwie Czas trwania, która odnosi się do czasu oczekiwania.
W oknie Właściwości wybierz opcję Czas trwania, a następnie wybierz wielokropek (…).
W Edytorze wyrażeń wpisz czas oczekiwania (na przykład 10 minut) w formacie TimeSpan.FromMinutes(10).
Po zmodyfikowano tego szablonu, zaewidencjonuj do kontroli źródła i użyj go, aby utworzyć nową definicję kompilacji do wdrożenia aplikacji, które wymagają ponownego uruchomienia po zakończeniu instalacji.
Dostosowanie do odczytu plików kontroli źródła
Jeśli tworzysz działania niestandardowe, a następnie używasz ich w szablonie przepływu pracy, upewnij się, czy agent kompilacji, który komunikuje się za pomocą konta usługi laboratoryjnej, ma dostęp do tych działań. Ponieważ te działania muszą być sprawdzone systemie kontroli źródła jako zestawy niestandardowe, należy się upewnić, że konto usługi tego laboratorium ma uprawnienia do odczytu ścieżki, w której niestandardowe zestawy są sprawdzane. Aby uzyskać więcej informacji o koncie usługi laboratorium, zobacz Porady: konfigurowanie konta usługi laboratoryjnej można udzielić uprawnień do usługi laboratorium konta przy użyciu tf uprawnienia polecenia. Na przykład aby udzielić uprawnień do odczytu do mydomain\labAccount konta usługi laboratorium, na ścieżce $/ MyProject/CustomAssemblies, powinien wykonać polecenie podobne do: C:\Program Files\Microsoft Visual Studio 12.0\Common7\IDE>tf permission /user:mydomain\labAccount /collection:http://aseemb-tfs11:8080/tfs/Collection0 /allow:read $/MyProject/CustomAssemblies
Dostosowywanie do uzyskiwania dostępu do lokalizacji kompilacji przy użyciu konta agenta kompilacji
Agent kompilacji, który wykonuje przepływ pracy, uzyskuje dostęp do lokalizacji kompilacji za pomocą konta usługi laboratorium. Jeśli chcesz, aby zamiast tego agent kompilacji używał konta agenta kompilacji, można dostosować domyślny szablon laboratorium. W szablonie znajdź działanie RunDeploymentScript, które wykonuje skrypty wdrażania. Ta działalność opisuje właściwość SharedLocationForNetUse, która określa lokalizację, do której należy uzyskać dostęp przy użyciu konta usługi laboratorium. <mtlwa:RunDeploymentScript DisplayName="Running Deployment Script" ScriptDetails="[scriptDetails]" ThrowOnError="True" SharedLocationForNetUse="[BuildLocation]" />Aby uzyskać dostęp do lokalizacji docelowej przy użyciu konta agenta kompilacji zamiast konta usługi laboratorium, można usunąć właściwość z szablonu lub ustawić wartość tej właściwości na wartość pustą ({x: Null}), jak pokazano w poniższym przykładzie: mtlwa:RunDeploymentScript DisplayName="Running Deployment Script" ScriptDetails="[scriptDetails]" ThrowOnError="True" SharedLocationForNetUse="{x:Null}" />
Dostosowanie do uzyskania dostępu do innych lokalizacji za pomocą konta usługi laboratorium
Jeśli agent kompilacji uruchomiony w ramach konta usługi laboratoryjnej musi odczytać lokalizacje inne niż docelowa lokalizacja kompilacji, można zmienić wartość właściwości SharedLocationForNetUse z domyślnej wartości [BuildLocation] na żądaną lokalizację. Na przykład kompilacji agenta uruchomiona na koncie usługi laboratorium na dostęp do katalogu \\contoso\scripts, użytkownik musi mieć: <mtlwa:RunDeploymentScript DisplayName="Running Deployment Script" ScriptDetails="[scriptDetails]" ThrowOnError="True" SharedLocationForNetUse="\\contoso\scripts" />
Zobacz też
Działania związane z przepływem pracy w Lab Management
Korzystanie ze środowiska laboratoryjnego dla cyklu użytkowania Twojej aplikacji
Zdefiniuj proces kompilacji
Tworzenie lub edycja definicji kompilacji
Developer wprowadzenie do programu Windows Workflow Foundation (WF) na platformie .NET 4