Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Identify external software systems by custom tag #356

Merged
merged 9 commits into from
Nov 4, 2023

Conversation

jp7677
Copy link
Contributor

@jp7677 jp7677 commented Oct 27, 2023

There no concept anymore of external/internal locations when not using the now deprecated enterprise boundary. Do we still want to exclude software systems somehow like we do now with systems outside the enterprise?

Structurizr only enforces this property with nested groups, but not
with groups on the first level only.
We have `SoftwareSystem.includedSoftwareSystem` for that.
In other words, validate groups only on the first level, without
setting 'structurizr.groupSeparator' property.

Also split other test and fix some formatting issues.
Only use 'Model.includedSoftwareSystems' to
determine if we include a software system.

A side effect is unfortunately that we extended
our PageViewModel.
Consider a software system external when groups
are used and a software system is outside of any group.
The enterprise boundary is deprecated. Also add other
properties for convenience.

Due to earlier work, this does not change the presentation
of that model in the generated site.
Those settings mostly match the styling in the project. We
don't enforce those rules, they are just for convenience for
setups with a coresponding IDE plugin.
@jp7677 jp7677 changed the title Group tweaks Consider a software system external when groups are used and it is outside of any group Oct 29, 2023
@jp7677
Copy link
Contributor Author

jp7677 commented Oct 29, 2023

So with this PR we say good bye (but still support) to the now deprecated enterprise boundary. Just changing "enterprise boundary" to "group" in an existing model should result in exactly the same generated site. Changing "enterprise boundary" to "group" in an existing model, setting tags on external systems and setting the tag property should result in the same generated site.

@jp7677 jp7677 requested a review from dirkgroot October 29, 2023 07:39
@jp7677 jp7677 mentioned this pull request Nov 2, 2023
5 tasks
@jp7677 jp7677 changed the title Consider a software system external when groups are used and it is outside of any group Detect external software systems by custom tag Nov 3, 2023
@jp7677 jp7677 changed the title Detect external software systems by custom tag Identify external software systems by custom tag Nov 3, 2023
@jp7677 jp7677 force-pushed the group-separator branch 2 times, most recently from cca7ec2 to 9047323 Compare November 3, 2023 09:15
Replace our own heuristics based on groups. Therefore add
a property "generatr.site.excludedTag" to define the name of
the tag that identifies external systems.

Also adjust example.
@jp7677 jp7677 merged commit 5ec27c7 into avisi-cloud:main Nov 4, 2023
2 checks passed
@jp7677 jp7677 deleted the group-separator branch November 4, 2023 07:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants