def package_step

near-v-framework@0.4.0.0 · domain/architecture/system/plan/ops.bend:35

import near-v-framework@0.4.0.0/domain/architecture/system/plan/ops.bend as Ops
import Base
import near-v-framework@0.4.0.0/domain/architecture/system/release/type.bend as Rl
import near-v-framework@0.4.0.0/domain/architecture/system/plan/type.bend as P

35# ---- each package: already published as it is, new, or changed without a new version ----
36def package_step(p: Rl.Package, h: P.Hub) -> P.Step:
37  match p:
38    case Rl.Package{+n, +v, e, _}:
39      match h:
40        case P.Same{}:
41          P.Current{"package " ++ n ++ "@" ++ v}
42        case P.Unpublished{}:
43          P.Publish{n, v, e}
44        case P.Differs{f}:
45          P.Blocked{"package " ++ n ++ "@" ++ v, f ++ " changed since it was published; give it a new version"}

Uses (4)

Used by (1)