google / google/codeworld

Set up separate servers for stable versus head

オープン
#667 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
cleanup
主要言語
Haskell
スター
1.3k
フォーク
201
PR マージ指標
30日以内にマージされた PR はありません

説明

I want to have two servers:

* **code.world** is the stable server, which is updated once per year some time in July.
* **alpha.code.world** (or something similar) is the head server, which is basically pushed on green.

Breaking API changes should go only to alpha.code.world, and then be released to the stable server on a set schedule. Bug fixes and non-breaking improvements could go to both servers at the same time. This means we'd also keep a separate branch of the code for the stable server.

Intended uses of the alpha server include:
* General use by those who don't mind occasional breaking changes. We would still follow deprecation cycles and such for this server, so it shouldn't be awful.
* Use by those who are preparing (teaching materials, learning themselves, etc.) for the release of these changes to the stable server.

We would encourage those who are teaching to use the stable server. This approximately captures the same pattern as @alphalambda has going on for his own server (though our stable server might have a different release schedule, since we probably want to make the switch in the summer to avoid breaking year-long classes).

Concerns:
1. Both servers need access to the same data, which means I finally need to move data to network storage (See #84)
2. I will need to learn more about using git, so I can be competent at merging changes between branches and such.

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

まず、issue #84 のネットワークストレージ依存関係と、プロジェクトの現在のサーバーおよびブランチ構成を確認します。code.world と alpha.code.world がどのようにデータを共有するか、stable と head の変更をどのようにマージするか、年次の安定版リリースをどのように管理するかを定義します。両方のサーバーが説明されたリリース動作と共有データアクセスを備えれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
git, haskell
領域
infrastructure, release
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。