Dostosowywanie szablonu procesu kompilacji

Jeśli użytkownik potrzebuje procesu kompilacji, który wykracza poza możliwości szablonu domyślnego, może dostosować szablon procesu kompilacji do własnych instrukcji w programie Windows Workflow Foundation (WWF).Instrukcje użytkownika może uruchomić kod .NET Framework, który zaimplementowano w obiektach CodeActivity.Można uruchomić działania, które są wbudowane w program Team Foundation Build (TFBuild), oferowane przez strony trzecie lub — w razie potrzeby — utworzone przez użytkownika.

PoradaPorada

Jeśli niestandardowe funkcje procesu kompilacji mogą być kodowane w pliku wsadowym systemu Windows lub skrypcie programu PowerShell, można załadować skrypt i uruchomić go jako część procesu kompilacji.Takie podejście może być prostsze i działać szybciej niż tworzenie niestandardowego procesu kompilacji.Zobacz Uruchamianie skryptu w procesie kompilacji.

  • Uruchom niestandardowe rozwiązanie procesu kompilacji i utwórz szablon

  • Użyj niestandardowego szablonu w definicji kompilacji

  • Uzyskaj odpowiedzi na często zadawane pytania

Uruchom niestandardowe rozwiązanie procesu kompilacji i utwórz szablon

Przed zaimplementowaniem instrukcji wyodrębnij kopię szablonu domyślnego z serwera Team Foundation i dodaj go do projektu kodu języka Visual Basic.

Ważna uwagaWażne

Czy pracujesz nad Ikona Gitprojektem zespołowym Git?Masz zamiar załadować pliki binarne działania procesu kompilacji?Jeśli tak, przechowywanie plików binarnych (szczególnie wielu poprawek do dużych plików) może nadmiernie powiększyć repozytorium Git.Zaleca się, aby przechowywać swoje pliki binarne niestandardowego procesu kompilacji w repozytorium odseparowanym od kodu, z którego skompilowano aplikację.Można albo utworzyć oddzielny projekt zespołowy dla procesów kompilacji, albo utworzyć dodatkowe repozytorium w istniejącym projekcie zespołowym.

  1. Połącz się z (klawiatura: Ctrl + 0, C) projektem zespołowym (i, jeśli ma to zastosowanie, z Ikona Gitrepozytorium Git), gdzie planujesz przechowywać źródło procesu kompilacji.

  2. Utwórz nowy projekt kodu (klawiatura: Ctrl + Shift + N).

    Dokładniej mówiąc, utwórz nowe rozwiązanie (na przykład BuildProcessSource) zawierające nowy projekt działania kodu biblioteki Visual Basic dla przepływu pracy (na przykład Szablony).Dodaj rozwiązanie do nowego katalogu pod kontrolą wersji w zrozumiałej lokalizacji.

    Ikona TFVC Przykład TFVC: C:\Users\YourName\Source\Workspaces\FabrikamTFVC\BuildProcessTemplates\

    Ikona Git Przykład Git: C:\Users\YourName\Source\Repos\BuildProcesses\

    Utwórz projekt kodu zawiera nowy szablon

    Dlaczego potrzebny jest projekt kodu, aby edytować szablon?

  3. Na stronie kompilacji (klawiatura: Ctrl + 0, B) utwórz lub edytuj definicję kompilacji.

    Nową definicję kompilacji lub Edycja definicji kompilacji

  4. Pobierz kopię szablonu domyślnego.Zapisz nowy szablon w tym samym folderze, który zawiera projekt kodu utworzonego wcześniej w tej procedurze

    Ikona TFVC Przykład TFVC: C:\Users\YourName\Source\Workspaces\FabrikamTFVC\BuildProcessTemplates\BuildProcessSource\Templates.

    Ikona Git Przykład Git: C:\Users\YourName\Source\Repos\BuildProcesses\BuildProcessSource\Templates.

    Pobierz łącze na karcie proces definicji kompilacji

    Okno dialogowe Zapisz jako

  5. W Eksploratorze rozwiązań (klawiatura: Ctrl + Alt + L) dodaj szablon do projektu Szablony.

    Dodać plik szablonu procesu kompilacji do projektu

    Dodaj istniejący element, okno dialogowe

    Nie jest potrzebny plik Activity1.xaml, więc można go usunąć.

  6. Ustaw właściwość akcji szablonu zawartości.

    Ustawianie akcji kompilacji zawartości

  7. Dodaj następujące odwołania do projektu kodu Szablony:

    Jak dodać te odwołania do projektu kodu?

    Zapisz projekt kodu.

  8. Zaimplementuj komunikat "Hello World!", aby następnie go zaewidencjonować, uruchomić i zyskać pewność, że działa.W tym celu przeciągnij działanie WriteBuildMessage do przepływu pracy i ustaw jego właściwość BuildMessageImportance na wartość Microsoft.TeamFoundation.Build.Client.BuildMessageImportance.High.

    Dodane do szablonu WriteBuildMessage działania

  9. Zapisz szablon, a następnie załaduj nowe rozwiązanie.Można też zaewidencjonować oczekujące zmiany w Ikona TFVC TFVC (klawiatura: Ctrl + 0, P) lub zatwierdzić (klawiatura Ctrl + 0, G) i odesłać je, jeśli korzystasz z Ikona Git Git.

    Przekazywanie zmian za pomocą TFVC lub Git

