Skip to content

Commit 058c865

Browse files
committed
📝 doc improvements
1 parent 830e8ae commit 058c865

File tree

6 files changed

+116
-45
lines changed

6 files changed

+116
-45
lines changed

.gitignore

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,12 @@ src/logs/
1212
dist/
1313
coverage/
1414

15-
# Deployment data (contains personal/environment-specific information)
16-
data/
15+
# Data directory - environment-specific files
16+
data/environments.json
17+
data/deployments/
18+
19+
# Keep the example file for reference
20+
!data/environments.example.json
1721

1822
# Backup files
1923
*.backup

data/environments.example.json

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
{
2+
"version": "1.0.0",
3+
"defaultEnvironmentId": "customer-dev",
4+
"environments": [
5+
{
6+
"id": "customer-dev",
7+
"name": "Customer Development",
8+
"url": "https://contoso-dev.crm.dynamics.com",
9+
"description": "Development environment for customer-facing solutions",
10+
"color": "blue",
11+
"lastConnected": null,
12+
"metadata": {
13+
"organizationName": "contoso-dev",
14+
"organizationDisplayName": "Contoso Development",
15+
"region": "North America"
16+
}
17+
},
18+
{
19+
"id": "integration-test",
20+
"name": "Integration Testing",
21+
"url": "https://contoso-integration.crm.dynamics.com",
22+
"description": "Integration testing with external systems",
23+
"color": "yellow",
24+
"lastConnected": null,
25+
"metadata": {
26+
"organizationName": "contoso-integration",
27+
"organizationDisplayName": "Contoso Integration Test",
28+
"region": "North America"
29+
}
30+
},
31+
{
32+
"id": "partner-uat",
33+
"name": "Partner UAT",
34+
"url": "https://contoso-partneruat.crm.dynamics.com",
35+
"description": "User acceptance testing with partner organizations",
36+
"color": "green",
37+
"lastConnected": null,
38+
"metadata": {
39+
"organizationName": "contoso-partneruat",
40+
"organizationDisplayName": "Contoso Partner UAT",
41+
"region": "North America"
42+
}
43+
},
44+
{
45+
"id": "production-main",
46+
"name": "Production (Main)",
47+
"url": "https://contoso.crm.dynamics.com",
48+
"description": "Live production environment",
49+
"color": "red",
50+
"lastConnected": null,
51+
"metadata": {
52+
"organizationName": "contoso",
53+
"organizationDisplayName": "Contoso Production",
54+
"region": "North America"
55+
}
56+
}
57+
]
58+
}

docs/USAGE-GUIDE.md

Lines changed: 0 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -161,38 +161,6 @@ The rollback system is **environment-aware**:
161161
- Each environment maintains its own deployment history
162162
- Rollback buttons only appear for eligible deployments in each environment
163163

164-
### Multi-Environment Workflow Example
165-
166-
**Typical deployment workflow:**
167-
168-
1. **Development Phase**:
169-
- Deploy ERD to Dev environment
170-
- Test and iterate
171-
- View Dev deployments: Filter by "Development" in history
172-
173-
2. **Testing Phase**:
174-
- Deploy same ERD to Test environment
175-
- Perform validation
176-
- View Test deployments: Filter by "Test" in history
177-
178-
3. **Production Deployment**:
179-
- Deploy verified ERD to Production
180-
- Monitor in production
181-
- View Prod deployments: Filter by "Production" in history
182-
183-
4. **Rollback if Needed**:
184-
- If issues found in Test, rollback Test deployment
185-
- Dev and Production remain unaffected
186-
- Fix issues and redeploy to Test
187-
188-
### Best Practices
189-
190-
- **Use Environment Filters**: Switch between environments to see environment-specific deployments
191-
- **Check Environment Before Rollback**: Always verify you're rolling back from the correct environment
192-
- **Monitor Progress**: Watch the progress tracker to ensure rollback completes successfully
193-
- **Review Dependencies**: Before rollback, check if other solutions depend on your entities
194-
- **Backup Data**: If your entities contain important data, export it before rollback
195-
196164
## Intelligent Validation & Auto-Corrections
197165

198166
The React application includes sophisticated validation that provides real-time feedback and intelligent fixes:

docs/intro.md

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ The **Mermaid to Dataverse Converter** is a powerful tool that converts [Mermaid
1313
- **Global Choices**: Automatically manage and reuse global choice sets
1414
- **CDM Integration**: Seamlessly integrate with Common Data Model entities
1515
- **Solution Packaging**: Create complete Dataverse solutions ready for deployment
16+
- **Multi-Environment Support**: Deploy to multiple Dataverse environments (dev/test/prod) from a single deployment with dynamic environment selection
1617
- **Microsoft Entra Authentication**: Secure access with Microsoft identity
1718
- **Deployment History**: Track all your deployments with detailed logging
1819
- **Modular Rollback**: Selectively rollback components of your deployment
@@ -26,22 +27,24 @@ Get up and running in minutes:
2627
git clone https://github.com/LuiseFreese/mermaid.git
2728
cd mermaid
2829

29-
# Install dependencies
30-
npm install
30+
# Install all dependencies (root + frontend)
31+
npm run install:all
3132

32-
# Set up environment variables
33-
copy .env.example .env.local
33+
# Configure your Dataverse environments
34+
copy data\environments.example.json data\environments.json
35+
# Edit data/environments.json with your Dataverse environment URLs and IDs
3436

35-
# Start the backend server
36-
npm start
37+
# Set up local environment variables (optional for local dev)
38+
copy .env.example .env.local
39+
# Edit .env.local with your credentials if testing real Dataverse connections
3740

38-
# In a separate terminal, start the frontend
39-
cd src/frontend
40-
npm install
41-
npm start
41+
# Start both backend and frontend servers
42+
npm run dev
4243
```
4344

44-
The backend will be available at `http://localhost:8080` and the frontend wizard at `http://localhost:3003/wizard`.
45+
The backend will be available at `http://localhost:8080` and the frontend wizard at `http://localhost:3003`.
46+
47+
> **Note**: Authentication is disabled by default in development mode (`AUTH_ENABLED=false`), so you can test the UI without Azure AD credentials. Configure `data/environments.json` to enable multi-environment features.
4548
4649
## Key Features
4750

src/backend/data/environments.json

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
{
2+
"version": "1.0.0",
3+
"defaultEnvironmentId": "default",
4+
"environments": [
5+
{
6+
"id": "default",
7+
"name": "Default Environment",
8+
"url": "https://org4caa9250.crm4.dynamics.com",
9+
"description": "Default environment from environment variables",
10+
"color": "blue",
11+
"metadata": {
12+
"organizationName": "",
13+
"organizationDisplayName": "",
14+
"region": "Unknown"
15+
},
16+
"lastConnected": null
17+
}
18+
]
19+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
{
2+
"version": "1.0.0",
3+
"defaultEnvironmentId": "default",
4+
"environments": [
5+
{
6+
"id": "default",
7+
"name": "Default Environment",
8+
"url": "https://org4caa9250.crm4.dynamics.com",
9+
"description": "Default environment from environment variables",
10+
"color": "blue",
11+
"metadata": {
12+
"organizationName": "",
13+
"organizationDisplayName": "",
14+
"region": "Unknown"
15+
},
16+
"lastConnected": null
17+
}
18+
]
19+
}

0 commit comments

Comments
 (0)