RORK LABEN
IOS27 — iOS 27 と iPadOS 27 は9月14日に配信されます。ノーコードや AI で組み立てたアプリにとって、新しい OS が降りてくる週は足場がいちばん揺れますDUO — Apple 初の折りたたみ iPhone Duo が 1,999 ドルから。新しい画面形状は、生成されたレイアウトが最初に壊れる場所でもありますSPLIT — 標準 Rork は Expo 経由の React Native、Rork Max はネイティブ Swift の生成です。折りたたみへの追随の速さも壊れ方も、同じにはならないはずですSUBMIT — 提出の自動化は、Apple 側の仕様変更をそのまま受けます。便利さを語る記事ほど、この揺れに触れないと不誠実になってしまいますRATING — 9月から年齢レーティング質問票への回答が必須になりました。ノーコードで作ったアプリも例外ではありませんSILICON — iPhone 18 Pro の A20 Pro は TSMC の 2nm ノードで作られる初の大量生産スマートフォン向けプロセッサだと報じられていますIOS27 — iOS 27 と iPadOS 27 は9月14日に配信されます。ノーコードや AI で組み立てたアプリにとって、新しい OS が降りてくる週は足場がいちばん揺れますDUO — Apple 初の折りたたみ iPhone Duo が 1,999 ドルから。新しい画面形状は、生成されたレイアウトが最初に壊れる場所でもありますSPLIT — 標準 Rork は Expo 経由の React Native、Rork Max はネイティブ Swift の生成です。折りたたみへの追随の速さも壊れ方も、同じにはならないはずですSUBMIT — 提出の自動化は、Apple 側の仕様変更をそのまま受けます。便利さを語る記事ほど、この揺れに触れないと不誠実になってしまいますRATING — 9月から年齢レーティング質問票への回答が必須になりました。ノーコードで作ったアプリも例外ではありませんSILICON — iPhone 18 Pro の A20 Pro は TSMC の 2nm ノードで作られる初の大量生産スマートフォン向けプロセッサだと報じられています
記事一覧/アプリ開発
アプリ開発/2026-09-10中級

Rork のリポジトリに置く最初の EAS Workflow と、失敗した回にだけ届かない通知

Rork から書き出したリポジトリに .eas/workflows を二本置くまでの手順と、needs でつないだ通知が失敗した回にだけ届かなくなる理由を、手元で走る検査スクリプトの実行結果つきで書き残します。

EAS WorkflowsExpo204CI/CD9TestFlight13個人開発211Rork559

プレミアム記事

夜中にビルドを一本投げ、通るのを待って、通ったら提出コマンドを打ちます。個人開発でアプリを何本か抱えていると、この順番が指の癖になってしまいます。手順書に残すほどでもない、けれど間違えると三十分が消える——その程度の作業が、アプリの本数だけ並んでいるのです。

先日、壁紙アプリの更新をひとつ出したあとで、同じ順番をもう一度打ちながら考えました。この順番こそ、自分ではなく機械に持たせるべきものではないか、と。

Rork から書き出したリポジトリは、その時点でもう普通の Expo プロジェクトです。手元に eas.json があって GitHub に載っているなら、EAS Workflows の設定ファイルを一枚足すだけで、この順番はそのまま自動化の対象になります。

ただ、私が最初に書いた一本は失敗しておりました。書式としては正しく、eas も受け取ってくれる形です。それでも、いちばん通知が欲しい場面でだけ黙る作りになっていたのです。

置き場所と、最初に効く二つの制約

設定ファイルは .eas/workflows/ に置きます。.eas ディレクトリは eas.json と同じ階層です。ここを一段間違えると、コマンドはファイルを見つけてくれません。

my-app
  .eas
    workflows
      pr-preview.yml
      release.yml
  eas.json
  app.json

拡張子は .yml.yaml のいずれかで、ファイルサイズは 16 KiB 以下という上限があります。16 KiB は普通に書いていれば当たらない数字ですが、ジョブを足し続けて一枚にまとめたくなったときに効いてきます。一本のファイルに詰め込まず、目的ごとに分けておくほうが後で楽になります。私は用途ごとに一枚ずつ置く形をお勧めします。

もう一つ、書き始める前に知っておくと迷わないことがあります。トリガーの既定値は「書かなかったほう」が空になるという点です。on.pushbranchestags も書かなければ branches['*']tags[] として扱われます。ところが片方だけを書くと、書かなかったほうは [] になります。タグだけを指定したつもりで branches の行を消すと、ブランチ側の発火は完全に止まります。狙いどおりならよいのですが、私は最初これを取り違えていました。

PR を開いたらプレビュー更新が出るところまで

一本目は、プルリクエストを開いたらプレビュー用の更新を配信するものにします。手で eas update を打っていた作業がそのまま置き換わりますし、失敗しても本番には届きませんので、最初の一本として安心して試せます。

# .eas/workflows/pr-preview.yml
name: PR preview
on:
  pull_request:
    branches: ['*']
    paths:
      - app/**
      - package.json
      - '!**/*.md'
 
jobs:
  publish_preview:
    type: update
    environment: preview
    params:
      branch: pr-${{ github.event.pull_request.number }}
      message: ${{ github.event.pull_request.title }}
    hooks:
      before_update:
        - name: 型を通してから配信します
          run: npx tsc --noEmit

読み方を順に置いておきます。paths は監視するパスで、先頭に ! を付けると除外になります。README だけを直した PR でビルド枠を使わずに済むのは、地味ですが効きます。branches を省略すると ['*'] になりますので、ここは書かなくても動きます。あえて書いているのは、後から読む自分のためです。

type: updateeas update に対応するジョブで、branchchannel は同時に指定できません。今回は PR 番号からブランチ名を作っておりますので branch のほうを使います。

そして hooks です。ここが最初につまずいた場所でした。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
PR を開けばプレビュー更新が出て、タグを打てば TestFlight まで進む経路を、自分のリポジトリに二本の YAML で置けるようになります
失敗した回にだけ通知が来ない CI を、組み上げてしまう前に避けられるようになります
needs と after、steps を書けるジョブ、env が効かないジョブの線引きを、push する前に手元の検査で潰せるようになります
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Rork Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥2,480 の永久アクセス
メンバーシップを見る →

関連記事

アプリ開発2026-08-16
グラフが壊れて見えるのは、データが多いときではなく最初の数日でした
記録アプリの折れ線グラフが、データの少ない最初の数日だけ線が消える。原因はY軸の幅が0になり座標がNaNになることでした。実測した挙動と、描画前に置く小さな正規化層を紹介します。
アプリ開発2026-08-15
TestFlight の外部テストと段階公開、個人開発ではどちらに時間を使うか
Rork で作ったアプリを他人に配るとき、外部テスターを募集する道と段階公開に受け止めさせる道の二つがあります。個人開発の限られた時間をどちらに置くかを、配布が止まる条件と事前検証すべき三領域から整理しました。
アプリ開発2026-06-30
Rork アプリでファイルを「その場で見せる」— Quick Look をアプリから安全に呼ぶ設計
PDF や画像、Office 文書をアプリの外に出さずにその場で見せる、Quick Look(QLPreviewController)をRork(Expo)から呼ぶ設計です。リモートファイルの事前ダウンロード、ローカル URL の条件、Android の FileProvider 代替、共有ボタンの扱いまで実装手順でまとめます。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます