babashka-sci-dev

lispyclouds 2022-05-26T19:54:51.777119Z

For the CI shorting script, need some opinions: • includes vs excludes: we short when file(s) in the changeset are in either of the lists? • how to specify the files: as a vec of strings of globs or direct file paths or regexes? • should we also support git message based shorting? • how much should the script be aware of where its running: should it signal a short by a non zero exit or call some ci-centric API/shell command? • if this is written using bb, should we bootstrap it?

borkdude 2022-05-26T19:58:33.042919Z

@rahul080327 I'm mostly concerned about circleci, so we can just use the circleci short command which is already in there somewhere. Also as a first iteration, just filtering on only .md files is sufficient: if the changed files are only .md files, then short, that's it. This is what I need for clj-kondo and babashka, nothing more complex at the moment.

lispyclouds 2022-05-26T20:02:32.044259Z

okay so this is what I'll start with the logic short by calling the circleci command if includes only *.md. for the bb question, should be bootstrap it like the docker script?

borkdude 2022-05-26T20:21:38.616099Z

ah right. yeah, bootstrap seems good

lispyclouds 2022-05-26T20:24:04.361049Z

here i think we need to use a pre built bb? cant do it exactly like the docker one as its pretty much at the end.

borkdude 2022-05-26T20:25:26.255279Z

maybe since this will be a simple script, hopefully, some bash would be ok...? famous last word

borkdude 2022-05-26T20:25:56.878939Z

I'd rather not have a bb within the bb build as I'm afraid that it will mess things up

lispyclouds 2022-05-26T20:26:43.081329Z

or python maybe? have some sanity than bash

lispyclouds 2022-05-26T20:26:55.712419Z

can just use jvm clj

borkdude 2022-05-26T20:27:15.264499Z

or maybe we could download bb to a /tmp/build dir

borkdude 2022-05-26T20:27:22.586659Z

with --dir /tmp/build

borkdude 2022-05-26T20:27:31.252299Z

and then explicitly invoke it via /tmp/build/bb ...

lispyclouds 2022-05-26T20:27:50.467969Z

yeah im all for isolating the other bb

borkdude 2022-05-26T20:28:00.154209Z

The installer script supports that. Let's go with that

borkdude 2022-05-26T20:28:28.118309Z

And then maybe rename it to bb-build too, just to be sure

borkdude 2022-05-26T20:29:01.829989Z

or bbb :-D

lispyclouds 2022-05-26T20:29:04.246439Z

sounds good to me, would have a go at it in a day or so. have a fair idea now

borkdude 2022-05-26T20:29:16.995289Z

nice, thanks

lispyclouds 2022-05-26T20:29:52.535349Z

or this could also be the first tools.build thing too

borkdude 2022-05-26T20:32:07.308209Z

please not, tools.build is a build tool, let's not spawn JVMs within JVMs for simple stuff

lispyclouds 2022-05-26T20:32:29.109629Z

fair point

borkdude 2022-05-26T20:35:50.582559Z

I will eventually rework the feature stuff with tools.build, it's a natural fit for that

👍🏼 1
borkdude 2022-05-26T20:38:42.180399Z

Just a .clj file will also do, we should be able to run that either with JVM or a bespoke bb download

lispyclouds 2022-05-26T20:42:00.635839Z

probably would be a bb centric clj file, would involve shelling out to git, gotten hooked to bb.process now 😄

borkdude 2022-05-26T20:42:27.802199Z

yeah, all the deps are there anyway :)