コンテンツにスキップ

Tasks

1. 共通関数の改修(Load-EnvSettings.ps1)

  • [x] 1.1 Load-EnvSettings-EnvPath パラメーターを追加。未指定時はプロジェクトルートの .env をデフォルトで使用。ファイルが存在しない場合はパスを含むエラーメッセージで throw する
  • [x] 1.2 Apply-EnvSettings 関数を削除する
  • [x] 1.3 Import-EnvParams 関数を新設する。内部処理: (1) Load-EnvSettings.env を読み込み (2) 全キーを Set-Variable -Scope 1 で呼び出し元スコープに設定 (3) .env.example のキー一覧をパースし、.env に不足キーがあればキー名を列挙してエラー
  • [x] 1.4 -EnvPath の相対パス解決を実装(相対パスはプロジェクトルート基準、絶対パスはそのまま使用)
  • [x] 1.5 .env.example が存在しない場合は必須キー検証をスキップする処理を実装
  • [x] 1.6 ファイルヘッダー(.SYNOPSIS, .DESCRIPTION)を更新し、新しい関数構成を反映する

2. メインスクリプトの改修

  • [x] 2.1 Clear-Data.ps1: param() から Azure パラメーター3つを削除し -EnvFile を追加。.env 読み込みボイラープレートを Import-EnvParams -EnvPath $EnvFile へ置換。変数名を変更($SubscriptionId$AZURE_SUBSCRIPTION_ID$ResourceGroupName$AZURE_RESOURCE_GROUP_NAME$StorageAccountName$AZURE_STORAGE_ACCOUNT_NAME)。ヘッダーコメントも更新
  • [x] 2.2 Deploy-StaticFiles.ps1: 同様の改修($SourcePath, $SourcePaths パラメーターは維持)
  • [x] 2.3 New-SasToken.ps1: 同様の改修($PolicyName パラメーターは維持)
  • [x] 2.4 Show-Urls.ps1: 同様の改修($PolicyName パラメーターは維持)

3. .env.example の整理

  • [x] 3.1 AZURE_LOCATION が未使用であれば .env.example から削除する
  • [x] 3.2 各キーの説明コメントが現状と整合しているか確認・更新する

4. 動作確認

  • [x] 4.1 .env が存在する状態で各スクリプトを引数なしで実行し、正常動作を確認
  • [x] 4.2 .env を一時削除し、エラーメッセージが表示されることを確認
  • [x] 4.3 -EnvFile ".env.example" を指定し、別ファイルからの読み込みが動作することを確認
  • [x] 4.4 .env.example に存在するキーを .env から1つ削除し、不足キーエラーが表示されることを確認