Closed naota7118 closed 3 weeks ago
MySQLに接続できているか確認しようとしたら、ホストが違うと言われる。
- name: Wait for MySQL to be ready run: | until mysql -h mysql -u root -p${{ secrets.MYSQL_ROOT_PASSWORD }} -e 'select 1'; do echo "Waiting for MySQL..." sleep 5 done
テスト環境はローカルのRailsで、コンテナ化していない。 一方でMySQLはGitHub ActionsのServicesを用いてコンテナ化している。
database.ymlで指定したホスト名とGitHub Actionsのサービス名が一致していれば接続できると思ったが、それはどちらもコンテナであればの話だった。 非コンテナからコンテナに接続するにはまた違う設定が必要だった。
database.yml
テスト環境より本番環境を優先すべきと考え、本番環境でMySQL接続をさきに完了させることにした。
何が起きているのか
MySQLに接続できているか確認しようとしたら、ホストが違うと言われる。
何が原因か
テスト環境はローカルのRailsで、コンテナ化していない。
一方でMySQLはGitHub ActionsのServicesを用いてコンテナ化している。
database.yml
で指定したホスト名とGitHub Actionsのサービス名が一致していれば接続できると思ったが、それはどちらもコンテナであればの話だった。非コンテナからコンテナに接続するにはまた違う設定が必要だった。