-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTaskfile.yml
More file actions
112 lines (91 loc) · 2.21 KB
/
Taskfile.yml
File metadata and controls
112 lines (91 loc) · 2.21 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
version: '3'
vars:
API_DIR: api
UI_DIR: ui
dotenv: ['.env']
tasks:
dev:
desc: Start development servers for both API and UI
deps: [dev:api, dev:ui]
dev:api:
desc: Start Go API development server
dir: "{{.API_DIR}}"
cmds:
- go run cmd/server/main.go
dev:ui:
desc: Start React UI development server
dir: "{{.UI_DIR}}"
cmds:
- pnpm run dev
install:
desc: Install dependencies for both API and UI
deps: [install:api, install:ui]
install:api:
desc: Install Go API dependencies
dir: "{{.API_DIR}}"
cmds:
- go mod tidy
install:ui:
desc: Install UI dependencies
dir: "{{.UI_DIR}}"
cmds:
- pnpm install
build:
desc: Build both API and UI for production
deps: [build:api, build:ui]
build:api:
desc: Build Go API binary
dir: "{{.API_DIR}}"
cmds:
- go build -o server cmd/server/main.go
build:ui:
desc: Build React UI for production
dir: "{{.UI_DIR}}"
cmds:
- pnpm run build
test:
desc: Run tests for both API and UI
deps: [test:api, test:ui]
test:api:
desc: Run Go API tests
dir: "{{.API_DIR}}"
cmds:
- go test -v ./test/...
test:api:hurl:
desc: Run Hurl API tests (requires running server)
dir: "{{.API_DIR}}"
cmds:
- hurl --variables-file test/environments/local.env --test test/addresses.hurl
test:ui:
desc: Run UI type checking and linting
dir: "{{.UI_DIR}}"
cmds:
- pnpm run type-check
- pnpm run lint
clean:
desc: Clean build artifacts
cmds:
- rm -f {{.API_DIR}}/server
- rm -rf {{.UI_DIR}}/dist
- rm -rf {{.UI_DIR}}/node_modules/.cache
setup:
desc: Initial project setup - copy env files and install dependencies
cmds:
- cp {{.API_DIR}}/.env.example {{.API_DIR}}/.env || echo ".env already exists"
- task: install
docker:build:
desc: Build Docker images
cmds:
- docker compose build
docker:up:
desc: Start Docker containers
cmds:
- docker compose up -d
docker:down:
desc: Stop Docker containers
cmds:
- docker compose down
docker:logs:
desc: View Docker container logs
cmds:
- docker compose logs -f