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

# CI/CD for Master Data

Automatic master data updates using GitHub Actions, etc.




Automating master data updates can reduce human error and speed up the development cycle.

## Automation Flow

The general automation flow is as follows:

1.  **Data Creation**: Create master data using Excel, Google Sheets, CSV, etc.
2.  **Conversion**: Convert from spreadsheets to GS2 master data format (JSON).
3.  **Commit**: Commit the converted JSON or GS2-Deploy template to a Git repository.
4.  **Deployment**: CI tools (GitHub Actions, CircleCI, etc.) detect changes and reflect them in GS2.

## Automating Deployment

### Using GS2-Deploy
If you embed master data in a GS2-Deploy template, you can reflect changes by updating the GS2-Deploy stack from your CI.

**Example for GitHub Actions:**
```yaml
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: GS2 Deploy
        run: |
          # Use gs2-cli or similar to update the stack
          gs2-cli deploy update-stack --stack-name master-data --template-file template.yaml
```

### Using Export/Import of the Management Console
By calling the API to update the `CurrentItemModelMaster` of each microservice, you can reflect the contents of the JSON file.

## Recommendations

- **Test in a Verification Environment**: Always deploy to a project/namespace for verification and confirm operation before reflecting changes in the production environment.
- **Validation**: We strongly recommend using scripts to check data consistency (ID duplication checks, existence checks for related resources, etc.) before deployment.



