diff tasks.py @ 130:73a70d00fb74

dep upgrades; working on build+release setup
author drewp@bigasterisk.com
date Sat, 06 May 2023 13:11:19 -0700
parents 9a57f8c556d2
children 8a30f1c9a702
line wrap: on
line diff
--- a/tasks.py	Fri May 05 21:27:24 2023 -0700
+++ b/tasks.py	Sat May 06 13:11:19 2023 -0700
@@ -4,38 +4,68 @@
 
 @task
 def setup_js(ctx):
-    if 0: # only reasonable on bang,but dash tries to rebuild it
+    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)
+    ctx.run('pnpm whoami --registry https://bigasterisk.com/js')
+    diffs = ctx.run('hg status')
+    if diffs.stdout.strip():
+        print(" ^^ commit these diffs first")
+        return
+    v = ctx.run('pnpm version minor').stdout.strip()
+    ctx.run(f'hg commit --message "release {v}"')
+    build(ctx)
+    filesRoot = '/my/site/homepage/newsrc/files'
+    path = f'lib/streamed-graph/{v}/'
+    outdir = f'{filesRoot}/{path}'
+    name = 'streamed-graph.es.js'
+    ctx.run(f'mkdir -p {outdir}')
+    ctx.run(f'cp dist/{name} {outdir}')
+    ctx.run('cd /my/site/homepage; inv build')
+    ctx.run(
+        "curl -s -o/dev/null -w '%{url_effective} %{http_code} bytes=%{size_download}\n' "
+        + "https://bigasterisk.com/" + path + name,
+        pty=True)
+    # this fails with ENEEDAUTH:
+    #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')
+    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')}")
\ No newline at end of file