def write_cred

cswap-bend-cli@0.1.0.0 · store/io.bend:118

import cswap-bend-cli@0.1.0.0/store/io.bend as Io
import Base
import cswap-bend-cli@0.1.0.0/b64.bend as B64
import cswap-bend-cli@0.1.0.0/act.bend as Act
import cswap-bend-cli@0.1.0.0/store/base.bend as SBase

118# Store a slot's credential (0600). The generation it replaces is kept as
119# `.enc.prev` when it was readable and different.
120def write_cred(+root: String, +slot: String, +email: String, +creds: String) -> Act.of(Unit):
121  do ActM<Unit>:
122    +cur : String <- read_cred(root, slot, email)
123    keep_prev(SBase.nonempty(cur) && SBase.not_(String.eq(cur, creds)), root, slot, email, cur)
124    write_secret(SBase.enc_path(root, slot, email), B64.encode(creds))

Uses (14)

Used by (4)