Skip to content
Open
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
2 changes: 2 additions & 0 deletions .github/workflows/copilot-setup-steps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -192,6 +192,8 @@ jobs:

- run: CI=false pnpm run copy-project-files

- run: pnpm run install-agent-skills

- name: create site-config-envs
run: pnpm run create-site-configs-env

Expand Down
25 changes: 19 additions & 6 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@

When running in the cloud/web environment and repo is cloned from scratch, if required you can:

1. Install dependencies
1. Install dependencies (**only** run if not yet done by eg. pipeline setup, check if `node_modules` exists)
- `NODE_USE_ENV_PROXY=1 ./install.sh`
2. Run build for packages you are working on
2. Run build for packages you are working on (**only** run if build file doesn't exist yet, check if `lib` exists in package)
- `pnpm --recursive --filter '<package-name>' run build`

**If Docker is available:**

- You can start the full demo application using dev-pm and access it at localhost
- You can start the full demo application using dev-pm and access it at localhost. Do **not** use docker compose directly, always use dev-pm and start `demo-docker`.

**If Docker is not available:**

Expand Down Expand Up @@ -83,22 +83,35 @@ This repository includes a demo application which is showcasing the libraries.
**Api:**
Demo backend API (NestJS, PostgreSQL)

- Start using `pnpm exec dev-pm @demo-api`
- Start using `pnpm exec dev-pm start @demo-api`
- access at: http://localhost:4000/

**Admin:**
Demo admin app (Vite, React, Apollo)

- Start using `pnpm exec dev-pm @demo-admin`
- Start using `pnpm exec dev-pm start @demo-admin`
- access at: http://localhost:8000/
- Usually Login as "Admin" in the IDP Login Page

**Site:**
Demo frontend site (Next.js)

- Start using `pnpm exec dev-pm @demo-site`
- Start using `pnpm exec dev-pm start @demo-site`
- access at: http://localhost:3000/


### dev-pm

Use dev-pm for managing demo processes:
- command: `pnpm exec -- dev-pm`
- config: `dev-pm.config.ts`

Common commands:
- start script/service: `pnpm exec -- dev-pm start scriptName`
- start group `pnpm exec -- dev-pm start @group`
- view status `pnpm exec -- dev-pm status`
- view logs `pnpm exec -- dev-pm logs --lines 100 scriptName`

## Packages

### Admin (`packages/admin/`)
Expand Down
7 changes: 4 additions & 3 deletions demo/api/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,11 @@
"intl:compile": "pnpm run intl:compile:comet-demo",
"intl:compile:comet-demo": "formatjs compile-folder --format simple --ast lang/comet-demo-lang/api lang-compiled/comet-demo-api",
"intl:extract": "formatjs extract \"src/**/*.ts*\" --ignore '**/*.{test,spec}.{ts,tsx}' --ignore ./**.d.ts --out-file lang-extracted/en.json --format simple --throws",
"lint": "pnpm run api-generator && pnpm run intl:compile && run-p lint:prettier lint:eslint lint:tsc",
"lint:ci": "pnpm run api-generator && pnpm run intl:compile && run-p lint:prettier lint:eslint lint:tsc lint:generated-files-not-modified",
"lint": "pnpm run api-generator && pnpm run intl:compile && run-p lint:prettier lint:eslint lint:tsc lint:api-can-start",
"lint:api-can-start": "MIKRO_ORM_NO_CONNECT=true dotenv -e ../../.env.secrets -e ../../.env.local -e ../../.env -e ../.env.site-configs -- ts-node --transpile-only -r tsconfig-paths/register src/console.ts --help",
"lint:ci": "pnpm run api-generator && pnpm run intl:compile && run-p lint:prettier lint:eslint lint:tsc lint:api-can-start && pnpm run lint:generated-files-not-modified",
"lint:eslint": "eslint --max-warnings 0 src/ '**/*.json' --no-warn-ignored",
"lint:generated-files-not-modified": "git diff --exit-code HEAD -- $(find src -type f -path '*/generated/*')",
"lint:generated-files-not-modified": "git diff --exit-code HEAD -- schema.gql block-meta.json $(find src -type f -path '*/generated/*')",
"lint:prettier": "pnpm exec prettier --check '*.{ts,js,json,md,yml,yaml}'",
"lint:tsc": "tsc --project ./tsconfig.lint.json",
"mikro-orm": "dotenv -e .env.secrets -e .env.local -e .env -e .env.site-configs -- mikro-orm",
Expand Down
1 change: 1 addition & 0 deletions demo/api/src/db/ormconfig.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ export const ormConfig = createOrmConfig(
},
namingStrategy: EntityCaseNamingStrategy,
debug: false,
connect: process.env.MIKRO_ORM_NO_CONNECT !== "true",
dataloader: DataloaderType.ALL,
discovery: {
getMappedType(type: string, platform) {
Expand Down
25 changes: 11 additions & 14 deletions dev-pm.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -195,6 +195,17 @@ export default defineConfig({
group: ["demo-admin", "demo"],
waitOn: ["tcp:$API_PORT"],
},
{
name: "demo-oidc-provider",
script: "pnpm run dev:oidc-provider",
group: ["demo-admin", "demo"],
},
{
name: "demo-oauth2-proxy",
script: "pnpm run dev:oauth2-proxy",
group: ["demo-admin", "demo"],
waitOn: ["tcp:$IDP_PORT", "tcp:$ADMIN_PORT"],
},

//group demo api
{
Expand Down Expand Up @@ -223,20 +234,6 @@ export default defineConfig({
{
name: "demo-api-storybook",
script: "pnpm --filter comet-demo-api run storybook",
group: ["demo-api", "demo"],
},

// group demo login
{
name: "demo-oidc-provider",
script: "pnpm run dev:oidc-provider",
group: ["demo-login", "demo"],
},
{
name: "demo-oauth2-proxy",
script: "pnpm run dev:oauth2-proxy",
group: ["demo-login", "demo"],
waitOn: ["tcp:$IDP_PORT", "tcp:$ADMIN_PORT"],
},

//group demo site
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,8 @@
"browser:demo:admin": "dotenv -- sh -c 'open-cli $ADMIN_URL'",
"browser:demo:site": "dotenv -- sh -c 'open-cli $SITE_URL'",
"browser:demo:jaeger": "dotenv -- sh -c 'open-cli http://localhost:$JAEGER_UI_PORT'",
"setup:ci": "pnpm --filter '@comet/cli' --filter '@comet/eslint-plugin' run build && pnpm run create-site-configs-env && pnpm run copy-project-files",
"install-agent-skills": "pnpm exec comet install-agent-skills --config agent-skills.json",
"setup:ci": "pnpm run copy-project-files",
"setup:download-oauth2-proxy": "dotenv -- sh -c 'pnpm exec comet download-oauth2-proxy -v $OAUTH2_PROXY_VERSION'",
"setup:download-mitmproxy": "dotenv -- sh -c 'pnpm exec comet download-mitmproxy -v $MITMPROXY_VERSION'"
},
Expand Down
Loading