def remote_step

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

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

24def remote_step(+repo: Rl.Repository, rm: P.Remote) -> P.Step:
25  match repo rm:
26    case Rl.Repository{+name, +public} P.Remote{+origin, +vis, clean, pushed}:
27      Bool.pick(P.Step, String.contains(origin, name),
28        Bool.pick(P.Step, String.eq(vis, visibility(public)),
29          Bool.pick(P.Step, clean,
30            Bool.pick(P.Step, pushed, P.Current{"github " ++ name}, P.Push{name}),
31            P.Blocked{"github " ++ name, "uncommitted changes"}),
32          P.Blocked{"github " ++ name, "GitHub says " ++ Bool.pick(String, String.is_empty(vis), "nothing (unreachable)", vis) ++ ", declared " ++ visibility(public)}),
33        P.Blocked{"github " ++ name, "origin is " ++ origin})

Uses (10)

Used by (1)