swallowkit 2.0.0-alpha.8 → 2.0.0-alpha.9

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.
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1625,10 +1625,12 @@ ${pmCmd.exec} swallowkit provision --resource-group <rg-name>
1625
1625
 
1626
1626
  This creates:
1627
1627
  - Static Web App (\`swa-${projectName}\`)
1628
- - Azure Functions (\`func-${projectName}\`)
1629
- - Cosmos DB (\`cosmos-${projectName}\`)
1628
+ - Azure Functions (\`func-${projectName}-<suffix>\`)
1629
+ - Cosmos DB (\`cosmos-${projectName}-<suffix>\`)
1630
1630
  - Storage Account
1631
1631
 
1632
+ Cosmos DB and Function App names must be globally unique, so they include a short suffix derived from the resource group. When provisioning completes, the command prints the actual resource names and the CI/CD settings to use.
1633
+
1632
1634
  You will be prompted to select Azure regions:
1633
1635
  1. **Primary location**: For Functions and Cosmos DB (default: Japan East)
1634
1636
  2. **Static Web App location**: Limited availability (default: East Asia)
@@ -1644,12 +1646,12 @@ ${cicdChoice === 'github' ? `#### GitHub Actions
1644
1646
 
1645
1647
  2. Get Function App publish profile:
1646
1648
  \`\`\`bash
1647
- az webapp deployment list-publishing-profiles --name func-${projectName} --resource-group <rg-name> --xml
1649
+ az webapp deployment list-publishing-profiles --name <functions-app-name> --resource-group <rg-name> --xml
1648
1650
  \`\`\`
1649
1651
 
1650
1652
  3. Add secrets to GitHub repository:
1651
1653
  - \`AZURE_STATIC_WEB_APPS_API_TOKEN\`: SWA deployment token (from step 1)
1652
- - \`AZURE_FUNCTIONAPP_NAME\`: \`func-${projectName}\`
1654
+ - \`AZURE_FUNCTIONAPP_NAME\`: Functions app name printed by \`swallowkit provision\` (\`func-${projectName}-<suffix>\`)
1653
1655
  - \`AZURE_FUNCTIONAPP_PUBLISH_PROFILE\`: Functions publish profile (from step 2)
1654
1656
 
1655
1657
  4. Push to \`main\` branch to trigger deployment (or use **Actions** → **Run workflow** for manual deployment)` : cicdChoice === 'azure' ? `#### Azure Pipelines
@@ -1671,8 +1673,10 @@ az staticwebapp deploy --name swa-${projectName} --resource-group <rg-name> --ap
1671
1673
  \`\`\`bash
1672
1674
  cd functions
1673
1675
  ${pmCmd.run} build
1674
- func azure functionapp publish func-${projectName}
1675
- \`\`\``}
1676
+ func azure functionapp publish <functions-app-name>
1677
+ \`\`\`
1678
+
1679
+ Use the Functions app name printed by \`swallowkit provision\`.`}
1676
1680
 
1677
1681
  ## 🔧 Available Commands
1678
1682
 
@@ -1821,6 +1825,14 @@ param cosmosDbMode string = '${azureConfig.cosmosDbMode}'
1821
1825
  @description('Enable VNet integration')
1822
1826
  param enableVNet bool = ${enableVNet}
1823
1827
 
1828
+ // Cosmos DB account and Function App names are globally unique across Azure.
1829
+ // A suffix derived from the resource group keeps names stable for redeployments
1830
+ // to the same resource group while avoiding collisions with other environments
1831
+ // and with names Azure still reserves after a previous resource group is deleted.
1832
+ var resourceSuffix = take(uniqueString(resourceGroup().id, projectName), 6)
1833
+ var cosmosAccountName = 'cosmos-\${take(toLower(projectName), 30)}-\${resourceSuffix}'
1834
+ var functionsAppName = 'func-\${take(projectName, 40)}-\${resourceSuffix}'
1835
+
1824
1836
  // Shared Log Analytics Workspace (in Functions region for data residency)
