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

このリポジトリで製品ビルドを可能にする #527

Merged
merged 16 commits into from
Jun 20, 2023

Conversation

Hiroshiba
Copy link
Member

@Hiroshiba Hiroshiba commented Jun 17, 2023

内容

このリポジトリで製品ビルドを可能にします。
変更箇所は次のとおりです。

  • production環境を使う制御変数を用意する
    • @Hiroshiba の許可がないとこの環境が使えないようになっています
    • environmentは1つしか指定できないのでcode_signing環境の情報はproduction環境に統合しました
  • secretsに書かれているアクセストークンを使ってプライベートリポジトリのコードをpullする
    • マージできなかった場合はエラーになって止まります
  • 製品版のビルドログを表示しないようにする
  • VOICEVOX_RESOURCEやVOICEVOX_FAT_RESOURCEを組み込む
    • 製品ビルド可能にするため
    • FAT_RESOURCEにはモデルファイルが入っています
  • SKIP_UPLOADING_RELEASE_ASSETを消去
    • Releaseを作成したときに勝手にアップロードしないようにする設定
    • アップロード不要になるケースがなくなるため除外

その他

実際にビルドしたものがこちらです。

これでかなり気軽にコアをビルドできるようになるはず!!

.github/workflows/build_and_deploy.yml Outdated Show resolved Hide resolved
Comment on lines +18 to +23
default: false
is_production:
description: "製品版をビルドする"
type: boolean
required: false
default: false
Copy link
Member

Choose a reason for hiding this comment

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

OSS版バイナリに署名することはないので二つのboolパラメータを統合して三値にした方がいいのではないかと思ったのですが、code_signingはもうcodesign.bashを実行するか否かに使われていないので、OSS版バイナリに署名しても事故ではないのならcode_signingis_productionは排反でもいいと思います。

Copy link
Member Author

@Hiroshiba Hiroshiba Jun 19, 2023

Choose a reason for hiding this comment

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

ちょっと僕が勘違いしてるかもなのですが、code_signing引数でcodesign.bashを実行するかどうか制御してます。
https://github.com/Hiroshiba/voicevox_core/blob/45a9682b8d59fc99a634b2f27af516f7ba885d92/.github/workflows/build_and_deploy.yml#L239

production environmentを使うかどうかはproduction引数で制御してます。
production environmentを使うけど、コード署名はしない(実験版リリース)というケースを想定してます。

Copy link
Member

Choose a reason for hiding this comment

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

気になったのはis_production && !code_signingのケースでした。ダミー音声版を署名したい場合があるのかなと思った次第です。ただcodesign.bash自体がActions上で動くかどうかを確かめたいというケースはありそうですね...

is_production code_signing
false 製品版を署名 (リリース) ダミー音声版をビルドするだけ (普段のCI)
true 製品版を無署名 (お試しビルド) ダミー音声版をビルドだけして、それに署名 (?)

Copy link
Member Author

Choose a reason for hiding this comment

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

署名するテストをしたいときは、今まで通りenvironmentを使わずにsecretsを設定すれば可能です。
(environmentはsecretsのサブセットを持っているだけ)

Copy link
Member

@qryxip qryxip Jun 20, 2023

Choose a reason for hiding this comment

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

なるほどこの状態でもできるんですね。

(↑の表のis_production、上下逆でした... あとis_production && !code_signingじゃなくて!is_production && code_signing...)

Copy link
Member

@qryxip qryxip left a comment

Choose a reason for hiding this comment

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

LGTM!

Copy link
Member Author

@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.

@qryxip レビューありがとうございます、心強いです!!!

@y-chan 製品周りのことなのでメンテナy-chanさんにもレビューお願いしても良いでしょうか 🙇‍♂️

Copy link
Member

@y-chan y-chan left a comment

Choose a reason for hiding this comment

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

LGTM!
問題ないと思います!

@Hiroshiba
Copy link
Member Author

レビューありがとうございます! マージしてビルドしてみます・・・!

@Hiroshiba Hiroshiba merged commit 00c4315 into VOICEVOX:main Jun 20, 2023
@Hiroshiba Hiroshiba deleted the 製品ビルドを可能にする branch June 20, 2023 16:41
@qryxip qryxip mentioned this pull request Jun 25, 2023
67 tasks
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.

3 participants