Użyj niestandardowego szablonu w definicji kompilacji

Po przesłaniu niestandardowego szablonu procesu kompilacji do projektu zespołowego, jak wyjaśniono powyżej, można użyć szablonu ze swojej definicji kompilacji.

  1. Na stronie kompilacji (klawiatura: Ctrl + 0, B) utwórz lub edytuj definicję kompilacji.

  2. Na karcie definicji kompilacji Proces wybierz kolejno opcje Pokaż szczegółyPokaż szczegóły, a następnie Nowy.

    Tworzenie definicji, karta procesu, przycisk Nowa

  3. Po wybraniu opcji Nowy:

    • TFVC: wpisz lub wyszukaj ścieżkę do szablonu programu Team Foundation Server.

    • Git: wpisz lub wyszukaj ścieżkę do szablonu na maszynie deweloperskiej.

  4. Po określeniu ścieżki do szablonu można wybrać go z listy.

    CustomTemplate wybrany w definicji kompilacji

  5. Jeśli tworzysz nową definicję kompilacji, wybierz tworzone rozwiązanie i określ tymczasową lokalizację oraz inne potrzebne opcje.Zobacz Tworzenie lub edycja definicji kompilacji.Po zakończeniu zapisz definicję kompilacji.

  6. Na stronie kompilacji (klawiatura: Ctrl + 0, B) zakolejkuj kompilację.

    Kolejkowanie kompilacji na stronie kompilacje

  7. Po zakończeniu kompilacji przejrzyj wyniki, aby zweryfikować przepływ pracy dostosowany zgodnie z oczekiwaniami.

    W dzienniku kompilacji pojawia się komunikat "Witaj świecie!"

Pytania i odpowiedzi

Pyt.: System zablokował mnie, ponieważ nie mam uprawnień.Jak sobie z tym poradzić?

Odp.: Uprawnienia serwera programu Team Foundation Server

Pyt.: Dlaczego potrzebny jest projekt kodu, aby edytować szablon?

Odp.: Należy edytować szablony z projektu kodu, ponieważ

  • mogą wystąpić problemy podczas próby edytowania szablonu poza kontekstem projektu kodu.

  • Jeśli nie opracowywano działania procesu kompilacji w tym samym rozwiązaniu, co szablonów procesu kompilacji, mogą wystąpić problemy.Gdy pracuje się w ten sposób, gdy trzeba użyć jednego z działań w szablonie procesu, jest ono dostępne w przyborniku projektanta przepływu pracy.Należy jednak zachować kod źródłowy swoich działań w projekcie osobnego kodu niż ten, który zawiera szablony procesu kompilacji.Zobacz Używanie i opracowywanie czynności niestandardowego procesu kompilacji.

