from invoke import task @task def build(ctx): ctx.run("poetry build", pty=True) @task def publish(ctx, test_repository=True): repository_flag = "" if test_repository: ctx.run("poetry config repositories.testpypi https://test.pypi.org/legacy/", pty=True) repository_flag = "--repository testpypi" ctx.run(f"poetry publish --build {repository_flag}", pty=True) @task def test(ctx): ctx.run("pytest tests", pty=True) @task def coverage(ctx): ctx.run("coverage run --branch -m pytest tests && coverage report && coverage html", pty=True) @task def lint(ctx): ctx.run("pylint fixedcal", pty=True) @task def clean(ctx): ctx.run("rm -rf .pytest_cache/ htmlcov/ .coverage dist/", pty=True)