Sekrety repozytorium
En Parlant~ wykorzystuje GitHub Actions do budowania plików binarnych dla systemów Windows, macOS i Linux. Pipeline CI potrzebuje poświadczeń do podpisywania kodu, podpisywania aktualizacji, skanowania antywirusowego oraz adresu URL serwera relay dla trybu wieloosobowego. Są one przechowywane jako sekrety repozytorium GitHub — zaszyfrowane wartości, które GitHub wstrzykuje do przebiegów workflow, ale nigdy nie wyświetla.
Jeśli forkujesz En Parlant~ i chcesz tworzyć własne podpisane kompilacje, musisz skonfigurować własne sekrety. Kompilacje powiedzie się również bez nich, ale pliki binarne nie będą podpisane, aktualizacje nie przejdą weryfikacji, a krok skanowania VirusTotal zostanie pominięty.
Sekrety
Dział zatytułowany „Sekrety”Azure Trusted Signing (podpisywanie kodu dla Windows)
Dział zatytułowany „Azure Trusted Signing (podpisywanie kodu dla Windows)”Użytkownicy systemu Windows otrzymują ostrzeżenie SmartScreen („Windows protected your PC”), gdy uruchamiają niepodpisany plik .exe. Podpisywanie kodu eliminuje to ostrzeżenie i informuje system Windows, że plik binarny pochodzi od zweryfikowanego wydawcy.
En Parlant~ używa do tego celu Azure Trusted Signing. Kompilacja Tauri wywołuje trusted-signing-cli podczas kroku budowania dla Windows, który komunikuje się z Azure w celu podpisania pliku wykonywalnego.
| Sekret | Przeznaczenie |
|---|---|
AZURE_CLIENT_ID | Identyfikator aplikacji service principal |
AZURE_CLIENT_SECRET | Poświadczenie service principal |
AZURE_TENANT_ID | Tenant Azure AD |
AZURE_SUBSCRIPTION_ID | Subskrypcja Azure |
AZURE_CODE_SIGNING_ACCOUNT | Nazwa konta Trusted Signing |
AZURE_CODE_SIGNING_ENDPOINT | URL endpointu Trusted Signing |
AZURE_CODE_SIGNING_PROFILE | Nazwa profilu certyfikatu |
Jak skonfigurować własne: Utwórz konto Azure, skonfiguruj zasób Trusted Signing, utwórz profil certyfikatu i zarejestruj service principal z odpowiednimi uprawnieniami. Przewodnik szybkiego startu Trusted Signing od Microsoft przeprowadzi Cię przez cały proces.
Jeśli to pominiesz: Kompilacje dla Windows nadal działają, ale Twoich użytkowników powita przerażający niebieski ekran SmartScreen — ten, który wszyscy znamy. Każdy z nas kiedyś kliknął „Uruchom mimo to” i miał nadzieję, że wszystko będzie dobrze. Kompilacje dla macOS i Linux pozostają bez zmian.
Podpisywanie aktualizacji Tauri
Dział zatytułowany „Podpisywanie aktualizacji Tauri”Wbudowany mechanizm aktualizacji Tauri weryfikuje, czy aktualizacje pochodzą od prawdziwego wydawcy, a nie z podrobionego źródła. Gdy aplikacja sprawdza dostępność nowej wersji, pobiera aktualizację i weryfikuje jej podpis względem klucza publicznego osadzonego w aplikacji. Klucz prywatny tworzący te podpisy znajduje się w CI.
| Sekret | Przeznaczenie |
|---|---|
TAURI_PRIVATE_KEY | Klucz prywatny Ed25519 do podpisywania aktualizacji |
TAURI_KEY_PASSWORD | Hasło chroniące klucz prywatny |
Jak skonfigurować własne: Wygeneruj parę kluczy za pomocą pnpm tauri signer generate. Umieść klucz prywatny i hasło w sekretach repozytorium, a klucz publiczny w tauri.conf.json pod plugins.updater.pubkey.
Jeśli to pominiesz: Aplikacja kompiluje się bez problemów, ale automatyczny mechanizm aktualizacji nie będzie działał. Użytkownicy będą musieli pobierać nowe wersje ręcznie.
VirusTotal
Dział zatytułowany „VirusTotal”Po zbudowaniu artefaktów wydania pipeline CI przesyła każdy plik binarny (.exe, .dmg, .deb, .rpm, .AppImage) do VirusTotal w celu automatycznego skanowania pod kątem złośliwego oprogramowania. To sygnał zaufania — użytkownicy mogą zweryfikować, że oficjalne kompilacje są czyste.
| Sekret | Przeznaczenie |
|---|---|
VIRUSTOTAL_API_KEY | Klucz API dla VirusTotal v3 API |
Jak skonfigurować własny: Utwórz darmowe konto VirusTotal i skopiuj swój klucz API ze swojego profilu.
Jeśli to pominiesz: Krok skanowania VirusTotal kończy się cichym niepowodzeniem. Kompilacje nadal się udają i są publikowane normalnie — po prostu nie będziesz mieć automatycznych wyników skanowania.
URL serwera relay dla trybu wieloosobowego
Dział zatytułowany „URL serwera relay dla trybu wieloosobowego”URL serwera relay dla trybu wieloosobowego jest wstrzykiwany w czasie kompilacji, aby aplikacja wiedziała, gdzie łączyć się w celu gry online.
| Sekret | Przeznaczenie |
|---|---|
VITE_RELAY_URL | URL WebSocket serwera relay dla trybu wieloosobowego (np. wss://your-relay.fly.dev) |
Jak skonfigurować własny: Wdróż własny serwer relay (zobacz przewodnik konfiguracji serwera wieloosobowego) i ustaw ten sekret na jego publiczny URL.
Jeśli to pominiesz: Tryb wieloosobowy nadal działa, jeśli ustawisz URL serwera relay w ustawieniach aplikacji w czasie działania. Ten sekret ustawia jedynie wartość domyślną, aby użytkownicy nie musieli konfigurować tego ręcznie.
Podsumowanie
Dział zatytułowany „Podsumowanie”| Grupa sekretów | Wymagane do | Czy można pominąć? |
|---|---|---|
| Azure (7 sekretów) | Podpisane kompilacje dla Windows | Tak — kompilacje działają, użytkownicy otrzymują ostrzeżenie SmartScreen |
| Tauri (2 sekrety) | Automatyczne aktualizacje | Tak — kompilacje działają, brak automatycznych aktualizacji |
| VirusTotal (1 sekret) | Raporty ze skanowania pod kątem złośliwego oprogramowania | Tak — kompilacje działają, brak wyników skanowania |
| URL serwera relay (1 sekret) | Domyślny serwer wieloosobowy | Tak — użytkownicy mogą ustawić go w ustawieniach aplikacji |
Żaden z tych sekretów nie jest wymagany do lokalnego budowania i uruchamiania aplikacji. Mają one znaczenie wyłącznie dla kompilacji wydań CI/CD.