domain/architecture/system/ops.bend
near-v-framework@0.3.0.2 · 16 lines · 0 definitions
1import Base
2import near-v-framework@0.3.0.2/domain/architecture/system/type.bend as S
3import near-v-framework@0.3.0.2/domain/architecture/system/release/type.bend as Rl
4import near-v-framework@0.3.0.2/domain/architecture/system/release/ops.bend as RlO
5import near-v-framework@0.3.0.2/domain/architecture/ops.bend as O
6
7def release(s: S.System) -> Rl.Release:
8 match s:
9 case S.System{_, _, _, _, _, r}:
10 r
11
12# Everything the system is made of ships in a declared package: what is not published cannot be used.
13def components_published(+s: S.System) -> Bool:
14 match s:
15 case S.System{_, _, _, cs, _, r}:
16 O.all_listed(O.all_component_keys(cs), RlO.shipped_components(RlO.packages(r)))