@atlashub/smartstack-cli 1.5.0 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.documentation/agents.html +920 -916
- package/.documentation/apex.html +1022 -1018
- package/.documentation/business-analyse.html +1505 -1501
- package/.documentation/commands.html +684 -680
- package/.documentation/css/styles.css +2168 -2168
- package/.documentation/efcore.html +2509 -2505
- package/.documentation/gitflow.html +2622 -2618
- package/.documentation/hooks.html +417 -413
- package/.documentation/index.html +327 -323
- package/.documentation/init.html +565 -0
- package/.documentation/installation.html +548 -462
- package/.documentation/js/app.js +794 -794
- package/.documentation/ralph-loop.html +534 -530
- package/.documentation/test-web.html +517 -513
- package/config/default-config.json +86 -86
- package/config/settings.json +53 -53
- package/config/settings.local.example.json +16 -16
- package/dist/index.js +18 -8
- package/dist/index.js.map +1 -1
- package/package.json +88 -88
- package/templates/agents/action.md +36 -36
- package/templates/agents/efcore/conflicts.md +84 -84
- package/templates/agents/efcore/db-deploy.md +51 -51
- package/templates/agents/efcore/db-reset.md +59 -59
- package/templates/agents/efcore/db-seed.md +56 -56
- package/templates/agents/efcore/db-status.md +64 -64
- package/templates/agents/efcore/migration.md +85 -85
- package/templates/agents/efcore/rebase-snapshot.md +62 -62
- package/templates/agents/efcore/scan.md +90 -90
- package/templates/agents/efcore/squash.md +67 -67
- package/templates/agents/explore-codebase.md +65 -65
- package/templates/agents/explore-docs.md +97 -97
- package/templates/agents/fix-grammar.md +49 -49
- package/templates/agents/gitflow/abort.md +45 -45
- package/templates/agents/gitflow/cleanup.md +85 -85
- package/templates/agents/gitflow/commit.md +40 -40
- package/templates/agents/gitflow/exec.md +48 -48
- package/templates/agents/gitflow/finish.md +92 -92
- package/templates/agents/gitflow/init.md +139 -139
- package/templates/agents/gitflow/merge.md +62 -62
- package/templates/agents/gitflow/plan.md +42 -42
- package/templates/agents/gitflow/pr.md +78 -78
- package/templates/agents/gitflow/review.md +49 -49
- package/templates/agents/gitflow/start.md +61 -61
- package/templates/agents/gitflow/status.md +32 -32
- package/templates/agents/snipper.md +36 -36
- package/templates/agents/websearch.md +46 -46
- package/templates/commands/_resources/formatting-guide.md +124 -124
- package/templates/commands/ai-prompt.md +315 -315
- package/templates/commands/apex/1-analyze.md +100 -100
- package/templates/commands/apex/2-plan.md +145 -145
- package/templates/commands/apex/3-execute.md +171 -171
- package/templates/commands/apex/4-examine.md +116 -116
- package/templates/commands/apex/5-tasks.md +209 -209
- package/templates/commands/apex.md +76 -76
- package/templates/commands/application/create.md +362 -362
- package/templates/commands/application/templates-backend.md +463 -463
- package/templates/commands/application/templates-frontend.md +517 -517
- package/templates/commands/application/templates-i18n.md +478 -478
- package/templates/commands/application/templates-seed.md +362 -362
- package/templates/commands/application.md +303 -303
- package/templates/commands/business-analyse/0-orchestrate.md +640 -640
- package/templates/commands/business-analyse/1-init.md +269 -269
- package/templates/commands/business-analyse/2-discover.md +520 -520
- package/templates/commands/business-analyse/3-analyse.md +408 -408
- package/templates/commands/business-analyse/4-specify.md +598 -598
- package/templates/commands/business-analyse/5-validate.md +326 -326
- package/templates/commands/business-analyse/6-handoff.md +746 -746
- package/templates/commands/business-analyse/7-doc-html.md +602 -602
- package/templates/commands/business-analyse/bug.md +325 -325
- package/templates/commands/business-analyse/change-request.md +368 -368
- package/templates/commands/business-analyse/hotfix.md +200 -200
- package/templates/commands/business-analyse.md +640 -640
- package/templates/commands/controller/create.md +216 -216
- package/templates/commands/controller/postman-templates.md +528 -528
- package/templates/commands/controller/templates.md +600 -600
- package/templates/commands/controller.md +337 -337
- package/templates/commands/create/agent.md +138 -138
- package/templates/commands/create/command.md +166 -166
- package/templates/commands/create/hook.md +234 -234
- package/templates/commands/create/plugin.md +329 -329
- package/templates/commands/create/project.md +507 -507
- package/templates/commands/create/skill.md +199 -199
- package/templates/commands/create.md +220 -220
- package/templates/commands/debug.md +95 -95
- package/templates/commands/documentation/module.md +202 -202
- package/templates/commands/documentation/templates.md +432 -432
- package/templates/commands/documentation.md +190 -190
- package/templates/commands/efcore/_env-check.md +153 -153
- package/templates/commands/efcore/conflicts.md +186 -186
- package/templates/commands/efcore/db-deploy.md +193 -193
- package/templates/commands/efcore/db-reset.md +426 -426
- package/templates/commands/efcore/db-seed.md +326 -326
- package/templates/commands/efcore/db-status.md +226 -226
- package/templates/commands/efcore/migration.md +400 -400
- package/templates/commands/efcore/rebase-snapshot.md +264 -264
- package/templates/commands/efcore/scan.md +198 -198
- package/templates/commands/efcore/squash.md +298 -298
- package/templates/commands/efcore.md +224 -224
- package/templates/commands/epct.md +69 -69
- package/templates/commands/explain.md +186 -186
- package/templates/commands/explore.md +45 -45
- package/templates/commands/feature-full.md +267 -267
- package/templates/commands/gitflow/1-init.md +1038 -1038
- package/templates/commands/gitflow/10-start.md +768 -768
- package/templates/commands/gitflow/11-finish.md +457 -457
- package/templates/commands/gitflow/12-cleanup.md +276 -276
- package/templates/commands/gitflow/13-sync.md +216 -216
- package/templates/commands/gitflow/14-rebase.md +251 -251
- package/templates/commands/gitflow/2-status.md +277 -277
- package/templates/commands/gitflow/3-commit.md +344 -344
- package/templates/commands/gitflow/4-plan.md +145 -145
- package/templates/commands/gitflow/5-exec.md +147 -147
- package/templates/commands/gitflow/6-abort.md +344 -344
- package/templates/commands/gitflow/7-pull-request.md +453 -355
- package/templates/commands/gitflow/8-review.md +240 -176
- package/templates/commands/gitflow/9-merge.md +451 -365
- package/templates/commands/gitflow.md +128 -128
- package/templates/commands/implement.md +663 -663
- package/templates/commands/init.md +567 -562
- package/templates/commands/mcp-integration.md +330 -330
- package/templates/commands/notification.md +129 -129
- package/templates/commands/oneshot.md +57 -57
- package/templates/commands/quick-search.md +72 -72
- package/templates/commands/ralph-loop/cancel-ralph.md +18 -18
- package/templates/commands/ralph-loop/help.md +126 -126
- package/templates/commands/ralph-loop/ralph-loop.md +18 -18
- package/templates/commands/review.md +106 -106
- package/templates/commands/utils/test-web-config.md +160 -160
- package/templates/commands/utils/test-web.md +151 -151
- package/templates/commands/validate.md +233 -233
- package/templates/commands/workflow.md +193 -193
- package/templates/gitflow/config.json +138 -138
- package/templates/hooks/ef-migration-check.md +139 -139
- package/templates/hooks/hooks.json +25 -25
- package/templates/hooks/stop-hook.sh +177 -177
- package/templates/skills/ai-prompt/SKILL.md +778 -778
- package/templates/skills/application/SKILL.md +563 -563
- package/templates/skills/application/templates-backend.md +450 -450
- package/templates/skills/application/templates-frontend.md +531 -531
- package/templates/skills/application/templates-i18n.md +520 -520
- package/templates/skills/application/templates-seed.md +647 -647
- package/templates/skills/business-analyse/SKILL.md +191 -191
- package/templates/skills/business-analyse/questionnaire.md +283 -283
- package/templates/skills/business-analyse/templates-frd.md +477 -477
- package/templates/skills/business-analyse/templates-react.md +580 -580
- package/templates/skills/controller/SKILL.md +240 -240
- package/templates/skills/controller/postman-templates.md +614 -614
- package/templates/skills/controller/templates.md +1468 -1468
- package/templates/skills/documentation/SKILL.md +133 -133
- package/templates/skills/documentation/templates.md +476 -476
- package/templates/skills/feature-full/SKILL.md +838 -838
- package/templates/skills/notification/SKILL.md +555 -555
- package/templates/skills/ui-components/SKILL.md +870 -870
- package/templates/skills/workflow/SKILL.md +582 -582
- package/templates/test-web/api-health.json +38 -38
- package/templates/test-web/minimal.json +19 -19
- package/templates/test-web/npm-package.json +46 -46
- package/templates/test-web/seo-check.json +54 -54
|
@@ -1,193 +1,193 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Deploy EF Core migrations to local database
|
|
3
|
-
agent: efcore-db-deploy
|
|
4
|
-
model: haiku
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# EF Core Database Deploy
|
|
8
|
-
|
|
9
|
-
Applies all pending migrations to the configured database.
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
## STEP 0: Verification environnement et connexion
|
|
14
|
-
|
|
15
|
-
> **Include:** `_env-check.md` (etapes 0.1 a 0.4)
|
|
16
|
-
|
|
17
|
-
### 0.1 Detecter les fichiers appsettings
|
|
18
|
-
|
|
19
|
-
```bash
|
|
20
|
-
# Scanner les fichiers appsettings
|
|
21
|
-
API_DIR=$(find . -type d -name "*.Api" | head -1)
|
|
22
|
-
[ -z "$API_DIR" ] && API_DIR="src/SmartStack.Api"
|
|
23
|
-
|
|
24
|
-
APPSETTINGS_FILES=$(find "$API_DIR" -maxdepth 1 -name "appsettings*.json" 2>/dev/null | sort)
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
### 0.2 Selectionner l'environnement
|
|
28
|
-
|
|
29
|
-
```bash
|
|
30
|
-
# Priorite: --env flag > appsettings.Local.json > erreur
|
|
31
|
-
ENV_FLAG="${1#--env=}" # Extraire valeur si --env=Development
|
|
32
|
-
|
|
33
|
-
if [ -n "$ENV_FLAG" ] && [ "$ENV_FLAG" != "$1" ]; then
|
|
34
|
-
SELECTED_ENV="appsettings.${ENV_FLAG}.json"
|
|
35
|
-
elif [ -f "$API_DIR/appsettings.Local.json" ]; then
|
|
36
|
-
SELECTED_ENV="appsettings.Local.json"
|
|
37
|
-
else
|
|
38
|
-
echo "ERROR: Aucun fichier appsettings trouve"
|
|
39
|
-
exit 1
|
|
40
|
-
fi
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
### 0.3 Extraire et afficher la connexion
|
|
44
|
-
|
|
45
|
-
```bash
|
|
46
|
-
# Extraire connection string
|
|
47
|
-
CONNECTION_STRING=$(powershell -Command "
|
|
48
|
-
\$json = Get-Content '$API_DIR/$SELECTED_ENV' | ConvertFrom-Json
|
|
49
|
-
\$json.ConnectionStrings.DefaultConnection
|
|
50
|
-
")
|
|
51
|
-
|
|
52
|
-
DATABASE_NAME=$(echo "$CONNECTION_STRING" | grep -oP 'Database=\K[^;]+')
|
|
53
|
-
SERVER_NAME=$(echo "$CONNECTION_STRING" | grep -oP 'Server=\K[^;]+')
|
|
54
|
-
CONNECTION_MASKED=$(echo "$CONNECTION_STRING" | sed 's/Password=[^;]*/Password=****/g')
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### 0.4 Afficher le resume
|
|
58
|
-
|
|
59
|
-
```
|
|
60
|
-
================================================================================
|
|
61
|
-
EF CORE - DATABASE DEPLOY
|
|
62
|
-
================================================================================
|
|
63
|
-
|
|
64
|
-
FICHIERS DISPONIBLES:
|
|
65
|
-
{liste des appsettings detectes}
|
|
66
|
-
|
|
67
|
-
ENVIRONNEMENT: {SELECTED_ENV}
|
|
68
|
-
|
|
69
|
-
CONNEXION CIBLE:
|
|
70
|
-
Server: {SERVER_NAME}
|
|
71
|
-
Database: {DATABASE_NAME}
|
|
72
|
-
String: {CONNECTION_MASKED}
|
|
73
|
-
|
|
74
|
-
================================================================================
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
### 0.5 Protection Production
|
|
78
|
-
|
|
79
|
-
```bash
|
|
80
|
-
# Bloquer si Production
|
|
81
|
-
if [[ "$SELECTED_ENV" == *"Production"* ]]; then
|
|
82
|
-
echo "BLOQUE: Environnement Production detecte"
|
|
83
|
-
echo " Utilisez un environnement non-production"
|
|
84
|
-
exit 1
|
|
85
|
-
fi
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
---
|
|
89
|
-
|
|
90
|
-
## STEP 1: Detecter le projet EF Core
|
|
91
|
-
|
|
92
|
-
```bash
|
|
93
|
-
# Detect EF Core project
|
|
94
|
-
CSPROJ=$(find . -name "*.csproj" -exec grep -l "Microsoft.EntityFrameworkCore" {} \; | head -1)
|
|
95
|
-
if [ -z "$CSPROJ" ]; then
|
|
96
|
-
echo "ERROR: No EF Core project detected"
|
|
97
|
-
exit 1
|
|
98
|
-
fi
|
|
99
|
-
|
|
100
|
-
PROJECT_DIR=$(dirname "$CSPROJ")
|
|
101
|
-
PROJECT_NAME=$(basename "$CSPROJ" .csproj)
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
---
|
|
105
|
-
|
|
106
|
-
## STEP 2: Check pending migrations
|
|
107
|
-
|
|
108
|
-
```bash
|
|
109
|
-
cd "$PROJECT_DIR"
|
|
110
|
-
dotnet ef migrations list --json 2>/dev/null | grep -E '"applied": false'
|
|
111
|
-
PENDING_COUNT=$(dotnet ef migrations list --json 2>/dev/null | grep -c '"applied": false' || echo "0")
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
**Display status:**
|
|
115
|
-
|
|
116
|
-
```
|
|
117
|
-
================================================================================
|
|
118
|
-
EF CORE - DATABASE DEPLOY
|
|
119
|
-
================================================================================
|
|
120
|
-
|
|
121
|
-
PROJECT: {PROJECT_NAME}
|
|
122
|
-
CONFIG: appsettings.Local.json
|
|
123
|
-
MIGRATIONS: {PENDING_COUNT} pending
|
|
124
|
-
|
|
125
|
-
================================================================================
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
---
|
|
129
|
-
|
|
130
|
-
## STEP 3: Apply migrations
|
|
131
|
-
|
|
132
|
-
```bash
|
|
133
|
-
# Apply migrations with local config
|
|
134
|
-
dotnet ef database update --configuration Release --verbose
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
**If connection error:**
|
|
138
|
-
|
|
139
|
-
```
|
|
140
|
-
⚠️ Database connection error
|
|
141
|
-
|
|
142
|
-
CHECKS:
|
|
143
|
-
1. Is SQL Server running?
|
|
144
|
-
2. Does the database exist?
|
|
145
|
-
3. Are the credentials correct?
|
|
146
|
-
|
|
147
|
-
USEFUL COMMANDS:
|
|
148
|
-
- Check connection: sqlcmd -S {SERVER} -E
|
|
149
|
-
- Create database: /efcore:db-reset
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
---
|
|
153
|
-
|
|
154
|
-
## STEP 4: Confirmation
|
|
155
|
-
|
|
156
|
-
```
|
|
157
|
-
================================================================================
|
|
158
|
-
DEPLOYMENT COMPLETE
|
|
159
|
-
================================================================================
|
|
160
|
-
|
|
161
|
-
✓ {N} migration(s) applied
|
|
162
|
-
✓ Database is up to date
|
|
163
|
-
|
|
164
|
-
NEXT COMMANDS:
|
|
165
|
-
/efcore:db-status → Check status
|
|
166
|
-
/efcore:db-seed → Populate test data
|
|
167
|
-
|
|
168
|
-
================================================================================
|
|
169
|
-
```
|
|
170
|
-
|
|
171
|
-
---
|
|
172
|
-
|
|
173
|
-
## Options
|
|
174
|
-
|
|
175
|
-
| Option | Description |
|
|
176
|
-
|--------|-------------|
|
|
177
|
-
| `--env {name}` | Utiliser appsettings.{name}.json (ex: --env Development) |
|
|
178
|
-
| `--verbose` | Display SQL details |
|
|
179
|
-
| `--connection "..."` | Override connection string |
|
|
180
|
-
| `--context {name}` | Specify DbContext if multiple |
|
|
181
|
-
|
|
182
|
-
## Exemples
|
|
183
|
-
|
|
184
|
-
```bash
|
|
185
|
-
# Deployer sur la base locale (defaut)
|
|
186
|
-
/efcore:db-deploy
|
|
187
|
-
|
|
188
|
-
# Deployer sur l'environnement Development
|
|
189
|
-
/efcore:db-deploy --env Development
|
|
190
|
-
|
|
191
|
-
# Deployer sur Staging
|
|
192
|
-
/efcore:db-deploy --env Staging
|
|
193
|
-
```
|
|
1
|
+
---
|
|
2
|
+
description: Deploy EF Core migrations to local database
|
|
3
|
+
agent: efcore-db-deploy
|
|
4
|
+
model: haiku
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# EF Core Database Deploy
|
|
8
|
+
|
|
9
|
+
Applies all pending migrations to the configured database.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## STEP 0: Verification environnement et connexion
|
|
14
|
+
|
|
15
|
+
> **Include:** `_env-check.md` (etapes 0.1 a 0.4)
|
|
16
|
+
|
|
17
|
+
### 0.1 Detecter les fichiers appsettings
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
# Scanner les fichiers appsettings
|
|
21
|
+
API_DIR=$(find . -type d -name "*.Api" | head -1)
|
|
22
|
+
[ -z "$API_DIR" ] && API_DIR="src/SmartStack.Api"
|
|
23
|
+
|
|
24
|
+
APPSETTINGS_FILES=$(find "$API_DIR" -maxdepth 1 -name "appsettings*.json" 2>/dev/null | sort)
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### 0.2 Selectionner l'environnement
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
# Priorite: --env flag > appsettings.Local.json > erreur
|
|
31
|
+
ENV_FLAG="${1#--env=}" # Extraire valeur si --env=Development
|
|
32
|
+
|
|
33
|
+
if [ -n "$ENV_FLAG" ] && [ "$ENV_FLAG" != "$1" ]; then
|
|
34
|
+
SELECTED_ENV="appsettings.${ENV_FLAG}.json"
|
|
35
|
+
elif [ -f "$API_DIR/appsettings.Local.json" ]; then
|
|
36
|
+
SELECTED_ENV="appsettings.Local.json"
|
|
37
|
+
else
|
|
38
|
+
echo "ERROR: Aucun fichier appsettings trouve"
|
|
39
|
+
exit 1
|
|
40
|
+
fi
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### 0.3 Extraire et afficher la connexion
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
# Extraire connection string
|
|
47
|
+
CONNECTION_STRING=$(powershell -Command "
|
|
48
|
+
\$json = Get-Content '$API_DIR/$SELECTED_ENV' | ConvertFrom-Json
|
|
49
|
+
\$json.ConnectionStrings.DefaultConnection
|
|
50
|
+
")
|
|
51
|
+
|
|
52
|
+
DATABASE_NAME=$(echo "$CONNECTION_STRING" | grep -oP 'Database=\K[^;]+')
|
|
53
|
+
SERVER_NAME=$(echo "$CONNECTION_STRING" | grep -oP 'Server=\K[^;]+')
|
|
54
|
+
CONNECTION_MASKED=$(echo "$CONNECTION_STRING" | sed 's/Password=[^;]*/Password=****/g')
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### 0.4 Afficher le resume
|
|
58
|
+
|
|
59
|
+
```
|
|
60
|
+
================================================================================
|
|
61
|
+
EF CORE - DATABASE DEPLOY
|
|
62
|
+
================================================================================
|
|
63
|
+
|
|
64
|
+
FICHIERS DISPONIBLES:
|
|
65
|
+
{liste des appsettings detectes}
|
|
66
|
+
|
|
67
|
+
ENVIRONNEMENT: {SELECTED_ENV}
|
|
68
|
+
|
|
69
|
+
CONNEXION CIBLE:
|
|
70
|
+
Server: {SERVER_NAME}
|
|
71
|
+
Database: {DATABASE_NAME}
|
|
72
|
+
String: {CONNECTION_MASKED}
|
|
73
|
+
|
|
74
|
+
================================================================================
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 0.5 Protection Production
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
# Bloquer si Production
|
|
81
|
+
if [[ "$SELECTED_ENV" == *"Production"* ]]; then
|
|
82
|
+
echo "BLOQUE: Environnement Production detecte"
|
|
83
|
+
echo " Utilisez un environnement non-production"
|
|
84
|
+
exit 1
|
|
85
|
+
fi
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## STEP 1: Detecter le projet EF Core
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
# Detect EF Core project
|
|
94
|
+
CSPROJ=$(find . -name "*.csproj" -exec grep -l "Microsoft.EntityFrameworkCore" {} \; | head -1)
|
|
95
|
+
if [ -z "$CSPROJ" ]; then
|
|
96
|
+
echo "ERROR: No EF Core project detected"
|
|
97
|
+
exit 1
|
|
98
|
+
fi
|
|
99
|
+
|
|
100
|
+
PROJECT_DIR=$(dirname "$CSPROJ")
|
|
101
|
+
PROJECT_NAME=$(basename "$CSPROJ" .csproj)
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## STEP 2: Check pending migrations
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
cd "$PROJECT_DIR"
|
|
110
|
+
dotnet ef migrations list --json 2>/dev/null | grep -E '"applied": false'
|
|
111
|
+
PENDING_COUNT=$(dotnet ef migrations list --json 2>/dev/null | grep -c '"applied": false' || echo "0")
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
**Display status:**
|
|
115
|
+
|
|
116
|
+
```
|
|
117
|
+
================================================================================
|
|
118
|
+
EF CORE - DATABASE DEPLOY
|
|
119
|
+
================================================================================
|
|
120
|
+
|
|
121
|
+
PROJECT: {PROJECT_NAME}
|
|
122
|
+
CONFIG: appsettings.Local.json
|
|
123
|
+
MIGRATIONS: {PENDING_COUNT} pending
|
|
124
|
+
|
|
125
|
+
================================================================================
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## STEP 3: Apply migrations
|
|
131
|
+
|
|
132
|
+
```bash
|
|
133
|
+
# Apply migrations with local config
|
|
134
|
+
dotnet ef database update --configuration Release --verbose
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
**If connection error:**
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
⚠️ Database connection error
|
|
141
|
+
|
|
142
|
+
CHECKS:
|
|
143
|
+
1. Is SQL Server running?
|
|
144
|
+
2. Does the database exist?
|
|
145
|
+
3. Are the credentials correct?
|
|
146
|
+
|
|
147
|
+
USEFUL COMMANDS:
|
|
148
|
+
- Check connection: sqlcmd -S {SERVER} -E
|
|
149
|
+
- Create database: /efcore:db-reset
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## STEP 4: Confirmation
|
|
155
|
+
|
|
156
|
+
```
|
|
157
|
+
================================================================================
|
|
158
|
+
DEPLOYMENT COMPLETE
|
|
159
|
+
================================================================================
|
|
160
|
+
|
|
161
|
+
✓ {N} migration(s) applied
|
|
162
|
+
✓ Database is up to date
|
|
163
|
+
|
|
164
|
+
NEXT COMMANDS:
|
|
165
|
+
/efcore:db-status → Check status
|
|
166
|
+
/efcore:db-seed → Populate test data
|
|
167
|
+
|
|
168
|
+
================================================================================
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## Options
|
|
174
|
+
|
|
175
|
+
| Option | Description |
|
|
176
|
+
|--------|-------------|
|
|
177
|
+
| `--env {name}` | Utiliser appsettings.{name}.json (ex: --env Development) |
|
|
178
|
+
| `--verbose` | Display SQL details |
|
|
179
|
+
| `--connection "..."` | Override connection string |
|
|
180
|
+
| `--context {name}` | Specify DbContext if multiple |
|
|
181
|
+
|
|
182
|
+
## Exemples
|
|
183
|
+
|
|
184
|
+
```bash
|
|
185
|
+
# Deployer sur la base locale (defaut)
|
|
186
|
+
/efcore:db-deploy
|
|
187
|
+
|
|
188
|
+
# Deployer sur l'environnement Development
|
|
189
|
+
/efcore:db-deploy --env Development
|
|
190
|
+
|
|
191
|
+
# Deployer sur Staging
|
|
192
|
+
/efcore:db-deploy --env Staging
|
|
193
|
+
```
|