Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

バイナリビルドCI: VVPPを圧縮しながら分割してCIストレージ容量を節約する #754

Merged

Conversation

aoirint
Copy link
Member

@aoirint aoirint commented Oct 4, 2023

内容

の対策です。

リリースCI(バイナリビルドCI)において、VVPP作成時、7z版と同様に、7zコマンドのボリューム機能を使って、zipファイルとして圧縮しながら、同時に分割するように変更します。ボリューム機能で作成される分割ファイルは、splitコマンドと同じく、catコマンドなどでバイナリを結合すれば展開できます。

以前の実装では、バイナリビルド成果物を完全にzipファイルとして書き出してから、splitコマンドで分割していました。

このPRによって、CI実行環境のストレージを占有するビルド成果物のファイルは、「アーカイブ化前のディレクトリ・分割前のzip・分割後のvvpp/vvppp」の3つから、「アーカイブ化前のディレクトリ・分割後のvvpp/vvppp」の2つに減ります。

関連 Issue

スクリーンショット・動画など

その他

@aoirint aoirint requested a review from a team as a code owner October 4, 2023 11:46
@aoirint aoirint requested review from y-chan and removed request for a team October 4, 2023 11:46
@github-actions
Copy link

github-actions bot commented Oct 4, 2023

Coverage Result

Resultを開く
Name Stmts Miss Cover
run.py 433 285 coverage-34%
voicevox_engine/init.py 1 0 coverage-100%
voicevox_engine/acoustic_feature_extractor.py 75 0 coverage-100%
voicevox_engine/cancellable_engine.py 85 66 coverage-22%
voicevox_engine/dev/core/init.py 2 0 coverage-100%
voicevox_engine/dev/core/mock.py 27 12 coverage-56%
voicevox_engine/dev/synthesis_engine/init.py 2 0 coverage-100%
voicevox_engine/dev/synthesis_engine/mock.py 36 2 coverage-94%
voicevox_engine/downloadable_library.py 93 5 coverage-95%
voicevox_engine/engine_manifest/EngineManifest.py 34 0 coverage-100%
voicevox_engine/engine_manifest/EngineManifestLoader.py 12 0 coverage-100%
voicevox_engine/engine_manifest/init.py 3 0 coverage-100%
voicevox_engine/full_context_label.py 162 3 coverage-98%
voicevox_engine/kana_parser.py 86 1 coverage-99%
voicevox_engine/metas/Metas.py 33 0 coverage-100%
voicevox_engine/metas/MetasStore.py 29 12 coverage-59%
voicevox_engine/metas/init.py 2 0 coverage-100%
voicevox_engine/model.py 160 9 coverage-94%
voicevox_engine/mora_list.py 4 0 coverage-100%
voicevox_engine/morphing.py 70 46 coverage-34%
voicevox_engine/part_of_speech_data.py 5 0 coverage-100%
voicevox_engine/preset/Preset.py 12 0 coverage-100%
voicevox_engine/preset/PresetError.py 2 0 coverage-100%
voicevox_engine/preset/PresetManager.py 81 2 coverage-98%
voicevox_engine/preset/init.py 4 0 coverage-100%
voicevox_engine/setting/Setting.py 11 0 coverage-100%
voicevox_engine/setting/SettingLoader.py 19 0 coverage-100%
voicevox_engine/setting/init.py 3 0 coverage-100%
voicevox_engine/synthesis_engine/init.py 5 0 coverage-100%
voicevox_engine/synthesis_engine/core_wrapper.py 201 146 coverage-27%
voicevox_engine/synthesis_engine/make_synthesis_engines.py 59 30 coverage-49%
voicevox_engine/synthesis_engine/synthesis_engine.py 130 11 coverage-92%
voicevox_engine/synthesis_engine/synthesis_engine_base.py 67 9 coverage-87%
voicevox_engine/user_dict.py 144 11 coverage-92%
voicevox_engine/utility/init.py 5 0 coverage-100%
voicevox_engine/utility/connect_base64_waves.py 37 0 coverage-100%
voicevox_engine/utility/core_version_utility.py 8 1 coverage-88%
voicevox_engine/utility/mutex_utility.py 10 0 coverage-100%
voicevox_engine/utility/path_utility.py 26 8 coverage-69%
TOTAL 2178 659 coverage-70%

Copy link
Member

@Hiroshiba Hiroshiba left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!!!

そういえばなのですが、コアの方ではCUDAやDirectMLなどを配布するvoicevox_additional_librariesというリポジトリからリソースを取得するようになっています。
Rustでコンパイルされたダウンローダーを実行すると、コアdllと追加リソースが振ってくる形です。
エンジンもvoicevox_additional_librariesやコアのダウンローダーに依存すると共通化できて嬉しいかもとか思いました。

詳しくは↓のissueがありました。ご興味あれば!!

.github/workflows/build.yml Show resolved Hide resolved
@Hiroshiba Hiroshiba requested review from Hiroshiba and removed request for y-chan October 5, 2023 09:31
@Hiroshiba Hiroshiba merged commit 429ecec into VOICEVOX:master Oct 5, 2023
3 checks passed
@aoirint aoirint deleted the patch-ci-vvppp-no-full-size-archive branch October 9, 2023 02:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants