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

PlaywrightのGitHub Actions導入 #19

Open
4 of 6 tasks
so-c opened this issue Jul 20, 2022 · 10 comments
Open
4 of 6 tasks

PlaywrightのGitHub Actions導入 #19

so-c opened this issue Jul 20, 2022 · 10 comments

Comments

@so-c
Copy link
Owner

so-c commented Jul 20, 2022

npm run test:e2e がGitHub Actionsで回るようにする

  • so-c/voicevoxのGitHub Actionsから上記を実行させる refs. actions/checkout: Action for checking out a repo
    • voicevoxのリポジトリからvoicvevox_engineをcheckoutする
    • 隣にvoicevoxのリポジトリをcloneする 最初にworking directoryにcheckoutしていた
    • voicevoxの環境変数にvoicevox_engineのrun.pyを指定する
      - VOICEVOX READMEの方法(元をコピーして書き換え)
      - コンパイル済みモデルがやっぱり必要なので --enable-mockするか?
      - エントリポイント、run.pyで合っている?
      - Building and testing Python - GitHub Docs して動かしてみる
    • voicevoxをbuildする
    • voicevoxがvoicevox_engineのdocker imageを使うようにconfigurationする engineのrun.pyを直接参照すればよい
    • ヘッドレスで動くと思うがそのときの挙動を理解していない。要確認
  • dockerのローカルインストール > 要らないっぽい
  • voicevox_engineのdocker利用例を動かしてみる
  • voicevoxのフロントからdocker imageを使わせる
  • background.tsの修正。エンジンの起動方法バリエーション追加 AssetをDLする方向に切り替え
@so-c
Copy link
Owner Author

so-c commented Jul 23, 2022

voicevox_engineがないので失敗する。docker imageを使えると早そう(buildはしたくない)
https://github.com/so-c/voicevox/runs/7481119818?check_suite_focus=true#step:12:1

@so-c
Copy link
Owner Author

so-c commented Jul 24, 2022

Workflow syntax for GitHub Actions - GitHub Docs

voicevox_engineのdocker利用例
run.pyを見るとモックモードがあることがわかるので必要なら活用する

@so-c
Copy link
Owner Author

so-c commented Jul 25, 2022

GitHub Actions のローカル実行 nektos/act は、Windows, Mac OSイメージが動かせない。仕えたとしても部分的

so-c added a commit that referenced this issue Jul 29, 2022
so-c added a commit that referenced this issue Jul 29, 2022
so-c added a commit that referenced this issue Jul 29, 2022
so-c added a commit that referenced this issue Jul 29, 2022
so-c added a commit that referenced this issue Jul 29, 2022
@so-c
Copy link
Owner Author

so-c commented Jul 29, 2022

actions/checkoutvoicevox_engine をサブディレクトリにチェックアウトできた模様
https://github.com/so-c/voicevox/runs/7587025266?check_suite_focus=true#step:12:26

@so-c
Copy link
Owner Author

so-c commented Jul 29, 2022

テストが失敗するのは想定どおり。まだengineへのパスを設定していない

@so-c
Copy link
Owner Author

so-c commented Jul 30, 2022

engineのinstall python dependencyまでクリア
configureでつまづく

使いたいエンジンの起動コマンド

python run.py --enable_mock

background.tsを見るとコマンドライン引数を渡せなさそう

  const enginePath = path.resolve(
    appDirPath,
    engineInfo.executionFilePath ?? "run.exe"
  );
  const args = useGpu ? ["--use_gpu"] : [];

  log.info(`ENGINE ${engineKey} path: ${enginePath}`);
  log.info(`ENGINE ${engineKey} args: ${JSON.stringify(args)}`);

  const engineProcess = spawn(enginePath, args, {
    cwd: path.dirname(enginePath),
  });

executionFilePathにpython、argsにrun.py --enable_mockを渡せばよい?

@so-c
Copy link
Owner Author

so-c commented Jul 30, 2022

buildせずにdownload artifactでよいのでは?
リリースビルドだと--enable_mockが動かなさそう。あとファイルサイズが大きい

@so-c
Copy link
Owner Author

so-c commented Aug 2, 2022

ひとまずbuildする方向で進めて、python run.py --enable_mock で起動できるところまでこぎつけた

pyopenjtalkのビルドにてこずる。ポイントはこのあたり

  • pythonは3.8
  • MS C/C++ Build ToolのCMakeにPATHを通す
  • build.yamlのように事前にwheelを構成しておく

@so-c
Copy link
Owner Author

so-c commented Aug 2, 2022

.env"executionFilePath": "/Path/To/python.exe"background.ts でハードコーディングなら下記に書き換えてnpm run electron:serveすればモックエンジンとともにフロントが立ち上がる

  const engineProcess = spawn(enginePath, ["run.py", "--enable_mock"], {
    cwd: path.dirname(
      "/Path/to/voicevox_engine/run.py"
    ),
  });

@so-c
Copy link
Owner Author

so-c commented Sep 11, 2022

purduct codeに手を入れるのは止めてアーティファクトをDLする方向に切り替え。別リポジトリからAssetsをDLするAction Fetch Github Release Asset · Actions · GitHub Marketplace があったのでこれを使う

so-c added a commit that referenced this issue Sep 11, 2022
so-c added a commit that referenced this issue Sep 11, 2022
so-c added a commit that referenced this issue Sep 11, 2022
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

When branches are created from issues, their pull requests are automatically linked.

1 participant