Dokumentacja interfejsu wiersza polecenia migracji na żywo (ELM) dla przedsiębiorstw

usługi Azure DevOps

W tym artykule wymieniono polecenia interfejsu wiersza polecenia Azure DevOps i parametry używane do uruchamiania migracji na żywo przedsiębiorstwa (ELM) oraz wartości stanu i etapu zwracane przez interfejs wiersza polecenia podczas migracji.

Commands

Polecenia migracji

Polecenie Wymagane parametry Parametry opcjonalne HTTP Description
list --org --project, , --include-all--detect GET Wyświetlanie listy migracji. Domyślnie interfejs wiersza polecenia zwraca tylko aktywną migrację dla każdego repozytorium. Służy --include-all do dołączania ukończonych, zakończonych niepowodzeniem i zawieszonych migracji.
status --org, --repository-id --detect GET Uzyskaj szczegółowy stan jednej migracji.
create --org, , --repository-id, , --target-repository--agent-pool --target-owner-user-id, --service-endpoint-id, , , --github-token--validate-only--cutover-date--skip-validation--enable-boards-github-connection--enable-auto-discover-pipelines--pipeline-service-connection-id--detect POST Utwórz nową migrację. Jeśli nie przejdziesz--service-endpoint-id, interfejs wiersza polecenia sprawdziELM_GITHUB_TOKEN, a następnie uruchomi GitHub przepływ urządzenia w celu uwierzytelnienia w obiekcie docelowym.
pause --org, --repository-id --detect POŁÓŻ Wstrzymaj aktywną migrację.
resume --org, --repository-id --validate-only, , --migration--detect POŁÓŻ Wznów zatrzymaną migrację.
cutover set --org, , --repository-id--date --detect POŁÓŻ Zaplanuj datę i godzinę migracji jednorazowej. Wartość musi być w przyszłości.
cutover cancel --org, --repository-id --detect POŁÓŻ Anulowanie zaplanowanego migracji jednorazowej. Tylko prawidłowy, gdy etap jest Synchronization; odrzucony po przejściu etapu do Cutover. Wysyła usługę DateTimeOffset.MinValue sentinel (0001-01-01T00:00:00+00:00), ponieważ serwer ignoruje null element .scheduledCutoverDate
cutover review --org, --repository-id --detect GET Wyświetlanie listy nieprzetworzonych elementów i wymagań weryfikacji potoku oczekujących na zatwierdzenie.
cutover approve --org, --repository-id --accept-failures, , --pipelines-verified--detect POŁÓŻ Zatwierdzanie migracji jednorazowej przez akceptowanie nieprzetworzonych elementów i/lub weryfikowanie ponownie połączonych potoków. Podaj co najmniej jedną z wartości --accept-failures lub --pipelines-verified. Nieodwracalne — bez odwoływania interfejsu API; odzyskiwanie za pomocą abandon polecenia + ponowne utworzenie.
abandon --org, --repository-id --remove-read-only, , --yes--detect USUŃ Porzucenie migracji. Rekord migracji nie jest czyszczone, a dane ponownego instalowania potoku są zachowywane, więc późniejsza migracja może użyć go ponownie. Monituje o potwierdzenie, chyba że przekażesz --yespolecenie .

Polecenia ponownego instalowania potoku (wersja zapoznawcza)

Ponowne wirowanie potoków odwołujących się do repozytorium źródłowego Azure Repos w zmigrowanym repozytorium GitHub. Ponowne wirowanie jest zawsze dostępne dla migracji w jednym z dwóch trybów:

  • Automatyczne odnajdywanie — przekazywane --enable-auto-discover-pipelines razem z ciągiem --pipeline-service-connection-id .create Zadanie synchronizacji ELM przeprowadzi repozytorium źródłowe i utworzy definicje klonowania dla każdego potoku, który się do niego odwołuje.
  • Ręczne — rejestrowanie określonych potoków po create użyciu polecenia pipelines submit. W dowolnym momencie można mieszać tryby i dostosowywać rejestrację za pomocą polecenia pipelines update.
