babashka / bbin

Install any Babashka script or project with one command
MIT License
138 stars 9 forks source link

Add `--deps/root` option to install command #70

Open jeroenvandijk opened 1 year ago

jeroenvandijk commented 1 year ago

I have a project that has a nested project structure with a bbin entry.

Locally I can install this project with

bbin install . --local/root projects/poly-bb

or directly from the dir with

bbin install . 

From Github I have not been able to install it without cloning the repo locally.

Ideally one would be able to install this bbin binary with

bbin install io.github.jeroenvandijk/polylith --git/sha "6527bf4b4d6165c8ba7d8f678866e662d34b1c19" --deps/root "projects/poly-bb" --as poly-bb-dev1

I've tried adding a bb.edn file in the root of the project without success (it installs but then gets an error):

bbin install io.github.jeroenvandijk/polylith --git/sha "8c1632cf58d257ad574781192872133c0706941a" --as poly-bb-dev2
Error here
``` ----- Error -------------------------------------------------------------------- Type: java.lang.Exception Message: Could not find namespace: polylith-bb.core. Location: :1:10 ----- Context ------------------------------------------------------------------ 1: (ns user (:require [polylith-bb.core])) (apply polylith-bb.core/-main *command-line-args*) ^--- Could not find namespace: polylith-bb.core. ----- Stack trace -------------------------------------------------------------- user - :1:10 ```

Another option would be to change the deps.edn file in the root. This would however conflicts with the project structure of Polylith itself.

rads commented 1 year ago

I'm definitely interested in adding this. I think we should also make this configurable in the :bbin/bin config so you can use this to organize your code without the user noticing anything externally.