Menu

.env ファイルを GitHub Actions に自動同期する

注目すべき点

NEXTY.DEV v3.2.16 では、本番環境変数の同期スクリプトが2つ追加されました。ローカルコードにこれらのスクリプトがない場合は、ソースリポジトリからダウンロードしてください:

  • sync-env-to-github.mjs:ローカルの .env ファイルの環境変数を GitHub Actions の Secrets と Variables に一括作成します
  • clear-env-form-github.mjs:GitHub Actions の Secrets と Variables の環境変数をクリアします

このガイドでは、スクリプトを使用してローカルの .env ファイルの環境変数を GitHub Actions の Secrets と Variables に自動的に一括作成する方法を説明します。

事前準備

  1. GitHub CLI のインストール

MacOS のインストール方法:

brew install gh

Windows のインストール方法:

winget install --id GitHub.cli
 
または
 
scoop install gh
  1. GitHub へのログイン
gh auth login

対話式のプロンプトに従ってログインを完了してください。

  1. リポジトリの権限確認

Secrets と Variables を作成するには、対象リポジトリに対する Admin 権限が必要です。

スクリプトの使用方法

package.json ファイルの scripts 設定に、以下のコマンドを追加してください:

"scripts": {
  "env:clear": "node scripts/clear-env-from-github.mjs",
  "env:sync": "node scripts/sync-env-to-github.mjs",
}

同期の前に、GitHub Actions の Secrets と Variables の環境変数をクリアします(必須ではありませんが、推奨されます):

npm run env:clear

次に、ローカルの .env ファイルの環境変数を GitHub Actions の Secrets と Variables に同期します:

npm run env:sync

クリアまたは同期のいずれの場合も、実行結果が出力されます。例:

 Done in 10.9s!
  📦 Variables created: 19
  🔐 Secrets created: 25
  ⏭️ Skipped: 9

一部の環境変数のクリアまたは同期が失敗した場合は、コマンドを再度実行してください。

セキュリティに関する注意事項

  • ⚠️ .env ファイルを Git にコミットしないでください
  • .env.gitignore に含まれていることを確認してください
  • Secrets は GitHub 上で暗号化されて保存されます。Secrets を編集すると空白が表示されますが、これは正常な動作ですので心配する必要はありません。