Pyt.: Jak dodać odwołania, które są potrzebne do pracy z przepływem pracy w programie TFBuild?

Odp.: Użyj Menadżera odwołań, aby dodać odwołania do

Wyświetl odwołania do projektu kodu i otwórz Menadżera odwołań.

Odwołuje się do szablonu niestandardowego kodu projektu

Okno dialogowe Menedżer odniesienia

Przejdź do C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\ReferenceAssemblies\v2.0, a następnie wybierz i dodaj:

Wybierz pliki do odwołania się okno dialogowe

Okno dialogowe Menedżer odniesienia

Pyt.: Czy w projektach zespołowych można udostępnić szablon?

Odp. Tak.Można zarejestrować szablon dla więcej niż jednego projektu zespołowego.Oznacza to, że można dzielić proces kompilacji pomiędzy dowolnymi projektami zespołowymi w obrębie kolekcji projektów zespołowych, która zawiera ten szablon.

Pyt.: Jeśli zmodyfikuję szablon, co stanie się z definicjami kompilacji, które go używają?

A: Jeśli trzeba zmodyfikować szablon, należy zaplanować przegląd wszystkich definicji kompilacji opartych na tym szablonie. Trzeba też poprawić je, po zakończeniu wprowadzania zmian w szablonie.Jeśli użytkownik nie wykona tych czynności, definicje kompilacji mogą nie działać poprawnie lub działać w sposób nieoczekiwany.

Pyt.: Co się stanie, jeśli usunę mój szablon procesu kompilacji?

Odp.: Jeśli zdecydujesz się usunąć szablon procesu kompilacji, najpierw zlokalizuj i usuń wszystkie definicje kompilacji oparte na tym szablonie.Po usunięciu szablonu nie będą działać żadne pozostałe definicje kompilacji oparte na tym szablonie.

Pyt.: Co jest przyczyną błędów w moim niestandardowym procesie kompilacji?

Odp.: Kilka najczęstszych przyczyn niektórych błędów:

  • TF215097: Może się pojawić, jeśli działanie niestandardowe nie ma wymaganego atrybutu lub w przypadku próby edytowania szablonu w tym samym projekcie kodu, który zawiera działania niestandardowe.

  • Błąd programu MSBuild XC1014: może się pojawić, jeśli nie ustawisz Akcji kompilacji swojego szablonu dla zawartości.

Jeśli zostanie wyświetlony jeden z powyższych błędów, należy się upewnić, czy nie pominięto żadnego z kroków powyższych procedur.

Użytkownik może również znaleźć pomocne informacje w następującym temacie: Diagnozowanie problemów Twojej kompilacji.

Pyt.: Co to jest Windows Workflow Foundation?Jak z tego korzystać?

A:Windows Workflow Foundation.

Pyt.: Jak uzyskać dane zmiennej środowiskowej?

Odp.:Użyj danych środowiskowych z procesu kompilacji niestandardowej

Pyt.: Gdzie można dowiedzieć się więcej o wbudowanych działaniach?

Odp.:Team Foundation Build — działania

Co należy zrobić, jeśli wbudowane działania nie odpowiadają moim potrzebom?

Odp.:Opracuj własne niestandardowe działania procesu kompilacji.

Pyt.: Gdzie można uzyskać szablony, działania przepływu pracy i skrypty?

A:Community TFS Build Extensions

Pyt.: Gdzie można dowiedzieć się więcej o tworzeniu niestandardowych procesów kompilacji?

A:Curated answer: Customize your Team Foundation Build process