]> git.immae.eu Git - github/wallabag/wallabag.git/blob - GNUmakefile
Make dev depend on build
[github/wallabag/wallabag.git] / GNUmakefile
1 SHELL=bash
2 TMP_FOLDER=/tmp
3 RELEASE_FOLDER=wllbg-release
4
5 ENV ?= prod
6
7 help: ## Display this help menu
8 @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
9
10 clean: ## Clear the application cache
11 rm -rf var/cache/*
12
13 install: ## Install wallabag with the latest version
14 @./scripts/install.sh $(ENV)
15
16 update: ## Update the wallabag installation to the latest version
17 @./scripts/update.sh $(ENV)
18
19 dev: ENV=dev
20 dev: build ## Install the latest dev version
21 @./scripts/dev.sh
22
23 run: ## Run the wallabag built-in server
24 @php bin/console server:run --env=dev
25
26 build: ## Run webpack
27 @npm install
28 @npm run build:$(ENV)
29
30 prepare: clean ## Prepare database for testsuite
31 ifdef DB
32 cp app/config/tests/parameters_test.$(DB).yml app/config/parameters_test.yml
33 endif
34 -php bin/console doctrine:database:drop --force --env=test
35 php bin/console doctrine:database:create --env=test
36 php bin/console doctrine:migrations:migrate --no-interaction --env=test
37
38 fixtures: ## Load fixtures into database
39 php bin/console doctrine:fixtures:load --no-interaction --env=test
40
41 test: prepare fixtures ## Launch wallabag testsuite
42 bin/simple-phpunit -v
43
44 release: ## Create a package. Need a VERSION parameter (eg: `make release VERSION=master`).
45 ifndef VERSION
46 $(error VERSION is not set)
47 endif
48 @./scripts/release.sh $(VERSION) $(TMP_FOLDER) $(RELEASE_FOLDER) $(ENV)
49
50 deploy: ## Deploy wallabag
51 @bundle exec cap staging deploy
52
53 .PHONY: help clean prepare install fixtures update build test release deploy run dev
54
55 .DEFAULT_GOAL := install