Których dostawców kontroli wersji mogę połączyć?
GitHub i GitLab. Proszę połączyć konto, na którym już Państwo pracują, a my będziemy mogli wdrażać z jego repozytoriów, zarejestrować dla nich webhook typu push oraz — jeśli sobie Państwo tego życzą — synchronizować pliki witryny w drugą stronę. Oba rozwiązania korzystają z tego samego mechanizmu połączonego konta, więc wszystko poniżej odnosi się do każdego z nich.
Czy mogę zalogować się za pomocą GitHub lub GitLab?
Tak, a także za pomocą Google lub Microsoft. Oprócz adresu e-mail i hasła mogą się Państwo zalogować na swoje konto Zinn Digital® przy użyciu dowolnej z tych czterech opcji. Warstwa tożsamości obsługuje uzgadnianie (handshake), a my nigdy nie widzimy hasła dostawcy. Logowanie za pomocą GitHub to zupełnie inna kwestia niż połączenie GitHub na potrzeby wdrożeń — mogą Państwo wybrać jedno z nich, oba lub żadne.
Gdzie mogę wdrożyć repozytorium?
Do Cloudflare Pages, GitHub Pages, GitLab Pages, Netlify, Vercel, Render, Azure Static Web Apps lub AWS Amplify w przypadku witryny statycznej lub zbudowanej — albo na nasz własny zarządzany hosting, gdzie repozytorium i pliki witryny pozostają zsynchronizowane w obu kierunkach. To Państwo wybierają miejsce docelowe dla witryny; połączenie z repozytorium w obu przypadkach przebiega tak samo.
Czy mogą Państwo stworzyć moją stronę, czy musi być ona wcześniej zbudowana?
Dowolny z nich. W trybie publikacji pobieramy gałąź w obecnej postaci i publikujemy wskazaną przez Państwa kartotekę. W trybie CI własny potok Państwa dostawcy uruchamia polecenie kompilacji i zatwierdza dane wyjściowe w oddzielnej gałęzi publikacji, którą następnie pobieramy jak każde inne odwołanie. Drugi sposób zachowuje Państwa kompilację we własnym systemie CI, gdzie znajdują się już Państwa dane poufne oraz pamięć podręczna.
Czy push wdraża się automatycznie?
Domyślnie tak — rejestrujemy webhook w repozytorium, a push do wybranej przez Państwa gałęzi uruchamia wdrożenie. Mogą Państwo to wyłączyć i zachować webhook, co jest bardziej przydatne, niż się wydaje: dostarczenie jest nadal rejestrowane, więc mogą Państwo obserwować przychodzące pushe, zanim pozwolą nam Państwo na nie zareagować.
Co to jest synchronizacja dwukierunkowa?
Edycje dokonane na naszym sprzęcie stają się commitami w twojej gałęzi, a commity z twojej gałęzi wracają na stronę. Funkcja jest wyłączona, dopóki jej nie włączysz, ponieważ jej włączenie to decyzja dotycząca czyjegoś repozytorium i nie podejmiemy jej za ciebie. To ty wybierasz, który katalog ma się synchronizować — zwykle jest to motyw lub wtyczka, a nie czterdzieści tysięcy podstawowych plików WordPress.
Co się stanie, jeśli obie strony uległy zmianie?
Nic nie zostaje nadpisane ani wypchnięte. Synchronizacja zatrzymuje się, informuje, że gałąź przesunęła się poza commit, na którym się opieraliśmy, i pyta, którą stronę chcą Państwo zachować — repozytorium czy witrynę. Witryna, która nigdy nie była synchronizowana i wskazuje na gałąź mającą już commity, to również odrębny stan, dlatego system pyta, zamiast zgadywać, która wersja jest właściwa.
W jaki sposób chroniony jest mój token dostępu?
Przed utworzeniem połączenia pokazujemy uprawnienia, których ono wymaga, sprawdzamy token w interfejsie API samego dostawcy podczas wprowadzania — dzięki czemu token nieprawidłowy lub o błędnym zakresie nigdy nie jest zapisywany — i dopiero wtedy zapisujemy go w Vault. Nigdy nie trafia on do naszego kodu, dziennika, pliku środowiskowego ani wiersza poleceń. Mogą go Państwo unieważnić u dostawcy lub usunąć połączenie tutaj, w dowolnym momencie.
Jak mogę sprawdzić, czy rzeczywiście odbierają Państwo moje wypchnięcia (pushe)?
Karta repozytorium pokazuje, kiedy dostawca ostatnio dokonał doręczenia i co zgłosił. Status „Nigdy nie doręczono” jest najbardziej przydatną informacją diagnostyczną na tym ekranie, ponieważ stan „połączono, ale nigdy nie doręczono” dokładnie odpowiada tokenowi o nieprawidłowym zakresie lub zablokowanemu doręczeniu — a nie jest to widoczne nigdzie indziej. Każde doręczenie jest weryfikowane pod kątem podpisu, zanim podejmiemy jakiekolwiek działania.
Czy mogę używać wdrażania Pages na linii Footprint-Free?
Jest oferowany i jest oznaczony. GitHub Pages i GitLab Pages współdzielą infrastrukturę dostawcy oraz publiczne nazwy hostów github.io i gitlab.io, a to stanowi ślad (footprint) — jedyną rzecz, której unikać ma ta linia. W przypadku sieci bez śladu (zero-footprint), wdróż zamiast tego na izolowanym hostingu. Wszędzie indziej Pages jest najwyższej klasy.
Dlaczego muszę jawnie wybrać Vercel?
Ponieważ jego bezpłatny plan jest licencjonowany wyłącznie do użytku niekomercyjnego. W bezpiecznych przypadkach wnioskujemy miejsce docelowe na podstawie połączonych przez Państwa kont, a Vercel został celowo wykluczony z tego wnioskowania — połączenie konta nigdy nie może po cichu umieścić witryny komercyjnej w miejscu, w którym nie zezwala na to jej licencja. Po wybraniu tej opcji działa ona dokładnie tak, jak pozostałe.
Czy mogę zobaczyć, co i kiedy zostało wdrożone?
Tak. Każde wdrożenie rejestruje opublikowany commit, czas jego uruchomienia oraz sposób zakończenia, a karta Wdrożenie w witrynie wyświetla historię wraz z aktywnym adresem URL. Wdrożenia działają w tle, więc strona aktualizuje się po zakończeniu kompilacji, zamiast zmuszać użytkownika do czekania na ekranie ładowania.