Polecenie Wymagane parametry Parametry opcjonalne HTTP Description
pipelines list --org, --repository-id --detect GET Wyświetlanie listy konfiguracji ponownego wirowania potoku i stanu dla potoku.
pipelines submit --org, , --repository-id--pipeline-ids --service-connection-id, , --repository-mapping--detect POST Zarejestruj określone potoki do ponownego wirowania.
pipelines update --org, --repository-id --add-ids, , --remove-ids, --retry-ids, --service-connection-id, , --repository-mapping--detect POŁÓŻ Zbiorcze dodawanie, usuwanie, ponawianie próby lub zmienianie połączenia usługi dla zarejestrowanych potoków. Wymagana jest co najmniej jedna flaga aktualizacji.
pipelines retry --org, , --repository-id--pipeline-ids --detect POŁÓŻ Ponów próbę nie powiodło się ponowne przełączanie wpisów potoku.
pipelines delete --org, , --repository-id--migration-id --yes, --detect USUŃ Usuń dane ponownego instalowania potoku (konfigurację i sklonowane definicje) na potrzeby migracji. Użyj tego polecenia, aby wyczyścić ponownie wirujące dane na potrzeby migracji, która zakończyła się niepowodzeniem; abandon sam go nie usuwa.

Szczegóły parametru

