misskey
misskey copied to clipboard
docker: build assets on native arch
わざわざ TypeScript のコードとかクライアントのアセットのビルドをエミュレーション上でやる必要はないのでビルド環境と同じplatformでやるように
留意すべき点
- エミュレーション上で実行されうるところはキャッシュ処理を消した
- エミュレーション部分は遅いのもあり、キャッシュをロックされると結果的にかなり時間を損する順番で処理が走ることがあるため
- runnerの apt install で待たされて target-builder の apt install ができず後続の target-builder の pnpm install がいつまで立っても走らない ことがあった
- runner は
apt install
後すぐ target-builder と native-builder が終わるまで待つことになるのでここで runner が target-builder の実行を阻害するのはよくない
- runner は
- runnerの apt install で待たされて target-builder の apt install ができず後続の target-builder の pnpm install がいつまで立っても走らない ことがあった
- ひょっとすると
sharing=private
のほうがいい?どういう挙動になるのかよくわからないが… cc @ikuradon
- エミュレーション部分は遅いのもあり、キャッシュをロックされると結果的にかなり時間を損する順番で処理が走ることがあるため
Codecov Report
Merging #10080 (4155a1b) into develop (209d8b4) will not change coverage. The diff coverage is
n/a
.
@@ Coverage Diff @@
## develop #10080 +/- ##
========================================
Coverage 24.72% 24.72%
========================================
Files 705 705
Lines 65224 65224
Branches 2303 2303
========================================
Hits 16125 16125
Misses 49099 49099
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.
成果物のアーキテクチャで npm の依存関係ってリビルドしなくて良い?
target-builder がそれ
理解