-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig.yaml.sample
More file actions
181 lines (162 loc) · 4.29 KB
/
config.yaml.sample
File metadata and controls
181 lines (162 loc) · 4.29 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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
# Custom CLI Configuration Sample
# Copy this file to config.yaml and customize for your projects
#
# Key Features:
# - Dependency-driven startup order (services wait for dependencies to be healthy)
# - Variable substitution with ${VAR} syntax
# - Comments to document service relationships
# - Clean, readable YAML structure
# Individual service definitions
services:
# React App Example
react-app:
port: 3000
directory: ${REPOS_DIR}/my-react-app
command: npm start
timeout: 60
healthUrl: http://localhost:3000
displayName: React Application
dependencies: []
# Vite App Example
vite-app:
port: 5173
directory: ${REPOS_DIR}/my-vite-app
command: npm run dev
timeout: 45
healthUrl: http://localhost:5173
displayName: Vite Development Server
dependencies: []
# Next.js App Example
nextjs-app:
port: 3000
directory: ${REPOS_DIR}/my-nextjs-app
command: npm run dev
timeout: 60
healthUrl: http://localhost:3000
displayName: Next.js Application
dependencies: []
# Express API Example
express-api:
port: 8080
directory: ${REPOS_DIR}/my-express-api
command: npm run dev
timeout: 30
healthUrl: http://localhost:8080/api/health
displayName: Express API Server
dependencies: []
# Vue.js App Example
vue-app:
port: 8080
directory: ${REPOS_DIR}/my-vue-app
command: npm run serve
timeout: 45
healthUrl: http://localhost:8080
displayName: Vue.js Application
dependencies: []
# Database Example
database:
port: 5432
directory: ${REPOS_DIR}/my-database
command: npm run start:local
timeout: 30
healthUrl: "" # Uses port-based health check
displayName: Local Database
dependencies: []
# API Server with Database Dependency
api-server:
port: 3001
directory: ${REPOS_DIR}/my-api-server
command: npm run dev
timeout: 30
healthUrl: http://localhost:3001/health
displayName: API Server
dependencies:
- database # Waits for database to be healthy first
# Frontend App with API Dependency
frontend-app:
port: 3000
directory: ${REPOS_DIR}/my-frontend-app
command: npm start
timeout: 60
healthUrl: http://localhost:3000
displayName: Frontend Application
dependencies:
- api-server # Waits for API to be healthy first
# Composite service environments
composites:
# Frontend-only environment
frontend:
services:
- react-app
displayName: Frontend Development
description: React application only
# Full-stack environment with dependencies
fullstack:
services:
- database
- api-server
- frontend-app
displayName: Complete Development Environment
description: Database + API + Frontend (starts in dependency order)
# Multi-app environment
multi-frontend:
services:
- react-app
- vue-app
- vite-app
displayName: Multi-Frontend Testing
description: Multiple frontend frameworks running simultaneously
# E-commerce example
ecommerce:
services:
- database
- express-api
- vue-app
displayName: E-commerce Stack
description: Database + API + Vue.js storefront
# Global configuration
global:
# Directory paths
reposDir: ${HOME}/Projects # Change this to your projects directory
logsDir: ${REPOS_DIR}/custom-cli/.logs
# CLI configuration
cliName: my-custom-cli # Change this to your preferred CLI name
cliExecutable: bin/custom-cli
# Default timeouts
timeoutDefault: 30
timeoutLong: 45
timeoutDashboard: 60
# Version information
version: 1.0.0
versionName: My Custom CLI
buildDate: 2025-09-24
phase: "Release 1.0: My Development Environment"
architecture: Configuration-Driven
# Process cleanup patterns (for stopping services)
processPatterns:
react: react-scripts.*start
vite: vite.*dev
nextjs: next.*dev
express: express.*dev node.*server
vue: vue.*serve
database: postgres mysql mongo
api: api.*nodemon api.*ts-node
frontend: webpack-dev-server
# UI configuration
ui:
colors:
green: '\033[0;32m'
yellow: '\033[1;33m'
red: '\033[0;31m'
blue: '\033[0;34m'
purple: '\033[0;35m'
reset: '\033[0m'
icons:
database: 🗄️
api: 🔌
webapp: 🌐
mobile: 📱
success: ✅
warning: ⚠️
error: ❌
info: ℹ