ARGS = $(filter-out $@,$(MAKECMDGOALS))
MAKEFLAGS += --silent

export COMPOSE_PROJECT_NAME=duravit-contentserv-flextablesplugin

list:
	sh -c "echo; $(MAKE) -p no_targets__ | awk -F':' '/^[a-zA-Z0-9][^\$$#\/\\t=]*:([^=]|$$)/ {split(\$$1,A,/ /);for(i in A)print A[i]}' | grep -v '__\$$' | grep -v 'Makefile'| sort"

#############################
# Docker machine states
#############################

up:
	docker-compose up -d

start:
	docker-compose start

stop:
	docker-compose stop

state:
	docker-compose ps

restart:
	docker-compose kill $(ARGS)
	docker-compose start $(ARGS)

rebuild:
	docker-compose kill vpn
	docker-compose rm --force vpn
	docker-compose build --pull --no-cache
	docker-compose up -d

logs:
	docker-compose logs -f --tail=100 $(ARGS)

bash: shell

shell:
	docker exec -it -u root $$(docker-compose ps -q vpn) /bin/bash

bash-preview:
	docker exec -it -u root $$(docker-compose ps -q vpn) ssh root@10.2.3.44

bash-live:
	docker exec -it -u root $$(docker-compose ps -q vpn) ssh root@10.2.3.44 ssh root@10.2.3.221

download-cs-source:
	cd src
	mkdir -p contentservSrc
	docker exec -it -u root $$(docker-compose ps -q vpn) rsync -rvxPh --include=*/ --include=*.php --include=*.php* --exclude=* --stats root@10.2.3.44:/data/www/CS180/admin /data/src/contentservSrc

download-preview:
	docker exec -it -u root $$(docker-compose ps -q vpn) scp -r root@10.2.3.44:/daten/www/htdocs/CONTENTSERV/duravit/plugins /data/src

sync-from-preview:
	rsync -rvxhut root@10.2.3.44:/daten/www/htdocs/CONTENTSERV/duravit/plugins ./plugins

sync-to-preview:
	rsync -rvuxth ./plugins root@10.2.3.44:/daten/www/htdocs/CONTENTSERV/duravit/modules/rhgpricelist

sync-table-preview-to-preview:
	docker exec -it -u root $$(docker-compose ps -q vpn) rsync -rvuxth --chmod 777 /data/src/table-preview/ root@10.2.3.44:/data/www/CS180

deploy-preview:
	docker exec -it -u root $$(docker-compose ps -q vpn) ssh root@10.2.3.44 /usr/local/sbin/DuraHub-CS-Deployment-Modules/deploy.sh preview

deploy-live:
	docker exec -it -u root $$(docker-compose ps -q vpn) ssh root@10.2.3.44 :wq: /usr/local/sbin/DuraHub-CS-Deployment-Modules/deploy.sh live

download-indd-files:
	docker exec -it -u root $$(docker-compose ps -q vpn) rsync -rvxhut --include=*/ --include=*.indd --exclude=* root@10.2.3.44:/data/storage/AssetHub/Pricelists/* /data/src/indesign

download-indd-files-live:
	docker exec -it -u root $$(docker-compose ps -q vpn) rsync -rvxhut --include=*/ --include=*.indd --exclude=* root@10.2.3.43:/data/storage/AssetHub/Pricelists/* /data/src/indesign

# Push a single file or path relative to src/plugins to the preview server
push-preview:
	docker exec -it -u root $$(docker-compose ps -q vpn) scp -r /data/src/plugins/$(ARGS) root@10.2.3.44:/daten/www/htdocs/CONTENTSERV/duravit/plugins/$(ARGS)

test:
	docker exec -it -u root $$(docker-compose ps -q vpn) echo ${\$$1/src/hhh}

php-cs:
	docker run --rm -ti -w /src -v $$(pwd):/src 1drop/php-71-docker-utils /bin/sh -c "php-cs-fixer fix -v --using-cache=no"

#############################
# Argument fix workaround
#############################
%:
	@:

