Files
2026-07-13 12:08:39 +08:00

31 lines
451 B
Go

package stacks
type deployGate struct {
start chan struct{}
abort chan struct{}
}
func newDeployGate() *deployGate {
return &deployGate{
start: make(chan struct{}),
abort: make(chan struct{}),
}
}
func (gate deployGate) wait() bool {
select {
case <-gate.start:
return true
case <-gate.abort:
return false
}
}
func (gate deployGate) startDeploy() {
close(gate.start)
}
func (gate deployGate) abortDeploy() {
close(gate.abort)
}