-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathpackage.json
More file actions
95 lines (95 loc) · 6.58 KB
/
package.json
File metadata and controls
95 lines (95 loc) · 6.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
{
"name": "crowd-vision",
"private": true,
"workspaces": [
"client",
"server/*"
],
"scripts": {
"// --- ENVIRONMENT ---": "",
"env:create": "node scripts/create.js",
"env:admin": "npm run env:create && node scripts/admin.js",
"env:vapid": "npm run env:create && node scripts/vapid.js",
"env:token": "npm run env:create && node scripts/token.js",
"env:config": "npm run env:create && node scripts/config.js",
"env:setup": "npm run env:vapid && npm run env:token && npm run env:config && npm run env:admin",
"// DOCKER CONFIGURATION ---": "",
"docker:dev": "npm run env:setup && docker compose -f docker-compose.yml -f docker-compose.dbs.yml -f docker-compose.services.yml -f docker-compose.simulators.yml -f docker-compose.client.yml -f docker-compose.interfaces.yml -f docker-compose.dev.yml --profile dev up --watch --build",
"docker:start": "npm run env:setup && docker compose -f docker-compose.yml -f docker-compose.dbs.yml -f docker-compose.services.yml -f docker-compose.simulators.yml -f docker-compose.client.yml -f docker-compose.interfaces.yml up --build -d",
"docker:down": "docker compose -f docker-compose.yml -f docker-compose.dbs.yml -f docker-compose.services.yml -f docker-compose.simulators.yml -f docker-compose.client.yml -f docker-compose.interfaces.yml --profile dev down --remove-orphans",
"docker:logs": "docker compose -f docker-compose.yml -f docker-compose.dbs.yml -f docker-compose.services.yml -f docker-compose.simulators.yml -f docker-compose.client.yml -f docker-compose.interfaces.yml --profile dev logs -f",
"// KUBERNETES CONFIGURATION ---": "",
"k8s:ingress:nginx": "kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.12.0/deploy/static/provider/cloud/deploy.yaml",
"k8s:wait:ingress": "kubectl wait --namespace ingress-nginx --for=condition=ready pod --selector=app.kubernetes.io/component=controller --timeout=120s",
"k8s:build:client": "docker build -t ghcr.io/nickghignatti/crowdvision-client:latest ./client",
"k8s:build:auth": "docker build -t ghcr.io/nickghignatti/crowdvision-auth:latest ./server/auth-service",
"k8s:build:agent": "docker build -t ghcr.io/nickghignatti/crowdvision-agent:latest ./server/agent-service",
"k8s:build:notification": "docker build -t ghcr.io/nickghignatti/crowdvision-notification:latest ./server/notification-service",
"k8s:build:sensor": "docker build -t ghcr.io/nickghignatti/crowdvision-sensor:latest ./server/sensor-service",
"k8s:build:simulator": "docker build -t ghcr.io/nickghignatti/crowdvision-simulator:latest ./server/sensor-simulator",
"k8s:build:socket": "docker build -t ghcr.io/nickghignatti/crowdvision-socket:latest ./server/socket-service",
"k8s:build:twin": "docker build -t ghcr.io/nickghignatti/crowdvision-twin:latest ./server/twin-service",
"k8s:build": "concurrently \"npm run k8s:build:client\" \"npm run k8s:build:auth\" \"npm run k8s:build:agent\" \"npm run k8s:build:notification\" \"npm run k8s:build:sensor\" \"npm run k8s:build:simulator\" \"npm run k8s:build:socket\" \"npm run k8s:build:twin\"",
"k8s:deploy:namespace": "kubectl apply -f ./k8s/namespace.yml && kubectl config set-context --current --namespace=crowdvision",
"k8s:deploy:configmaps": "kubectl apply -f ./k8s/configmaps/",
"k8s:deploy:secrets": "kubectl apply -f ./k8s/secrets/",
"k8s:deploy:states": "kubectl apply -f ./k8s/stateful/",
"k8s:deploy:deployments": "kubectl apply -f ./k8s/deployments/",
"k8s:deploy:ingress": "kubectl apply -f ./k8s/ingress.yml",
"k8s:deploy": "npm run k8s:deploy:namespace && npm run k8s:deploy:configmaps && npm run k8s:deploy:secrets && npm run k8s:deploy:states && npm run k8s:deploy:deployments && npm run k8s:deploy:ingress",
"k8s:update": "npm run k8s:build && kubectl rollout restart deployment -n crowdvision",
"k8s:up:dev": "npm run k8s:ingress:nginx && npm run k8s:wait:ingress && npm run k8s:build && npm run k8s:deploy",
"k8s:up:prod": "npm run k8s:ingress:nginx && npm run k8s:wait:ingress && npm run k8s:deploy",
"// --- DATABASE ---": "",
"db:clear:auth": "docker compose -f docker-compose.yml -f docker-compose.dbs.yml exec auth-db mongosh authdb --eval \"db.dropDatabase()\"",
"db:clear:twin": "docker compose -f docker-compose.yml -f docker-compose.dbs.yml exec twin-db mongosh twindb --eval \"db.dropDatabase()\"",
"db:clear:notification": "docker compose -f docker-compose.yml -f docker-compose.dbs.yml exec notification-db mongosh notificationdb --eval \"db.dropDatabase()\"",
"db:clear": "npm run db:clear:auth && npm run db:clear:twin && npm run db:clear:notification",
"// --- DOCUMENTATION ---": "",
"docs:landing": "http-server landing-page -p 8000 -c-1 --cors",
"docs:build:user": "quarkdown c documentation/user/main.qd --out landing-page/user",
"docs:build:dev": "quarkdown c documentation/developer/main.qd --out landing-page/dev",
"docs": "npm run docs:build:user && npm run docs:build:dev && npm run docs:landing",
"// --- TESTING ---": "",
"test:auth": "cd server/auth-service && npm test",
"test:twin": "cd server/twin-service && npm test",
"test:notification": "cd server/notification-service && npm test",
"test:socket": "cd server/socket-service && npm test",
"test:sensor": "cd server/sensor-service && npm test",
"test:client": "cd client && npm run test:unit",
"test": "concurrently \"npm run test:auth\" \"npm run test:twin\" \"npm run test:notification\" \"npm run test:sensor\" \"npm run test:client\" \"npm run test:socket\"",
"// --- LINTING ---": "",
"lint": "npm run lint --workspaces --if-present",
"lint:fix": "npm run lint:fix --workspaces --if-present",
"// --- UTILITIES ---": "",
"provision:admin": "node scripts/provision.js",
"// --- RELEASE ---": ""
},
"devDependencies": {
"@eslint/js": "^9.39.1",
"@semantic-release/changelog": "^6.0.0",
"@semantic-release/exec": "^6.0.0",
"@semantic-release/git": "^10.0.0",
"@semantic-release/github": "^10.0.0",
"@vitest/eslint-plugin": "^1.5.0",
"@vue/eslint-config-prettier": "^10.2.0",
"@vue/eslint-config-typescript": "^14.6.0",
"concurrently": "^9.2.1",
"eslint": "^9.39.1",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-playwright": "^2.3.0",
"eslint-plugin-vue": "~10.5.1",
"http-server": "^14.1.1",
"globals": "^17.5.0",
"lerna": "^9.0.7",
"nodemon": "^3.1.11",
"prettier": "3.6.2",
"typescript": "~5.9.0",
"typescript-eslint": "^8.59.0",
"shx": "^0.4.0"
},
"overrides": {
"brace-expansion": "^5.0.5",
"picomatch": "^4.0.4"
}
}