kiln: fix |bump to not require except

This commit is contained in:
Philip Monk 2021-11-12 12:06:45 -08:00
parent 309cd96f8c
commit 6665bc0986
No known key found for this signature in database
GPG Key ID: B66E1F02604E44EC

View File

@ -408,18 +408,6 @@
.^([rev=@ud @da] %cw /(scot %p our)/[d]/(scot %da now)) .^([rev=@ud @da] %cw /(scot %p our)/[d]/(scot %da now))
== ==
take-commit:(abed:vats %base) take-commit:(abed:vats %base)
=? kiln ?=(^ wef)
=/ except=(set desk)
=/ base=(set desk) (sy %base %kids ~)
%- ~(gas in base)
%+ murn ~(tap by ark.old)
|= [loc=desk ark=arak]
^- (unit desk)
?. liv.rein.ark `loc
?~ rail.ark `loc
?: paused.u.rail.ark `loc
~
(bump:vats u.wef except force=%.n)
=. wef ~ =. wef ~
abet:kiln abet:kiln
:: ::
@ -692,11 +680,13 @@
|= [kel=weft except=(set desk) force=?] |= [kel=weft except=(set desk) force=?]
^+ kiln ^+ kiln
=/ ded (find-blocked kel except) =/ ded (find-blocked kel except)
?: force =? kiln force (suspend-many ded)
=. kiln (suspend-many ded) ?: |(force =(~ ded))
(bump-many kel (all-desks-but (~(uni in except) ded))) =/ desks
?: =(~ ded) ?: !=(zuse+zuse kel)
(bump-many kel (all-desks-but except)) (sy %base ~)
(all-desks-but (~(uni in except) ded))
(bump-many kel desks)
=- (^emit (pyre:pass leaf/- ~)) =- (^emit (pyre:pass leaf/- ~))
"kiln: desks blocked upgrade to {<zuse/zuse>}: {<ded>}" "kiln: desks blocked upgrade to {<zuse/zuse>}: {<ded>}"
:: ::
@ -924,11 +914,7 @@
update-running-dudes update-running-dudes
?. =(%base loc) ?. =(%base loc)
kiln kiln
=/ kel=[@tas @ud] (bump-many zuse+zuse (all-desks-but (get-unblockers ark)))
?~ rail.rak zuse/zuse
?~ next.u.rail.rak zuse/zuse
weft.i.next.u.rail.rak
(bump-many kel (all-desks-but (sy %base ~)))
:: ::
++ take-merge-main ++ take-merge-main
|= syn=sign-arvo |= syn=sign-arvo
@ -1043,6 +1029,19 @@
?: (lien next.u.rail.arak |=([* k=weft] =(k kel))) ?: (lien next.u.rail.arak |=([* k=weft] =(k kel)))
~ ~
`desk `desk
:: +get-unblockers: find desks which shouldn't block a kernel upgrade
::
++ get-unblockers
|= ark=(map desk arak)
=/ base=(set desk) (sy %base %kids ~)
%- ~(gas in base)
%+ murn ~(tap by ark)
|= [loc=desk ark=arak]
^- (unit desk)
?. liv.rein.ark `loc
?~ rail.ark `loc
?: paused.u.rail.ark `loc
~
:: +get-germ: select merge strategy into local desk :: +get-germ: select merge strategy into local desk
:: ::
:: If destination desk doesn't exist, need a %init merge. If this is :: If destination desk doesn't exist, need a %init merge. If this is