-
Notifications
You must be signed in to change notification settings - Fork 17
Release
dynamis edited this page Jan 6, 2021
·
28 revisions
基本的に下記 1,2 のフローを回します。
- ソースを直す
- テストする (ソース直したら必ず実際のデバイス使い実施)
- exampleを修正する場合:
- 対象のデバイスの実機テストをローカルファイルと CodeSandbox でテスト
- polyfill / Bridge Serverを修正する場合:
- すべての Certified デバイスの examples を実機テスト
- テストリリース (コミュニティ内向け)
- ある程度テストして公開したいタイミングで最小限のテストをしてコミュニティ向けにリリースする
- example を修正した場合:
- JSBin の example も更新する。既存のものを開いて編集、Ctrl+S で保存すると新しい https://jsbin.com/{newid}/edit のような URL に切り替わるのでその新しい newid を の URL が付与されるのでその URL のリダイレクト定義 に設定する。
- ブックマークや example 一覧ページなどは JSBin にリダイレクト URL (http://r.chirimen.org/...) でリンクしているので変更不要。
- example を追加・削除した場合:
- URL のリダイレクト定義、examples 一覧ページ 等への追加・削除を忘れずに
- example から polyfill やデバイスドライバは npm module にして package.json を用意し、 インストールした node_modules 配下のものを読み込むようにしてください。これは CodeSandbox が node_module 配下のファイルをリポジトリにコミットしていなければ読み込めない問題 があるためです。
- JSBIN上のpolyfill.js, I2Cデバイスドライバ.jsのリンク先については https://github.com/chirimen-oh/chirimen-raspi3/issues/47 の検討結果に準拠してください。
- gc 配下のファイルだけでなく JSBin のファイルの更新も忘れずに
- examples ページ とそのリンク先のチェックも忘れずに
- polyfill / bridge server を修正した場合:
- jsbin の全 example を新しくして、リダイレクト定義 の更新が必要 (明らかに後方互換のある修正であれば既存の example から読み込む polyfill URL をアップデートするだけでも良い)
- github でテストリリース用タグを付けてリリースし、QA テストの issue をたてる
- Release-Checklist に記載のチェックリストをコピペして実施したテストにチェックを入れる Release-Checklist
- 必要に応じてビルドイメージにして公開する
- 要詳細追記
- 正式リリース (外部向けリリース)
- ビルドイメージをユーザ向けに公開する前に、全 Certified デバイスのフルテストを行う
- テストリリースしたビルドをそのままリリースしたい場合
- 既存 issue のチェックリストの残りを全てテストしてリリースする
- 新規にビルドイメージを作ってリリースする場合
- github でテストリリース用のタグを付けてリリース QA テストの issue をたてる
- Release-Checklist に記載のチェックリストをコピペして全てのテストを実施する
- 全テストに通ったら github のタグに正式リリース用のタグを追加する
- ビルドイメージを公開してアナウンス
- ファイル名は Raspbian 同様に YYYY-MM-DD-chirimen.img / YYYY-MM-DD-chirimen.zip とする − リリースファイルへのリダイレクト定義 書き換えも忘れずに。
これは、直す。それだけ。 ただし、jsbinのコードを直した場合には、下記を実施してください。
- jsbin修正して保存するとURLが変わる
- 該当する中継システムのリンクを同URLに切り替える
テストは、オンライン、オフライン両方のexampleでテストします。 不具合があったら 1. に戻ってやりなおし。
https://github.com/chirimen-oh/chirimen-raspi3/issues/24 を参考にするとテストが容易です。WebDINOにテスト用ハードが準備されています。このハードを用いた半自動テストセットが、gc/testSet/testAll.htmlです。 ttps://localhost/testSet/testAll.html で使います。
env/ をカレントに変更して、release.sh
を実行すると、release
フォルダに最新のリリースファイルができます。
まず、deployする前にテストを実施します。
- imageファイルを作成 して、そのimageファイルを別のSDに焼き込んでからexamples 全試験
テストが終わってから実際のdeploy作業を行います。
全て終わったら githubへ反映・周知します。
- Raspbian imgでSDイメージ作成し起動
- setup.sh
- Chromium の Web Bluetooth を有効化 (about:flags で Experimental Web Platform Features を有効化)
- CHIRIMENイメージ作成:ここを参照
Google Drive にファイルを入れると 10 分ごとの rclone による sync で http://download.chirimen.org/ 配下に公開される。
正式にリリースしたら、最新 SD Image ファイルへのリダイレクト設定を r.chirimen.org の _redirects で定義しているのでそちらを書き換える。
おつかれさまでした。