.PHONY: swagger

swagger:
	#
	# generate auth
	#
	rm -rf ./api
	mkdir -p api/auth
	swagger generate client \
		--log-output=./swagger/logs/generate-auth-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=auth \
		--spec=./swagger/auth-taxnexus.yaml \
		--target=./api/auth \
		--client-package=auth-client \
		--model-package=auth-models \
		--principal=app.User 
	#
	# generate auth0
	#
	mkdir -p api/auth0
	swagger generate client \
		--log-output=./swagger/logs/generate-auth0-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=auth0 \
		--spec=./swagger/auth0.yaml \
		--target=./api/auth0 \
		--client-package=auth0-client \
		--model-package=auth0-models \
		--principal=app.User 
	#
	# generate blaze
	#
	mkdir api/blaze
	swagger generate client \
		--log-output=./swagger/logs/generate-blaze-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=blaze \
		--spec=./swagger/blaze-taxnexus.yaml \
		--target=./api/blaze \
		--client-package=blaze-client \
		--model-package=blaze-models \
		--principal=app.User 
	#
	# generate crm
	#
	mkdir api/crm
	swagger generate client \
		--log-output=./swagger/logs/generate-crm-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=crm \
		--spec=./swagger/crm-taxnexus.yaml \
		--target=./api/crm \
		--client-package=crm-client \
		--model-package=crm-models \
		--principal=app.User 
	#
	# generate devops
	#
	mkdir api/devops
	swagger generate client \
		--log-output=./swagger/logs/generate-devops-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=devops \
		--spec=./swagger/devops-taxnexus.yaml \
		--target=./api/devops \
		--client-package=devops-client \
		--model-package=devops-models \
		--principal=app.User 
	#
	# generate geo
	#
	mkdir api/geo
	swagger generate client \
		--log-output=./swagger/logs/generate-geo-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=geo \
		--spec=./swagger/geo-taxnexus.yaml \
		--target=./api/geo \
		--client-package=geo-client \
		--model-package=geo-models \
		--principal=app.User 
	#
	# generate gov-gw
	#
	mkdir api/gov-gw
	swagger generate client \
		--log-output=./swagger/logs/generate-gov-gw-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=gov-gw \
		--spec=./swagger/gov-gw-taxnexus.yaml \
		--target=./api/gov-gw \
		--client-package=gov-gw-client \
		--model-package=gov-gw-models \
		--principal=app.User 
	#
	# generate ledger
	#
	mkdir api/ledger
	swagger generate client \
		--log-output=./swagger/logs/generate-ledger-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=ledger \
		--spec=./swagger/ledger-taxnexus.yaml \
		--target=./api/ledger \
		--client-package=ledger-client \
		--model-package=ledger-models \
		--principal=app.User 
	#
	# generate metrc-gw
	#
	mkdir api/metrc-gw
	swagger generate client \
		--log-output=./swagger/logs/generate-metrc-gw-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=metrc-gw \
		--spec=./swagger/metrc-gw-taxnexus.yaml \
		--target=./api/metrc-gw \
		--client-package=metrc-gw-client \
		--model-package=metrc-gw-models \
		--principal=app.User 
	#
	# generate ops
	#
	mkdir api/ops
	swagger generate client \
		--log-output=./swagger/logs/generate-ops-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=ops \
		--spec=./swagger/ops-taxnexus.yaml \
		--target=./api/ops \
		--client-package=ops-client \
		--model-package=ops-models \
		--principal=app.User 
	#
	# generate pdf
	#
	mkdir api/pdf
	swagger generate client \
		--log-output=./swagger/logs/generate-pdf-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=pdf \
		--spec=./swagger/pdf-taxnexus.yaml \
		--target=./api/pdf \
		--client-package=pdf-client \
		--model-package=pdf-models \
		--principal=app.User 
	#
	# generate plex
	#
	mkdir api/plex
	swagger generate client \
		--log-output=./swagger/logs/generate-plex-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=plex \
		--spec=./swagger/plex-taxnexus.yaml \
		--target=./api/plex \
		--client-package=plex-client \
		--model-package=plex-models \
		--principal=app.User 
	#
	# generate regs
	#
	mkdir api/regs
	swagger generate client \
		--log-output=./swagger/logs/generate-regs-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=regs \
		--spec=./swagger/regs-taxnexus.yaml \
		--target=./api/regs \
		--client-package=regs-client \
		--model-package=regs-models \
		--principal=app.User 
	#
	# generate render
	#
	mkdir api/render
	swagger generate client \
		--log-output=./swagger/logs/generate-render-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=render \
		--spec=./swagger/render-taxnexus.yaml \
		--target=./api/render \
		--client-package=render-client \
		--model-package=render-models \
		--principal=app.User 
	#
	# generate sf-gate
	#
	mkdir api/sf-gate
	swagger generate client \
		--log-output=./swagger/logs/generate-sf-gate-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=sf-gate \
		--spec=./swagger/sf-gate-taxnexus.yaml \
		--target=./api/sf-gate \
		--client-package=sf-gate-client \
		--model-package=sf-gate-models \
		--principal=app.User 
	#
	# generate stash
	#
	mkdir api/stash
	swagger generate client \
		--log-output=./swagger/logs/generate-stash-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=stash \
		--spec=./swagger/stash-taxnexus.yaml \
		--target=./api/stash \
		--client-package=stash-client \
		--model-package=stash-models \
		--principal=app.User 
	#
	# generate vendor-gw
	#
	mkdir api/vendor-gw
	swagger generate client \
		--log-output=./swagger/logs/generate-vendor-gw-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=vendor-gw \
		--spec=./swagger/vendor-gw-taxnexus.yaml \
		--target=./api/vendor-gw \
		--client-package=vendor-gw-client \
		--model-package=vendor-gw-models \
		--principal=app.User 
	#
	# generate workflow
	#
	mkdir api/workflow
	swagger generate client \
		--log-output=./swagger/logs/generate-workflow-client.log \
		--copyright-file=./build/COPYRIGHT \
		--name=workflow \
		--spec=./swagger/workflow-taxnexus.yaml \
		--target=./api/workflow \
		--client-package=workflow-client \
		--model-package=workflow-models \
		--principal=app.User 
