-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
56 lines (46 loc) · 2.25 KB
/
Makefile
File metadata and controls
56 lines (46 loc) · 2.25 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
# vim: set tabstop=8 softtabstop=8 noexpandtab:
.PHONY: help
help: ## Displays this list of targets with descriptions
@grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[32m%-30s\033[0m %s\n", $$1, $$2}'
.PHONY: static-code-analysis
static-code-analysis: vendor ## Runs a static code analysis with phpstan/phpstan
vendor/bin/phpstan analyse --configuration=phpstan-default.neon.dist --memory-limit=-1
.PHONY: static-code-analysis-baseline
static-code-analysis-baseline: check-symfony vendor ## Generates a baseline for static code analysis with phpstan/phpstan
vendor/bin/phpstan analyze --configuration=phpstan-default.neon.dist --generate-baseline=phpstan-default-baseline.neon --memory-limit=-1
.PHONY: tests
tests: vendor
vendor/bin/phpunit tests
.PHONY: vendor
vendor: composer.json composer.lock ## Installs composer dependencies
composer install
.PHONY: cs
cs: ## Update Coding Standards
vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.dist.php --diff --verbose
.PHONY: buildimage
buildimage: ## Build container image for current Architecture
docker build -f Containerfile -t vitexsoftware/abraflexi-pricefixer:latest .
.PHONY: buildx
buildx: ## Build container image all architectures
docker buildx build -f Containerfile . --push --platform linux/arm/v7,linux/arm64/v8,linux/amd64 --tag vitexsoftware/abraflexi-pricefixer:`dpkg-parsechangelog | sed -n 's/^Version: //p'| sed 's/~.*//'`
.PHONY: drun
drun: ## Run image using local docker
docker run -f Containerfile --env-file .env vitexsoftware/abraflexi-pricefixer:latest
.PHONY: phar
phar: ## Build PHPArchive
rm -rfv debian/multiflexi-abraflexi-pricefixer debian/abraflexi-pricefixer
php -d phar.readonly=off /usr/bin/phar-composer build .
chmod +x abraflexi-pricefixer.phar
mv abraflexi-pricefixer.phar abraflexi-pricefixer_`dpkg-parsechangelog | sed -n 's/^Version: //p'| sed 's/~.*//'`.phar
.PHONY: validate-multiflexi-app
validate-multiflexi-app: ## Validates the multiflexi JSON
@if [ -d multiflexi ]; then \
for file in multiflexi/*.multiflexi.app.json; do \
if [ -f "$$file" ]; then \
echo "Validating $$file"; \
multiflexi-cli app validate-json --file="$$file"; \
fi; \
done; \
else \
echo "No multiflexi directory found"; \
fi