Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added .pnpm-store/v11/index.db
Binary file not shown.
10 changes: 6 additions & 4 deletions apps/api/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@
"prebuild": "pnpm run lint",
"build": "tsgo --build && rolldown -c rolldown.config.ts",
"predev": "pnpm run prepare:deploy && pnpm run sync-local-settings",
"dev": "pnpm exec portless data-access.ownercommunity.localhost --force node start-dev.mjs",
"dev": "pnpm exec portless data-access.ownercommunity.localhost --force node start-dev.ts",
"predev:worktree": "pnpm run prepare:deploy && pnpm run sync-local-settings",
"dev:worktree": "pnpm exec portless data-access.ownercommunity.${WORKTREE_NAME}.localhost --force node start-dev.mjs",
"dev:worktree": "pnpm exec portless data-access.ownercommunity.${WORKTREE_NAME}.localhost --force node start-dev.ts",
"prepare:deploy": "cellix-prepare-func-deploy",
"watch": "tsgo --watch",
"test": "vitest run --silent --reporter=dot",
Expand All @@ -23,8 +23,8 @@
"clean": "rimraf dist deploy",
"prestart": "pnpm run prepare:deploy && pnpm run sync-local-settings",
"start": "func start --typescript --script-root deploy/",
"sync-local-settings": "node scripts/sync-local-settings.mjs",
"azurite": "node start-azurite.mjs"
"sync-local-settings": "node sync-local-settings.ts",
"azurite": "node start-azurite.ts"
},
"dependencies": {
"@azure/functions": "catalog:",
Expand All @@ -48,6 +48,8 @@
"@cellix/config-rolldown": "workspace:*",
"@cellix/config-typescript": "workspace:*",
"@cellix/config-vitest": "workspace:*",
"@cellix/local-dev": "workspace:*",
"@ocom/local-dev-config": "workspace:*",
"@vitest/coverage-istanbul": "catalog:",
"azurite": "^3.35.0",
"rimraf": "catalog:",
Expand Down
63 changes: 0 additions & 63 deletions apps/api/scripts/sync-local-settings.mjs

This file was deleted.

47 changes: 0 additions & 47 deletions apps/api/start-azurite.mjs

This file was deleted.

16 changes: 16 additions & 0 deletions apps/api/start-azurite.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import path from 'node:path';
import { getAzuritePorts, resolveWorkspaceRoot, runAzuriteDev } from '@cellix/local-dev';

const workspaceRoot = resolveWorkspaceRoot();
const worktreeName = process.env['WORKTREE_NAME'];
const ports = getAzuritePorts(worktreeName);
const storageSuffix = worktreeName ? `-${worktreeName}` : '';

runAzuriteDev({
blobPort: ports.blob,
blobLocation: path.join(workspaceRoot, `__blobstorage__${storageSuffix}`),
queuePort: ports.queue,
queueLocation: path.join(workspaceRoot, `__queuestorage__${storageSuffix}`),
tablePort: ports.table,
tableLocation: path.join(workspaceRoot, `__tablestorage__${storageSuffix}`),
});
47 changes: 0 additions & 47 deletions apps/api/start-dev.mjs

This file was deleted.

3 changes: 3 additions & 0 deletions apps/api/start-dev.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
import { runAzureFunctionsDev } from '@cellix/local-dev';

runAzureFunctionsDev();
64 changes: 64 additions & 0 deletions apps/api/sync-local-settings.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
import { existsSync } from 'node:fs';
import path from 'node:path';
import { buildAzuriteConnectionString, getAzuritePorts, getMongoPort, replaceUrlPort, resolveWorkspaceRoot, syncJsonFile } from '@cellix/local-dev';
import { buildOcomUrls } from '@ocom/local-dev-config';

const workspaceRoot = resolveWorkspaceRoot();
const appDir = process.cwd();
const env = process.env;
const isE2E = ['1', 'true', 'yes'].includes((env['E2E'] ?? '').toLowerCase());
const localSettingsPath = path.join(appDir, 'local.settings.json');
const e2eLocalSettingsPath = path.join(appDir, 'local-settings.e2e.json');
const targetPath = path.join(appDir, 'deploy', 'local.settings.json');

if (!isE2E) {
if (!existsSync(localSettingsPath)) {
process.exit(0);
}

syncJsonFile({
sourcePath: localSettingsPath,
targetPath,
});
process.exit(0);
}

const urls = buildOcomUrls({ env, workspaceRoot });
const worktreeName = env['WORKTREE_NAME'];
const ports = getAzuritePorts(worktreeName);

syncJsonFile({
sourcePath: e2eLocalSettingsPath,
targetPath,
transform: (document) => {
const settings = document;
const values = { ...(settings.Values ?? {}) };
const accountName = String(values['STORAGE_ACCOUNT_NAME'] ?? '');
const accountKey = String(values['STORAGE_ACCOUNT_KEY'] ?? '');

values['ACCOUNT_PORTAL_OIDC_ISSUER'] = urls.mockCommunityAuthorityUrl;
values['ACCOUNT_PORTAL_OIDC_ENDPOINT'] = urls.mockCommunityJwksUrl;
values['STAFF_PORTAL_OIDC_ISSUER'] = urls.mockStaffAuthorityUrl;
values['STAFF_PORTAL_OIDC_ENDPOINT'] = urls.mockStaffJwksUrl;

if (accountName && accountKey && worktreeName) {
const azuriteConnectionString = buildAzuriteConnectionString({
accountKey,
accountName,
ports,
});
values['AZURE_STORAGE_CONNECTION_STRING'] = azuriteConnectionString;
values['AzureWebJobsStorage'] = azuriteConnectionString;
}

const cosmosConnectionString = env['COSMOSDB_CONNECTION_STRING'] ?? values['COSMOSDB_CONNECTION_STRING'];
if (typeof cosmosConnectionString === 'string' && cosmosConnectionString) {
values['COSMOSDB_CONNECTION_STRING'] = worktreeName ? replaceUrlPort(cosmosConnectionString, getMongoPort(worktreeName)) : cosmosConnectionString;
}

return {
...settings,
Values: values,
};
},
});
2 changes: 1 addition & 1 deletion apps/api/turbo.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"build": {
"cache": true,
"dependsOn": ["^build", "//#gen"],
"inputs": ["$TURBO_EXTENDS$", "rolldown.config.ts", "host.json", "$TURBO_ROOT$/scripts/local-dev/**"],
"inputs": ["$TURBO_EXTENDS$", "rolldown.config.ts", "host.json"],
"outputs": ["$TURBO_EXTENDS$", "deploy/**"]
},
"dev": {
Expand Down
5 changes: 3 additions & 2 deletions apps/docs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
"private": true,
"scripts": {
"docusaurus": "docusaurus",
"dev": "pnpm exec portless docs.ownercommunity.localhost --force node start-dev.mjs",
"dev:worktree": "pnpm exec portless docs.ownercommunity.${WORKTREE_NAME}.localhost --force node start-dev.mjs",
"dev": "pnpm exec portless docs.ownercommunity.localhost --force node start-dev.ts",
"dev:worktree": "pnpm exec portless docs.ownercommunity.${WORKTREE_NAME}.localhost --force node start-dev.ts",
"start": "docusaurus start --port 3001",
"build": "docusaurus build",
"swizzle": "docusaurus swizzle",
Expand All @@ -32,6 +32,7 @@
"devDependencies": {
"@cellix/config-typescript": "workspace:*",
"@cellix/config-vitest": "workspace:*",
"@cellix/local-dev": "workspace:*",
"@docusaurus/module-type-aliases": "3.9.2",
"@docusaurus/tsconfig": "3.9.2",
"@docusaurus/types": "3.9.2",
Expand Down
10 changes: 0 additions & 10 deletions apps/docs/start-dev.mjs

This file was deleted.

3 changes: 3 additions & 0 deletions apps/docs/start-dev.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
import { runDocusaurusDev } from '@cellix/local-dev';

runDocusaurusDev();
4 changes: 2 additions & 2 deletions apps/docs/turbo.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@
"dependsOn": [],
"persistent": true,
"interruptible": false,
"inputs": [".env", "package.json", "start-dev.mjs", "docusaurus.config.ts", "sidebars.ts", "tsconfig.json"]
"inputs": [".env", "package.json", "docusaurus.config.ts", "sidebars.ts", "tsconfig.json"]
},
"dev:worktree": {
"dependsOn": [],
"persistent": true,
"interruptible": false,
"inputs": [".env", "package.json", "start-dev.mjs", "docusaurus.config.ts", "sidebars.ts", "tsconfig.json"]
"inputs": [".env", "package.json", "docusaurus.config.ts", "sidebars.ts", "tsconfig.json"]
},
"test": {
"inputs": ["$TURBO_EXTENDS$", "!docs/**", "!blog/**", "!static/**"]
Expand Down
6 changes: 3 additions & 3 deletions apps/server-mongodb-memory-mock/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,17 +11,17 @@
"format": "biome format --write",
"format:check": "biome format .",
"start": "node dist/index.js",
"dev": "tsx src/index.ts",
"dev:worktree": "node start-mongo.mjs"
"dev": "node start-dev.ts",
"dev:worktree": "node start-dev.ts"
},
"dependencies": {
"@cellix/server-mongodb-memory-mock-seedwork": "workspace:*",
"dotenv": "^16.4.5"
},
"devDependencies": {
"@cellix/local-dev": "workspace:*",
"@cellix/config-typescript": "workspace:*",
"rimraf": "catalog:",
"tsx": "catalog:",
"typescript": "catalog:"
}
}
8 changes: 8 additions & 0 deletions apps/server-mongodb-memory-mock/start-dev.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import { getMongoPort, runTsxDev } from '@cellix/local-dev';

runTsxDev({
env: {
...process.env,
PORT: String(getMongoPort(process.env['WORKTREE_NAME'])),
},
});
12 changes: 0 additions & 12 deletions apps/server-mongodb-memory-mock/start-mongo.mjs

This file was deleted.

Loading