-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile
86 lines (70 loc) · 3.35 KB
/
Makefile
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
###############################################################################
###############################################################################
## ##
## Sitegeist.Stencil.Grinder ##
## ##
###############################################################################
###############################################################################
#
# @author Wilhelm Behncke <[email protected]>
#
###############################################################################
# VARIABLES #
###############################################################################
SHELL=/bin/bash
export PATH := ./node_modules/.bin:$(PATH)
export TS_NODE_PROJECT := ./tsconfig.json
export HOST_USER := $(shell id -u)
export HOST_GROUP := $(shell id -g)
export EXAMPLE ?= neos-stencil-nextjs
export PORT := 8081
export CONTAINER ?= backend
COMPOSE=docker-compose -f ./Examples/$(EXAMPLE)/docker-compose.yaml
COMPOSE_EXEC=$(COMPOSE) exec -T --user $(HOST_USER)
COMPOSE_EXEC_ROOT=$(COMPOSE) exec -T --user root
###############################################################################
# RUN #
###############################################################################
run::
@yarn && lerna bootstrap
@$(MAKE) -s build
@$(COMPOSE) up -d --force-recreate
@$(COMPOSE_EXEC) backend composer install
@$(COMPOSE_EXEC) backend mkdir -p /project/dist/Data/DoctrineMigrations
@$(COMPOSE_EXEC) backend php -d memory_limit=-1 ./flow flow:cache:flush --force
@$(COMPOSE_EXEC) backend php -d memory_limit=-1 ./flow flow:package:rescan --force
@$(COMPOSE_EXEC) backend php -d memory_limit=-1 ./flow doctrine:migrate
@$(COMPOSE_EXEC) backend php -d memory_limit=-1 ./flow resource:publish
@$(COMPOSE_EXEC) backend php -d memory_limit=-1 ./flow site:import --package-key Vendor.Site &>/dev/null && echo "Imported Vendor.Site" || true
@$(COMPOSE_EXEC) backend php -d memory_limit=-1 ./flow user:create --roles Administrator admin admin admin admin &>/dev/null && echo "Created user admin" || true
down::
@$(COMPOSE) down --remove-orphans --volumes
@$(COMPOSE) rm -vsf
save::
@$(COMPOSE_EXEC) backend php -d memory_limit=-1 ./flow site:export --package-key Vendor.Site
reset::
@$(MAKE) -s down
@$(MAKE) -s run
restart::
@$(COMPOSE) restart $(CONTAINER)
logs::
@$(COMPOSE) logs -f $(CONTAINER)
ps::
@$(COMPOSE) ps
ssh::
@$(COMPOSE) exec --user $(HOST_USER) $(CONTAINER) bash
###############################################################################
# BUILD #
###############################################################################
build::
@yarn && lerna run --scope @sitegeist/* build
build-example::
@$(COMPOSE_EXEC) frontend yarn build
###############################################################################
# TEST #
###############################################################################
test::
@jest $(args)
env::
@printf "\44EXAMPLE: $$EXAMPLE\n"
@printf "\44CONTAINER: $$CONTAINER\n"