Parametr Typ Używane przez Description
--org adres URL Wszystko Azure DevOps adres URL organizacji, na przykład https://dev.azure.com/<org>. Ustaw tę wartość jako domyślną.
--repository-id GUID Wszystkie z wyjątkiem list Azure Repos identyfikator GUID repozytorium. Pobierz wartość z az repos show --query id. Migracje są identyfikowane tylko przez repositoryId — odpowiedź interfejsu API nie ma oddzielnego pola identyfikatora migracji i może istnieć co najwyżej jedna aktywna migracja na repozytorium.
--target-repository adres URL create Docelowy adres URL repozytorium, na przykład https://<enterprise>.ghe.com/<org>/<repo>. Musi zaczynać się od http:// lub https://. Serwer weryfikuje tę wartość.
--target-owner-user-id ciąg create GitHub identyfikator użytkownika (uchwyt) właściciela repozytorium docelowego. Przestarzałe i ignorowane po włączeniu rozpoznawania właściciela opartego na tokenach po stronie serwera.
--service-endpoint-id GUID create Optional. Azure DevOps identyfikator połączenia usługi dla połączenia GitHub Enterprise Server używanego do synchronizacji zatwierdzeń z obiektem docelowym. Po ustawieniu GitHub przepływ urządzenia jest pomijany. Niezależnie od weryfikacji tożsamości użytkownika — nadal można je podać --github-token lub ELM_GITHUB_TOKEN obok niej.
--github-token ciąg create Opcjonalne GitHub tokenu użytkownika (LUB PAT) na potrzeby weryfikacji tożsamości użytkownika na hoście docelowym. Jeśli pominięto i --service-endpoint-id nie zostanie podany, interfejs wiersza polecenia sprawdzaELM_GITHUB_TOKEN, a następnie uruchamia GitHub przepływ urządzenia.
--agent-pool ciąg create Nazwa puli agentów dla pracy migracji.
--validate-only flaga create, resume W programie create: uruchom tylko testy przed migracją. W resumepozycji : przełącz się do trybu tylko do weryfikacji. Wyniki weryfikacji wygasają 24 godziny po pomyślnym uruchomieniu; uruchom (lub podwyższ poziom do) pełnej migracji w tym oknie.
--migration flaga resume Podwyższanie poziomu pomyślnego uruchomienia tylko weryfikacji do pełnej migracji (zestawy validateOnly=false i statusRequested=active). Prawidłowe tylko po zakończeniu poprzedniego przebiegu tylko weryfikacji za pomocą polecenia status: Succeeded. Wzajemnie wykluczające się z --validate-only.
--cutover-date ISO 8601 create Wstępne planowanie migracji jednorazowej w czasie tworzenia, na przykład 2030-12-31T11:59:00Z.
--date ISO 8601 cutover set Zaplanuj datę i godzinę migracji jednorazowej, na przykład 2030-12-31T11:59:00Z. Musi być w przyszłości.
--skip-validation ciąg create Zdecydowanie zalecamy unikanie tego parametru, ponieważ znacznie zwiększa ryzyko niepowodzenia migracji, jak wyjaśniono w artykule Introduction to Enterprise Live Migrations (ELM) (Wprowadzenie do migracji na żywo w przedsiębiorstwie). Rozdzielona przecinkami lista nazw zasad weryfikacji lub nieujemna maska bitów. Nazwy zasad (bez uwzględniania wielkości liter): None, , ActivePullRequestCount, PullRequestDeltaSizeAgentPoolExistsMaxFileSizeMaxPullRequestSizeMaxPushPackSizeMaxReferenceNameLengthTargetRepositoryDoesNotExistSourceRepositoryContainsLfsObjectsSourceRepositoryNotReadOnly, . BoardsGitHubConnectionProvisioningAll
--enable-boards-github-connection (--enable-boards-gh) flaga create Zrezygnuj z aprowizacji połączenia Azure Boards GitHub podczas migracji jednorazowej. Domyślnie wyłączone. Wymaga zainstalowania aplikacji Azure Boards GitHub w organizacji docelowej GitHub przed uruchomieniem migracji.
--enable-auto-discover-pipelines (--auto-discover) flaga create Zrezygnuj z automatycznego odnajdywania potoków w trybie jednorazowym. Domyślnie wyłączone. Wymaga --pipeline-service-connection-id; interfejs wiersza polecenia odrzuca polecenie w przypadku przekazania tej flagi bez połączenia z usługą.
--pipeline-service-connection-id (--pipeline-sc-id) GUID create Project o zakresie GitHub identyfikator połączenia usługi dołączony w czasie tworzenia na potrzeby ponownego wirowania potoku. Wymagane do automatycznego odnajdywania; opcjonalnie w trybie ręcznym, gdzie wstępnie dołącza połączenie, więc późniejsze pipelines submit wywołania wymagają --pipeline-idstylko .
--accept-failures liczba całkowita cutover approve Liczba nieprzetworzonych zasobów migracji do zaakceptowania przed kontynuowaniem migracji jednorazowej. Podaj ten i/lub --pipelines-verified.
--pipelines-verified flaga cutover approve Potwierdź, że wszystkie ponownie wirowane potoki zostały zweryfikowane. Wymagane w przypadku cutover review zwracania wartości requiresPipelineVerificationAcknowledgment: true. Można połączyć z --accept-failures jednym wywołaniem.
--pipeline-ids lista int pipelines submit, pipelines retry Identyfikatory definicji potoku. Akceptuje wartości rozdzielane spacjami (42 43 44) lub rozdzielane przecinkami (42,43,44).
--service-connection-id GUID pipelines submit, pipelines update Project identyfikator połączenia usługi GitHub o zakresie. Opcjonalnie, submit jeśli połączenie zostało już dołączone w czasie tworzenia lub za pośrednictwem polecenia pipelines update.
--add-ids / --remove-ids / --retry-ids lista int pipelines update Identyfikatory potoków do dodawania, usuwania z lub ponawiania próby w zestawie ponownego instalowania.
--repository-mapping ciąg pipelines submit, pipelines update Mapowanie repozytorium w formularzu <sourceRepoId>=<targetOwner>/<targetRepo>. Element docelowy musi mieć owner/repo postać, a nie adres URL. Można podać wiele razy.
--migration-id liczba całkowita pipelines delete Identyfikator migracji używany do oczyszczania ponownego instalowania potoku. Odczytaj go z prefiksu Migration NN: w validationIssues tekście .migrations status
--remove-read-only flaga abandon Po uruchomieniu jednorazowego repozytorium Azure DevOps źródłowe jest ustawione na tylko do odczytu. Dodaj tę flagę, aby przywrócić dostęp do zapisu. Dotyczy tylko po przejściu jednorazowym.
--yes (-y) flaga abandon, pipelines delete Pomiń interakcyjny monit o potwierdzenie. Przydatne do czyszczenia skryptów.
--include-all flaga list Zwróć pełną historię migracji na repozytorium, w tym ukończone, zakończone, zakończone niepowodzeniem i zawieszone migracje. (--include-inactive jest przestarzałym aliasem).
--detect flaga Wszystko Automatycznie wykrywaj organizację zdalnego repozytorium Git (ustawienie domyślne: true). Użyj polecenia --detect false , aby wyłączyć.

Etapy migracji

Etapie Description
W kolejce Zaakceptowano migrację; praca nie została jeszcze uruchomiona.
Validation Uruchamianie kontroli przed migracją.
Synchronization Kopiowanie i synchronizowanie zawartości repozytorium.
Przełączenie Uruchamianie ostatniej synchronizacji i przejście do GitHub.
RecenzjaForCutover Cutover osiągnął zaplanowany czas z nierozwiązanymi błędami i czeka ( cutover approve lub ponownie).
ReadyForCutover Zatwierdzone i oczekujące na następne zadanie ELM do wykonania ostatecznego przejścia jednorazowego.
Zmigrowano Migracja zakończona. GitHub jest systemem rekordów.

Stany migracji

Status Meaning
Active Migracja jest uruchomiona.
Powiodło się Bieżąca faza została ukończona pomyślnie.
Zakończono Migracja osiągnęła etap terminalu Migrated .
Niepowodzenie Wystąpił błąd. Migrację można wznowić po rozwiązaniu problemu.
Zawieszono Wstrzymano ręcznie. Migrację można wznowić.