controller v0.269.0: whole restore from the second drive; crash loops stopped; exact image digests; steps judged by their own .felhom.yml (decisions 26-28, R-661 R-666 R-667 R-668 R-664 R-665 R-662, 09 6.4 part 6)
gates / gates (push) Successful in 27s
gates / gates (push) Successful in 27s
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
package stacks
|
||||
|
||||
import (
|
||||
"gitea.dooplex.hu/admin/felhom-controller/internal/util"
|
||||
|
||||
"bufio"
|
||||
"context"
|
||||
"fmt"
|
||||
@@ -171,6 +173,19 @@ type HDDDataResponse struct {
|
||||
Stack string `json:"stack"`
|
||||
HDDPaths []HDDPath `json:"hdd_paths"`
|
||||
HasHDDData bool `json:"has_hdd_data"`
|
||||
// KeepDataOnly (v0.269.0, `09` §3 decision 27, R-666): the app is held and its page says support is
|
||||
// informed — the remove dialog offers only "remove the app, keep my data", and the API refuses the rest.
|
||||
KeepDataOnly bool `json:"keep_data_only,omitempty"`
|
||||
}
|
||||
|
||||
// ErrRemoveKeepDataWhileSupport is the refusal of a data-deleting remove while support is informed.
|
||||
var ErrRemoveKeepDataWhileSupport = util.MsgError("err.stacks.remove_keep_data_while_support")
|
||||
|
||||
// RemoveKeepsDataOnly reports decision 27's condition for one app: held, and the hold names no whole
|
||||
// copy (the page says support is informed).
|
||||
func (m *Manager) RemoveKeepsDataOnly(name string) bool {
|
||||
st, ok := m.GetStack(name)
|
||||
return ok && st.HoldReason != "" && st.HoldNoWholeCopy
|
||||
}
|
||||
|
||||
// HDDPath represents a single HDD bind mount path and its status.
|
||||
|
||||
Reference in New Issue
Block a user