1825
1837
  module logAnalytics 'modules/loganalytics.bicep' = {
1826
1838
  name: 'logAnalytics'
@@ -1874,7 +1886,7 @@ module vnet 'modules/vnet.bicep' = if (enableVNet) {
1874
1886
  module cosmosDbFreeTier 'modules/cosmosdb-freetier.bicep' = if (cosmosDbMode == 'freetier') {
1875
1887
  name: 'cosmosDb'
1876
1888
  params: {
1877
- accountName: 'cosmos-\${projectName}'
1889
+ accountName: cosmosAccountName
1878
1890
  databaseName: '\${projectName}Database'
1879
1891
  location: location
1880
1892
  publicNetworkAccess: enableVNet ? 'Disabled' : 'Enabled'
@@ -1884,7 +1896,7 @@ module cosmosDbFreeTier 'modules/cosmosdb-freetier.bicep' = if (cosmosDbMode ==
1884
1896
  module cosmosDbServerless 'modules/cosmosdb-serverless.bicep' = if (cosmosDbMode == 'serverless') {
1885
1897
  name: 'cosmosDb'
1886
1898
  params: {
1887
- accountName: 'cosmos-\${projectName}'
1899
+ accountName: cosmosAccountName
1888
1900
  databaseName: '\${projectName}Database'
1889
1901
  location: location
1890
1902
  publicNetworkAccess: enableVNet ? 'Disabled' : 'Enabled'
@@ -1908,7 +1920,7 @@ module cosmosPrivateEndpoint 'modules/private-endpoint-cosmos.bicep' = if (enabl
1908
1920
  module functionsFlex 'modules/functions-flex.bicep' = {
1909
1921
  name: 'functionsApp'
1910
1922
  params: {
1911
- name: 'func-\${projectName}'
1923
+ name: functionsAppName
1912
1924
  location: location
1913
1925
  storageAccountName: 'stg\${uniqueString(resourceGroup().id, projectName)}'
1914
1926
  appInsightsConnectionString: appInsightsFunctions.outputs.connectionString
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"migration-generator.d.ts","sourceRoot":"","sources":["../../../src/core/operations/migration-generator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EACL,uBAAuB,EAEvB,iBAAiB,EAKlB,MAAM,uBAAuB,CAAC;AAoG/B,wBAAgB,0BAA0B,CAAC,WAAW,GAAE,MAAsB,GAAG,iBAAiB,CAEjG;AAED,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,MAAM,GAAG,iBAAiB,CAErF;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,GAAE,MAAsB,GAAG,uBAAuB,CA+BrH;AAED,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAC7C,OAAO,GAAE,oBAAyD,GACjE,uBAAuB,GAAG,IAAI,CAkFhC"}
1
+ {"version":3,"file":"migration-generator.d.ts","sourceRoot":"","sources":["../../../src/core/operations/migration-generator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,OAAO,EACL,uBAAuB,EAEvB,iBAAiB,EAKlB,MAAM,uBAAuB,CAAC;AAoG/B,wBAAgB,0BAA0B,CAAC,WAAW,GAAE,MAAsB,GAAG,iBAAiB,CAEjG;AAED,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,MAAM,GAAG,iBAAiB,CAErF;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,GAAE,MAAsB,GAAG,uBAAuB,CA+BrH;AAeD,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAC7C,OAAO,GAAE,oBAAyD,GACjE,uBAAuB,GAAG,IAAI,CAkFhC"}
@@ -148,6 +148,17 @@ param location string
148
148
  fs.writeFileSync(manifestPath, `${JSON.stringify(appendMigration(manifest, migration), null, 2)}\n`, "utf-8");
149
149
  return migration;
150
150
  }
151
+ const SUFFIXED_COSMOS_ACCOUNT_NAME = "'cosmos-${take(toLower(projectName), 30)}-${take(uniqueString(resourceGroup().id, projectName), 6)}'";
152
+ const LEGACY_COSMOS_ACCOUNT_NAME = "'cosmos-${projectName}'";
153
+ // Projects initialized before resource-group suffixes keep their original
154
+ // account name so model migrations target the account their baseline created.
155
+ function cosmosAccountNameExpression(session) {
156
+ const mainBicep = path.join(session.rootDirectory, "infra", "main.bicep");
157
+ if (session.fileExists(mainBicep) && /var\s+resourceSuffix\s*=/.test(session.readFile(mainBicep))) {
158
+ return SUFFIXED_COSMOS_ACCOUNT_NAME;
159
+ }
160
+ return LEGACY_COSMOS_ACCOUNT_NAME;
161
+ }
151
162
  function generateModelContainerMigration(model, session = new file_session_1.FileOperationSession("commit")) {
152
163
  const manifest = readManifestForSession(session);
153
164
  const existing = manifest.migrations.find((migration) => migration.source === "model" && migration.sourceModel === model.name);
@@ -168,7 +179,7 @@ param projectName string
168
179
  param location string
169
180
 
170
181
  resource cosmosAccount 'Microsoft.DocumentDB/databaseAccounts@2023-11-15' existing = {
171
- name: 'cosmos-\${projectName}'
182
+ name: ${cosmosAccountNameExpression(session)}
172
183
  }
173
184
 
174
185
  resource database 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2023-11-15' existing = {
@@ -1 +1 @@
1
- {"version":3,"file":"migration-generator.js","sourceRoot":"","sources":["../../../src/core/operations/migration-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migration-generator.js","sourceRoot":"","sources":["../../../src/core/operations/migration-generator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "swallowkit",
3
- "version": "2.0.0-alpha.8",
3
+ "version": "2.0.0-alpha.9",
4
4
  "description": "Type-safe schema-driven development toolkit for Next.js and React applications on Azure",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -26,6 +26,8 @@ import {
26
26
  getStaticWebAppSku,
27
27
  withNpmLockfileSafeManifests,
28
28
  } from "../cli/commands/init";
29
+ import { generateModelContainerMigration, initializeLegacyMigrations } from "../core/operations/migration-generator";
30
+ import { FileOperationSession } from "../core/operations/file-session";
29
31
 
30
32
  describe("injectSwallowKitNextConfig", () => {
31
33
  it("adds standalone settings without deprecated experimental options", () => {
@@ -374,6 +376,63 @@ describe("Infrastructure generation", () => {
374
376
  });
375
377
  },
376
378
  );
379
+
380
+ it("derives globally unique Cosmos DB and Function App names from the resource group", async () => {
381
+ const projectDir = fs.mkdtempSync(path.join(os.tmpdir(), "swallowkit-infra-names-"));
382
+ try {
383
+ await createInfrastructure(projectDir, "sample-app", {
384
+ cosmosDbMode: "freetier", vnetOption: "none", swaPlan: "free",
385
+ }, "typescript");
386
+ const mainBicep = fs.readFileSync(path.join(projectDir, "infra", "main.bicep"), "utf-8");
387
+
388
+ expect(mainBicep).toContain("var resourceSuffix = take(uniqueString(resourceGroup().id, projectName), 6)");
389
+ expect(mainBicep).toContain("var cosmosAccountName = 'cosmos-${take(toLower(projectName), 30)}-${resourceSuffix}'");
390
+ expect(mainBicep).toContain("var functionsAppName = 'func-${take(projectName, 40)}-${resourceSuffix}'");
391
+ expect(mainBicep.match(/accountName: cosmosAccountName/g)).toHaveLength(2);
392
+ expect(mainBicep).toContain("name: functionsAppName");
393
+ expect(mainBicep).not.toContain("'cosmos-${projectName}'");
394
+ expect(mainBicep).not.toContain("'func-${projectName}'");
395
+ // Azure limits: Cosmos DB account <= 44 chars, Function App <= 60 chars.
396
+ expect("cosmos-".length + 30 + 1 + 6).toBeLessThanOrEqual(44);
397
+ expect("func-".length + 40 + 1 + 6).toBeLessThanOrEqual(60);
398
+
399
+ const migration = generateModelContainerMigration(
400
+ { name: "Todo", partitionKey: "/id" },
401
+ new FileOperationSession("commit", projectDir)
402
+ );
403
+ const migrationBicep = fs.readFileSync(path.join(projectDir, migration!.template), "utf-8");
404
+ expect(migrationBicep).toContain(
405
+ "name: 'cosmos-${take(toLower(projectName), 30)}-${take(uniqueString(resourceGroup().id, projectName), 6)}'"
406
+ );
407
+ } finally {
408
+ fs.rmSync(projectDir, { recursive: true, force: true });
409
+ }
410
+ });
411
+
412
+ it("keeps the original Cosmos DB account name in model migrations for projects without suffixed names", async () => {
413
+ const projectDir = fs.mkdtempSync(path.join(os.tmpdir(), "swallowkit-infra-legacy-names-"));
414
+ try {
415
+ await createInfrastructure(projectDir, "sample-app", {
416
+ cosmosDbMode: "freetier", vnetOption: "none", swaPlan: "free",
417
+ }, "typescript");
418
+ const mainPath = path.join(projectDir, "infra", "main.bicep");
419
+ const legacyMain = fs.readFileSync(mainPath, "utf-8")
420
+ .replace(/^var (resourceSuffix|cosmosAccountName|functionsAppName) = .*\r?\n/gm, "")
421
+ .replace(/accountName: cosmosAccountName/g, "accountName: 'cosmos-${projectName}'")
422
+ .replace("name: functionsAppName", "name: 'func-${projectName}'");
423
+ fs.writeFileSync(mainPath, legacyMain);
424
+ initializeLegacyMigrations(projectDir);
425
+
426
+ const migration = generateModelContainerMigration(
427
+ { name: "Todo", partitionKey: "/id" },
428
+ new FileOperationSession("commit", projectDir)
429
+ );
430
+ const migrationBicep = fs.readFileSync(path.join(projectDir, migration!.template), "utf-8");
431
+ expect(migrationBicep).toContain("name: 'cosmos-${projectName}'");
432
+ } finally {
433
+ fs.rmSync(projectDir, { recursive: true, force: true });
434
+ }
435
+ });
377
436
  });
378
437
 
379
438
  describe("GitHub Actions workflow generation", () => {
@@ -1825,10 +1825,12 @@ ${pmCmd.exec} swallowkit provision --resource-group <rg-name>
1825
1825
 
1826
1826
  This creates:
1827
1827
  - Static Web App (\`swa-${projectName}\`)
1828
- - Azure Functions (\`func-${projectName}\`)
1829
- - Cosmos DB (\`cosmos-${projectName}\`)
1828
+ - Azure Functions (\`func-${projectName}-<suffix>\`)
1829
+ - Cosmos DB (\`cosmos-${projectName}-<suffix>\`)
1830
1830
  - Storage Account
1831
1831
 
1832
+ Cosmos DB and Function App names must be globally unique, so they include a short suffix derived from the resource group. When provisioning completes, the command prints the actual resource names and the CI/CD settings to use.
1833
+
1832
1834
  You will be prompted to select Azure regions:
1833
1835
  1. **Primary location**: For Functions and Cosmos DB (default: Japan East)
1834
1836
  2. **Static Web App location**: Limited availability (default: East Asia)
@@ -1844,12 +1846,12 @@ ${cicdChoice === 'github' ? `#### GitHub Actions
1844
1846
 
1845
1847
  2. Get Function App publish profile:
1846
1848
  \`\`\`bash
1847
- az webapp deployment list-publishing-profiles --name func-${projectName} --resource-group <rg-name> --xml
1849
+ az webapp deployment list-publishing-profiles --name <functions-app-name> --resource-group <rg-name> --xml
1848
1850
  \`\`\`
1849
1851
 
1850
1852
  3. Add secrets to GitHub repository:
1851
1853
  - \`AZURE_STATIC_WEB_APPS_API_TOKEN\`: SWA deployment token (from step 1)
1852
- - \`AZURE_FUNCTIONAPP_NAME\`: \`func-${projectName}\`
1854
+ - \`AZURE_FUNCTIONAPP_NAME\`: Functions app name printed by \`swallowkit provision\` (\`func-${projectName}-<suffix>\`)
1853
1855
  - \`AZURE_FUNCTIONAPP_PUBLISH_PROFILE\`: Functions publish profile (from step 2)
1854
1856
 
1855
1857
  4. Push to \`main\` branch to trigger deployment (or use **Actions** → **Run workflow** for manual deployment)` : cicdChoice === 'azure' ? `#### Azure Pipelines
@@ -1871,8 +1873,10 @@ az staticwebapp deploy --name swa-${projectName} --resource-group <rg-name> --ap
1871
1873
  \`\`\`bash
1872
1874
  cd functions
1873
1875
  ${pmCmd.run} build
1874
- func azure functionapp publish func-${projectName}
1875
- \`\`\``}
1876
+ func azure functionapp publish <functions-app-name>
1877
+ \`\`\`
1878
+
1879
+ Use the Functions app name printed by \`swallowkit provision\`.`}
1876
1880
 
1877
1881
  ## 🔧 Available Commands
1878
1882
 
@@ -2049,6 +2053,14 @@ param cosmosDbMode string = '${azureConfig.cosmosDbMode}'
2049
2053
  @description('Enable VNet integration')
2050
2054
  param enableVNet bool = ${enableVNet}
2051
2055
 
2056
+ // Cosmos DB account and Function App names are globally unique across Azure.
2057
+ // A suffix derived from the resource group keeps names stable for redeployments
2058
+ // to the same resource group while avoiding collisions with other environments
2059
+ // and with names Azure still reserves after a previous resource group is deleted.
2060
+ var resourceSuffix = take(uniqueString(resourceGroup().id, projectName), 6)
2061
+ var cosmosAccountName = 'cosmos-\${take(toLower(projectName), 30)}-\${resourceSuffix}'
2062
+ var functionsAppName = 'func-\${take(projectName, 40)}-\${resourceSuffix}'
2063
+
2052
2064
  // Shared Log Analytics Workspace (in Functions region for data residency)
2053
2065
  module logAnalytics 'modules/loganalytics.bicep' = {
2054
2066
  name: 'logAnalytics'
@@ -2102,7 +2114,7 @@ module vnet 'modules/vnet.bicep' = if (enableVNet) {
2102
2114
  module cosmosDbFreeTier 'modules/cosmosdb-freetier.bicep' = if (cosmosDbMode == 'freetier') {
2103
2115
  name: 'cosmosDb'
2104
2116
  params: {
2105
- accountName: 'cosmos-\${projectName}'
2117
+ accountName: cosmosAccountName
2106
2118
  databaseName: '\${projectName}Database'
2107
2119
  location: location
2108
2120
  publicNetworkAccess: enableVNet ? 'Disabled' : 'Enabled'
@@ -2112,7 +2124,7 @@ module cosmosDbFreeTier 'modules/cosmosdb-freetier.bicep' = if (cosmosDbMode ==
2112
2124
  module cosmosDbServerless 'modules/cosmosdb-serverless.bicep' = if (cosmosDbMode == 'serverless') {
2113
2125
  name: 'cosmosDb'
2114
2126
  params: {
2115
- accountName: 'cosmos-\${projectName}'
2127
+ accountName: cosmosAccountName
2116
2128
  databaseName: '\${projectName}Database'
2117
2129
  location: location
2118
2130
  publicNetworkAccess: enableVNet ? 'Disabled' : 'Enabled'
@@ -2136,7 +2148,7 @@ module cosmosPrivateEndpoint 'modules/private-endpoint-cosmos.bicep' = if (enabl
2136
2148
  module functionsFlex 'modules/functions-flex.bicep' = {
2137
2149
  name: 'functionsApp'
2138
2150
  params: {
2139
- name: 'func-\${projectName}'
2151
+ name: functionsAppName
2140
2152
  location: location
2141
2153
  storageAccountName: 'stg\${uniqueString(resourceGroup().id, projectName)}'
2142
2154
  appInsightsConnectionString: appInsightsFunctions.outputs.connectionString
@@ -152,6 +152,19 @@ param location string
152
152
  return migration;
153
153
  }
154
154
 
155
+ const SUFFIXED_COSMOS_ACCOUNT_NAME = "'cosmos-${take(toLower(projectName), 30)}-${take(uniqueString(resourceGroup().id, projectName), 6)}'";
156
+ const LEGACY_COSMOS_ACCOUNT_NAME = "'cosmos-${projectName}'";
157
+
158
+ // Projects initialized before resource-group suffixes keep their original
159
+ // account name so model migrations target the account their baseline created.
160
+ function cosmosAccountNameExpression(session: FileOperationSession): string {
161
+ const mainBicep = path.join(session.rootDirectory, "infra", "main.bicep");
162
+ if (session.fileExists(mainBicep) && /var\s+resourceSuffix\s*=/.test(session.readFile(mainBicep))) {
163
+ return SUFFIXED_COSMOS_ACCOUNT_NAME;
164
+ }
165
+ return LEGACY_COSMOS_ACCOUNT_NAME;
166
+ }
167
+
155
168
  export function generateModelContainerMigration(
156
169
  model: { name: string; partitionKey: string },
157
170
  session: FileOperationSession = new FileOperationSession("commit")
@@ -175,7 +188,7 @@ param projectName string
175
188
  param location string
176
189
 
177
190
  resource cosmosAccount 'Microsoft.DocumentDB/databaseAccounts@2023-11-15' existing = {
178
- name: 'cosmos-\${projectName}'
191
+ name: ${cosmosAccountNameExpression(session)}
179
192
  }
180
193
 
181
194
  resource database 'Microsoft.DocumentDB/databaseAccounts/sqlDatabases@2023-11-15' existing = {