soulspace-org / overarch

Overarch provides a data model for the holistic description of a software system, opening multiple use cases on the model data. Supports C4 and UML diagram generation with PlantUML.
Eclipse Public License 1.0
204 stars 6 forks source link

More examples on how to run overarch #11

Closed abritov closed 6 months ago

abritov commented 6 months ago

Hello!

I'm very excited by this project and effort made. Can someone share on how to use it property? I haven't managed to see how to use it even with build-in models:

~/c/c/overarch main | 1 ❱ java -jar ./target/overarch.jar -m models/banking/
Model Warnings:
{:unresolved-refs-in-views (), :unresolved-refs-in-relations ()}
~/c/c/overarch main 11.1s ❱ java -jar ./target/overarch.jar -m models/usecase/
Model Warnings:

{:unresolved-refs-in-views (), :unresolved-refs-in-relations ()}
~/c/c/overarch main 1.8s ❱
~/c/c/overarch main 1.8s ❱ java -jar ./target/overarch.jar -m models/storytell
ing/
Model Warnings:
{:unresolved-refs-in-views (), :unresolved-refs-in-relations ()}
~/c/c/overarch main 2.1s ❱ java -jar ./target/overarch.jar -m models/state/
Model Warnings:
{:unresolved-refs-in-views (), :unresolved-refs-in-relations ()}

It gives same error even to empty .edn file, so there's definitely no unresolved refs

lsolbach commented 6 months ago

Hello abritov,

everything is fine when you get this output, as the list of unresolved refs is empty in both cases. Currently the warning map is always printed, even when the lists are empty.

You can suppress the output with the --no-model-warnings option, but then the model would not been checked. I see that always printing a warning is missleading if you are not used to it, so I will change the behaviour to at least print something like "No model warnings".

Thanks for the feedback.

Ludger

lsolbach commented 6 months ago

Hello abritov,

here are some examples for command lines:

To render all views for all models, use

> java -jar ./target/overarch.jar -r all

or

> java -jar ./target/overarch.jar -r all --debug

To render all views for all models with a directory watch to trigger rerendering on changes, use

> java -jar ./target/overarch.jar -r all -w --debug

To export the models to JSON, use

> java -jar ./target/overarch.jar -x json

To query the model for all containers, use

> java -jar ./target/overarch.jar -s '{:el :container}'

I hope, the examples help.

Ludger

lsolbach commented 6 months ago

I've added the examples above to the usage doc.