React: リリースプロセスを最新化する

作成日 2016年04月29日  ·  3コメント  ·  ソース: facebook/react

今すぐReactリリースを行うのは大変な作業です。 現時点では、ほとんどが筋肉の記憶ですが、誰でも簡単にできるはずです。 歴史的に、私は物事を台無しにし、一時停止して再確認できるようにしたかったので、特定の手順を手動で維持しました。

難しさに寄与するいくつかのことがあります:

  • 最初のプッシュターゲットとしてのreact-bowerリポジトリの使用

    • これは、内部FBインフラストラクチャで発生する必要があるfb.meリンク生成/CDN化の結果です。

  • 複数のリポジトリにまたがる手動の手順
  • 手動バージョン変更
  • ブランチ間でコピーされた、複数の場所にある必要があるアセット

いくつかのアイデア:

  • プレリリースとファイナルリリースを区別できるはずです。 いつでも新しいアルファを出荷するのは単一のコマンドであり、軽量である必要があります。
  • 最終リリースは、デフォルトでユーザーによってインストールされ、追加の要件(変更ログ、複数の場所にあるアセットなど)があるため、もう少し必要です。
  • npm run releaseこれですべてが実行されます。 インタラクティブなプロセスである可能性があります
  • GitHubリリースAPIを使用してビルドアセットを保存し、手順を省略します
  • cdn.reactjs.orgをセットアップし、そこでビルドをホストして、fb.meを完全に削除します(リスク、これを永久に実行する必要があります…)

    • 代替案:既存のCDNを操作し、コマンドでバージョンをデプロイできることを確認します(プルベースの自動更新により、遅延が発生する可能性があります。jsfiddleのように、チュートリアルではアセットをすぐに利用できるようにする必要があります)

  • lernaを調査し、リリースを解きほぐしたいのですが、私たちが持っている複数のパッケージで役立つ可能性があります
Build Infrastructure

最も参考になるコメント

私たちは今、実際に良い場所にいるようです。
(@bvaughnに感謝)

全てのコメント3件

代替案:既存のCDNを操作し、コマンドでバージョンをデプロイできることを確認します(プルベースの自動更新により、遅延が発生する可能性があります。jsfiddleのように、チュートリアルではアセットをすぐに利用できるようにする必要があります)

Reduxを使用して、@mjacksonのhttp://npmcdn.comにユーザーを誘導してきました。

言及してくれてありがとう、@gaearon。 私はしばらくの間@zpaoにヒントを落としていたので、彼にnpmcdnを試してもらいたいと思います。 ;)

先月、1600万人を超えるユニークビジターから1億件以上のリクエストに対応したため、Reactが投げかけるようなトラフィックを処理する準備ができている可能性があります。 私は現在、いくつかのスポンサーの配置と利用規約に取り組んでおり、人々がそれから何を期待できるかを知ることができます。

遅延については、現在CDN(CloudFlare)にリダイレクトを5分間キャッシュするように指示しています。 たとえば、 https://npmcdn.com/react@15/dist/react.min.jsのリクエストは、npmにプッシュされてから最大5分後に最新リリースにリダイレクトされます。

私たちは今、実際に良い場所にいるようです。
(@bvaughnに感謝)

このページは役に立ちましたか?
0 / 5 - 0 評価