-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathTaskfile.gradle.yml
68 lines (55 loc) · 1.37 KB
/
Taskfile.gradle.yml
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
version: '3'
vars:
GOOS: "{{default OS .GOOS}}"
GRADLEW: '{{if eq .GOOS "windows"}}gradlew.bat{{else}}./gradlew{{end}}'
SLEEP_CMD: '{{if eq .GOOS "windows"}}timeout{{else}}sleep{{end}}'
IMAGE_NAME: 'sivaprasadreddy/spring-modular-monolith'
DC_FILE: "compose.yml"
tasks:
default:
cmds:
- task: test
test:
deps: [ format ]
cmds:
- "{{.GRADLEW}} build"
format:
cmds:
- "{{.GRADLEW}} spotlessApply"
open_rewrite:
cmds:
- "{{.GRADLEW}} rewriteRun"
build_image:
cmds:
- "{{.GRADLEW}} -x test bootBuildImage --imageName={{.IMAGE_NAME}}"
start:
deps: [ build_image ]
cmds:
- docker compose --profile app -f "{{.DC_FILE}}" up --force-recreate -d
stop:
cmds:
- docker compose --profile app -f "{{.DC_FILE}}" stop
- docker compose --profile app -f "{{.DC_FILE}}" rm -f
restart:
cmds:
- task: stop
- task: sleep
- task: start
kind_create:
cmds:
- ./kind/kind-cluster.sh create
kind_destroy:
cmds:
- ./kind/kind-cluster.sh destroy
k8s_deploy:
cmds:
- kind load docker-image sivaprasadreddy/spring-modular-monolith --name sivalabs-k8s
- kubectl apply -f k8s/
k8s_undeploy:
cmds:
- kubectl delete -f k8s/
sleep:
vars:
DURATION: "{{default 5 .DURATION}}"
cmds:
- "{{.SLEEP_CMD}} {{.DURATION}}"