Deploydz
日本語JA

GitHubmacOS 15 以降 · Apple シリコンまたは Intel

main にマージ。 公開完了。

Deploydz は、セルフホストの GitHub Actions ランナーを Mac のメニューバーから動かします。main にマージすると、デプロイは Actions の実行時間を使わずに手元の Mac で実行され、時計の横の雲がその結果を表示します。

macOS 15 以降 · Apple シリコンまたは Intel

feature/footer fix/prices release/2.1 マージ 手元の Mac 公開 main へ Actions は 0 分 メニューバーに表示
main(手元の Mac がデプロイ)ブランチとプルリクエスト

マージ

スケジュールは GitHub Actions が担当。作業は手元の Mac が、自分のツールと鍵で行います。

  1. main にマージします。GitHub がリポジトリのデプロイワークフローをキューに入れます。
  2. 手元の Mac が引き受けます。ワークフローは Deploydz が動かし続けるランナー [self-hosted, deploy] で実行され、サイトをアップロードします。
  3. メニューバーに表示されます。Deploydz は 2 秒ごとにすべてのデプロイの状態とログを読み取り、公開されると通知でお知らせします。
.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

手元の Mac

今やビルドサーバー。Deploydz が動かし続けます。

すべてのランナーをひとつのアプリで
Deploydz はログイン時にランナーを起動し、止まったものを再起動し、終了時にはすべて停止します。ランナーごとの LaunchAgent は不要です。
すべてのデプロイをひと目で
各サイトに直近のデプロイの結果が表示されます。公開された時刻、待機している時間、または失敗した行です。サブメニューから GitHub の実行やデプロイのログを開けます。
アプリのリリースも
手元の Mac でビルドするアプリには、バージョンと最新のリリースが表示されます。進行中のステップ、「2 時間前にリリース」、または失敗したステップです。
ワンクリックでランナーを追加
リポジトリを選び、Web サイトかアプリかを選ぶだけ。Deploydz がランナーをダウンロードし、gh で登録して起動します。
公開リポジトリでも安全
公開リポジトリにランナーを追加すると、フォークからのプルリクエストはあなたの承認待ちになるので、知らない人のフォークが手元の Mac で動くことはありません。
Actions の実行時間はゼロ
セルフホストでの実行は無料で、リリースとそのダウンロードも無料です。GitHub のマシンでは何も実行されないので、料金は発生しません。

セットアップ

  1. DMG をダウンロードし、Deploydz を「アプリケーション」にドラッグします。署名と公証を受けています。
  2. 開きます。初回の起動で「ログイン時に起動」がオンになり、時計の横に雲が表示されます。
  3. ランナーを追加します。「設定」の + で、リポジトリをひとつ選び、Web サイトかアプリかを選びます。
  4. ワークフローの実行先を指定します。Web サイトの deploy.yml は [self-hosted, deploy] で、アプリの release.yml の Mac ジョブは [self-hosted, macOS, release] で実行します。

必要なもの

  • macOS 15 以降、Apple シリコンまたは Intel
  • サインイン済みの GitHub CLI(gh)
  • GitHub 上のリポジトリ
  • マージするときに起動している Mac
macOS 版をダウンロード

ヘルプ

GitHub Actions の実行時間を消費しますか?

いいえ。セルフホストでの実行は無料です。GitHub の請求設定で Actions の予算を $0 にしておけば、万一ジョブが GitHub のマシンで動いても、課金されずに失敗します。

フォークからのプルリクエストが手元の Mac でコードを実行できますか?

あなたの承認なしにはできません。公開リポジトリにランナーを追加すると、Deploydz はフォークからのプルリクエストをあなたの承認待ちにします。

メニューに「アプリ」がありません。

Deploydz は gh で GitHub にリリースを問い合わせるので、gh auth status でサインインしているか確認してください。

「ランナー」の下に ○ のランナーがあります。

停止しています。Deploydz が 10 秒以内に再起動します。何度も止まる場合は、そのランナーのフォルダにある _diag/deploydz.log を確認してください。

終了するとランナーはどうなりますか?

Deploydz と一緒に停止し、Deploydz を開くと再び起動します。メニューのランナーを停止を使えば、終了せずにすべて一時停止できます。

アップデートの仕組みは?

アップデートを確認…で新しいバージョンをダウンロードし、同じ開発者の署名がある場合にだけインストールします。Deploydz を再起動するとランナーが止まるため、デプロイやリリースの実行中は待機します。

ワークフローから Deploydz をインストールまたはアップデートできますか?

いいえ。Deploydz を再起動すると、そのワークフローが動いているランナーも含め、すべてのランナーが止まります。手動でインストールするか、アップデートを確認…を使ってください。

公開

Deploydz をダウンロードしてランナーを追加すれば、次のマージは自動でデプロイされます。