.PHONY: clean virtualenv lint test docker dist dist-upload

clean:
	find . -name '*.py[co]' -delete

virtualenv:
	virtualenv --prompt '|> ansible-role-common <| ' env
	env/bin/pip install -r requirements.txt
	env/bin/ansible-galaxy collection install -r requirements.yml
	@echo
	@echo "VirtualENV Setup Complete. Now run: source env/bin/activate"
	@echo

test:
	for distro in centos7 almalinux8 ; do \
		MOLECULE_DISTRO=$$distro molecule test --all ; \
	done

lint:
	@echo
	@echo "Linting with Ansible-lint"
	@echo
	ansible-lint .
	yamllint .


docker: clean
	docker buildx build --platform 'linux/amd64,linux/arm64' --push \
	-t hub.cybercinch.nz/cybercinch/imap_retention_manager:latest \
	-t docker.io/cybercinch/imap_retention_manager:latest .

dist: clean
	rm -rf dist/*
	python setup.py sdist
	python setup.py bdist_wheel

dist-upload:
	twine upload dist/*
