Deploydz
PolskiPL

GitHubmacOS 15 lub nowszy · Apple silicon lub Intel

Scalasz do main. Strona już działa.

Deploydz uruchamia Twoje własne runnery GitHub Actions z paska menu Maca. Po scaleniu do main wdrożenie wykonuje się na Twoim Macu, bez zużywania minut Actions, a chmurka obok zegara pokazuje, jak poszło.

macOS 15 lub nowszy · Apple silicon lub Intel

feature/footer fix/prices release/2.1 Scalenie Twój Mac Online do main zero minut Actions na pasku menu
main, wdrażana z Twojego Macagałęzie i pull requesty

Scalenie

Harmonogramem zajmuje się GitHub Actions. Pracę wykonuje Twój Mac, własnymi narzędziami i kluczami.

  1. Scalasz do main. GitHub ustawia w kolejce workflow wdrożenia z repozytorium.
  2. Twój Mac go przejmuje. Workflow działa na [self-hosted, deploy], runnerze, który Deploydz utrzymuje w działaniu, i wysyła stronę na serwer.
  3. Pasek menu to pokazuje. Deploydz co 2 sekundy odczytuje stan i log każdego wdrożenia, a powiadomienie mówi, kiedy strona jest online.
.github/workflows/deploy.yml
on:
  push:
    branches: [main]

jobs:
  deploy:
    runs-on: [self-hosted, deploy]
    steps:
      - uses: actions/checkout@v4
      # feeds the menu bar
      - run: |
          ~/www/actions-runner/deploy.sh \
            mysite ./deploy.sh

Twój Mac

Teraz to on jest serwerem buildów, a Deploydz dba o to, by działał.

Jedna aplikacja dla wszystkich runnerów
Deploydz uruchamia runnery, gdy się logujesz, restartuje ten, który się zatrzyma, i zatrzymuje wszystkie, gdy sam kończy działanie. Bez osobnego LaunchAgenta dla każdego runnera.
Wszystkie wdrożenia na pierwszy rzut oka
Każda strona pokazuje, jak poszło jej ostatnie wdrożenie: kiedy trafiła online, jak długo już czeka albo wiersz, na którym wystąpił błąd. Podmenu otwiera przebieg na GitHubie lub log wdrożenia.
Także wydania aplikacji
Aplikacje budowane na Twoim Macu pokazują swoją wersję i ostatnie wydanie: bieżący krok, „Wydano 2 godz. temu” albo krok, który się nie powiódł.
Runner jednym kliknięciem
Wybierz repozytorium i określ, czy to „Strona”, czy „Aplikacja”. Deploydz pobierze runnera, zarejestruje go przez gh i uruchomi.
Bezpiecznie z publicznymi repozytoriami
Dodanie runnera do publicznego repozytorium sprawia, że pull requesty z forków czekają na Twoje zatwierdzenie, więc cudzy fork nie uruchomi się na Twoim Macu.
Bez minut Actions
Uruchomienia na własnych runnerach są darmowe, podobnie jak wydania i ich pobrania. Nic nie działa na maszynach GitHuba, więc nic nie jest naliczane.

Instalacja

  1. Pobierz plik DMG i przeciągnij Deploydz do folderu Aplikacje. Aplikacja jest podpisana i notaryzowana.
  2. Otwórz ją. Pierwsze uruchomienie włącza „Uruchamiaj przy logowaniu”, a chmurka pojawia się obok zegara.
  3. Dodaj runnera. W Ustawieniach kliknij +, wybierz jedno ze swoich repozytoriów i określ, czy to „Strona”, czy „Aplikacja”.
  4. Skieruj na niego workflow. deploy.yml strony działa na [self-hosted, deploy], a zadanie Maca w release.yml aplikacji na [self-hosted, macOS, release].

Czego potrzebujesz

  • macOS 15 lub nowszy, Apple silicon lub Intel
  • GitHub CLI, gh, z aktywnym logowaniem
  • Twoje repozytoria na GitHubie
  • Mac włączony, gdy scalasz
Pobierz dla macOS

Pomoc

Czy zużywa minuty GitHub Actions?

Nie. Uruchomienia na własnych runnerach są darmowe. Ustaw budżet Actions na 0 USD w ustawieniach rozliczeń GitHuba, aby zadanie, które kiedyś trafi na maszyny GitHuba, zakończyło się błędem zamiast naliczać opłaty.

Czy pull request z forka może uruchomić kod na moim Macu?

Nie bez Twojej zgody. Gdy dodajesz runnera do publicznego repozytorium, Deploydz sprawia, że pull requesty z forków czekają na Twoje zatwierdzenie.

W menu nie ma sekcji Aplikacje.

Deploydz pyta GitHuba o wydania przez gh, więc sprawdź poleceniem gh auth status, czy jest zalogowany.

Runner ma ○ w podmenu Runnery.

Zatrzymał się, a Deploydz uruchomi go ponownie w ciągu 10 sekund. Jeśli wciąż się zatrzymuje, przeczytaj _diag/deploydz.log w folderze tego runnera.

Co dzieje się z runnerami, gdy zakończę Deploydz?

Zatrzymują się razem z Deploydz i startują ponownie, gdy go otworzysz. Zatrzymaj runnery w menu wstrzymuje je wszystkie bez zamykania aplikacji.

Jak Deploydz się uaktualnia?

Sprawdź uaktualnienia… pobiera nową wersję i instaluje ją tylko wtedy, gdy jest podpisana przez tego samego twórcę. Czeka, gdy trwa wdrożenie lub wydanie, bo ponowne uruchomienie Deploydz zatrzymuje runnery.

Czy workflow może zainstalować lub uaktualnić Deploydz?

Nie. Ponowne uruchomienie Deploydz zatrzymuje wszystkie runnery, łącznie z tym, na którym działa workflow. Zainstaluj go ręcznie albo użyj Sprawdź uaktualnienia….

Online

Pobierz Deploydz, dodaj runnera, a po następnym scaleniu strona wdroży się sama.