> For the complete documentation index, see [llms.txt](/llms.txt)

# マスターデータの CI/CD

GitHub Actions 等を使用したマスターデータの自動更新




マスターデータの更新作業を自動化することで、人為的なミスを減らし、開発サイクルを高速化できます。

## 自動化のフロー

一般的な自動化のフローは以下の通りです。

1.  **データ作成**: Excel や Google スプレッドシート、CSV 等でマスターデータを作成。
2.  **変換**: スプレッドシートから GS2 のマスターデータ形式（JSON）へ変換。
3.  **コミット**: 変換後の JSON または GS2-Deploy のテンプレートを Git リポジトリへコミット。
4.  **デプロイ**: CI ツール（GitHub Actions, CircleCI 等）が変更を検知し、GS2 へ反映。

## デプロイの自動化

### GS2-Deploy を使用する場合
GS2-Deploy のテンプレートにマスターデータを埋め込んでいる場合、CI から GS2-Deploy のスタックを更新することで反映できます。

**GitHub Actions の例:**
```yaml
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: GS2 Deploy
        run: |
          # gs2-cli 等を使用してスタックを更新
          gs2-cli deploy update-stack --stack-name master-data --template-file template.yaml
```

### マネージメントコンソールのエクスポート/インポートを使用する場合
各マイクロサービスの `CurrentItemModelMaster` を更新する API を呼び出すことで、JSON ファイルの内容を反映できます。

## 推奨事項

- **検証環境でのテスト**: 本番環境へ反映する前に、必ず検証用のプロジェクト/ネームスペースへデプロイし、動作確認を行ってください。
- **バリデーション**: デプロイ前にスクリプト等でデータの整合性チェック（ID の重複チェックや、関連リソースの存在チェック）を行うことを強く推奨します。



