view tasks.py @ 129:f47661b9ed34

merge
author drewp@bigasterisk.com
date Fri, 05 May 2023 21:27:24 -0700
parents 9a57f8c556d2
children 73a70d00fb74
line wrap: on
line source

import os
from invoke import task  # pytype: disable=import-error


@task
def setup_js(ctx):
    if 0: # only reasonable on bang,but dash tries to rebuild it
        ctx.run('pnpm install --dir=$PWD')

@task(pre=[setup_js])
def serve_demo(ctx):
    ctx.run('webfsd -Fp 8021')

@task(pre=[setup_js])
def build(ctx):
    ctx.run(f'pnpm run build', pty=True)

@task(pre=[setup_js])
def build_forever(ctx):
    ctx.run(f'pnpm run build_forever', pty=True)

@task(pre=[setup_js])
def test(ctx):
    ctx.run(f'pnpm run test', pty=True)

@task(pre=[setup_js])
def test_forever(ctx):
    ctx.run(f'pnpm run test_forever', pty=True)

@task
def release(ctx):
    ctx.run(f'pnpm publish --registry https://bigasterisk.com/js', pty=True)

@task
def dev(ctx):
    ctx.run('pnpm dev')

@task
def deps(ctx):
    ctx.run('node_modules/.bin/depcruise --config .dependency-cruiser.js -T dot src | dot -Tsvg > deps.svg')
    print(f"browse to file://{os.path.abspath('deps.svg')}")