Rename GetRes() which is not descriptive, to Kind()
This used to be GetType(), but since now things are "resources", we want to know what "kind" they are, since asking what "type" they are is confusing, and makes less logical sense than "Kind".
This commit is contained in:
20
exec.go
20
exec.go
@@ -59,7 +59,7 @@ func NewExecRes(name, cmd, shell string, timeout int, watchcmd, watchshell, ifcm
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (obj *ExecRes) GetRes() string {
|
func (obj *ExecRes) Kind() string {
|
||||||
return "Exec"
|
return "Exec"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -129,7 +129,7 @@ func (obj *ExecRes) Watch() {
|
|||||||
|
|
||||||
cmdReader, err := cmd.StdoutPipe()
|
cmdReader, err := cmd.StdoutPipe()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Printf("%v[%v]: Error creating StdoutPipe for Cmd: %v", obj.GetRes(), obj.GetName(), err)
|
log.Printf("%v[%v]: Error creating StdoutPipe for Cmd: %v", obj.Kind(), obj.GetName(), err)
|
||||||
log.Fatal(err) // XXX: how should we handle errors?
|
log.Fatal(err) // XXX: how should we handle errors?
|
||||||
}
|
}
|
||||||
scanner := bufio.NewScanner(cmdReader)
|
scanner := bufio.NewScanner(cmdReader)
|
||||||
@@ -141,7 +141,7 @@ func (obj *ExecRes) Watch() {
|
|||||||
cmd.Process.Kill() // TODO: is this necessary?
|
cmd.Process.Kill() // TODO: is this necessary?
|
||||||
}()
|
}()
|
||||||
if err := cmd.Start(); err != nil {
|
if err := cmd.Start(); err != nil {
|
||||||
log.Printf("%v[%v]: Error starting Cmd: %v", obj.GetRes(), obj.GetName(), err)
|
log.Printf("%v[%v]: Error starting Cmd: %v", obj.Kind(), obj.GetName(), err)
|
||||||
log.Fatal(err) // XXX: how should we handle errors?
|
log.Fatal(err) // XXX: how should we handle errors?
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -154,7 +154,7 @@ func (obj *ExecRes) Watch() {
|
|||||||
case text := <-bufioch:
|
case text := <-bufioch:
|
||||||
obj.SetConvergedState(resConvergedNil)
|
obj.SetConvergedState(resConvergedNil)
|
||||||
// each time we get a line of output, we loop!
|
// each time we get a line of output, we loop!
|
||||||
log.Printf("%v[%v]: Watch output: %s", obj.GetRes(), obj.GetName(), text)
|
log.Printf("%v[%v]: Watch output: %s", obj.Kind(), obj.GetName(), text)
|
||||||
if text != "" {
|
if text != "" {
|
||||||
send = true
|
send = true
|
||||||
}
|
}
|
||||||
@@ -164,10 +164,10 @@ func (obj *ExecRes) Watch() {
|
|||||||
if err == nil { // EOF
|
if err == nil { // EOF
|
||||||
// FIXME: add an "if watch command ends/crashes"
|
// FIXME: add an "if watch command ends/crashes"
|
||||||
// restart or generate error option
|
// restart or generate error option
|
||||||
log.Printf("%v[%v]: Reached EOF", obj.GetRes(), obj.GetName())
|
log.Printf("%v[%v]: Reached EOF", obj.Kind(), obj.GetName())
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
log.Printf("%v[%v]: Error reading input?: %v", obj.GetRes(), obj.GetName(), err)
|
log.Printf("%v[%v]: Error reading input?: %v", obj.Kind(), obj.GetName(), err)
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
// XXX: how should we handle errors?
|
// XXX: how should we handle errors?
|
||||||
|
|
||||||
@@ -195,7 +195,7 @@ func (obj *ExecRes) Watch() {
|
|||||||
|
|
||||||
// TODO: expand the IfCmd to be a list of commands
|
// TODO: expand the IfCmd to be a list of commands
|
||||||
func (obj *ExecRes) CheckApply(apply bool) (stateok bool, err error) {
|
func (obj *ExecRes) CheckApply(apply bool) (stateok bool, err error) {
|
||||||
log.Printf("%v[%v]: CheckApply(%t)", obj.GetRes(), obj.GetName(), apply)
|
log.Printf("%v[%v]: CheckApply(%t)", obj.Kind(), obj.GetName(), apply)
|
||||||
|
|
||||||
// if there is a watch command, but no if command, run based on state
|
// if there is a watch command, but no if command, run based on state
|
||||||
if obj.WatchCmd != "" && obj.IfCmd == "" {
|
if obj.WatchCmd != "" && obj.IfCmd == "" {
|
||||||
@@ -269,7 +269,7 @@ func (obj *ExecRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
cmd.Stdout = &out
|
cmd.Stdout = &out
|
||||||
|
|
||||||
if err = cmd.Start(); err != nil {
|
if err = cmd.Start(); err != nil {
|
||||||
log.Printf("%v[%v]: Error starting Cmd: %v", obj.GetRes(), obj.GetName(), err)
|
log.Printf("%v[%v]: Error starting Cmd: %v", obj.Kind(), obj.GetName(), err)
|
||||||
return false, err
|
return false, err
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -283,12 +283,12 @@ func (obj *ExecRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
select {
|
select {
|
||||||
case err = <-done:
|
case err = <-done:
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Printf("%v[%v]: Error waiting for Cmd: %v", obj.GetRes(), obj.GetName(), err)
|
log.Printf("%v[%v]: Error waiting for Cmd: %v", obj.Kind(), obj.GetName(), err)
|
||||||
return false, err
|
return false, err
|
||||||
}
|
}
|
||||||
|
|
||||||
case <-TimeAfterOrBlock(timeout):
|
case <-TimeAfterOrBlock(timeout):
|
||||||
log.Printf("%v[%v]: Timeout waiting for Cmd", obj.GetRes(), obj.GetName())
|
log.Printf("%v[%v]: Timeout waiting for Cmd", obj.Kind(), obj.GetName())
|
||||||
//cmd.Process.Kill() // TODO: is this necessary?
|
//cmd.Process.Kill() // TODO: is this necessary?
|
||||||
return false, errors.New("Timeout waiting for Cmd!")
|
return false, errors.New("Timeout waiting for Cmd!")
|
||||||
}
|
}
|
||||||
|
|||||||
6
file.go
6
file.go
@@ -58,7 +58,7 @@ func NewFileRes(name, path, dirname, basename, content, state string) *FileRes {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (obj *FileRes) GetRes() string {
|
func (obj *FileRes) Kind() string {
|
||||||
return "File"
|
return "File"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -142,7 +142,7 @@ func (obj *FileRes) Watch() {
|
|||||||
} else if err == syscall.ENOSPC {
|
} else if err == syscall.ENOSPC {
|
||||||
// XXX: occasionally: no space left on device,
|
// XXX: occasionally: no space left on device,
|
||||||
// XXX: probably due to lack of inotify watches
|
// XXX: probably due to lack of inotify watches
|
||||||
log.Printf("%v[%v]: Out of inotify watches!", obj.GetRes(), obj.GetName())
|
log.Printf("%v[%v]: Out of inotify watches!", obj.Kind(), obj.GetName())
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
} else {
|
} else {
|
||||||
log.Printf("Unknown file[%v] error:", obj.Name)
|
log.Printf("Unknown file[%v] error:", obj.Name)
|
||||||
@@ -318,7 +318,7 @@ func (obj *FileRes) FileApply() error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (obj *FileRes) CheckApply(apply bool) (stateok bool, err error) {
|
func (obj *FileRes) CheckApply(apply bool) (stateok bool, err error) {
|
||||||
log.Printf("%v[%v]: CheckApply(%t)", obj.GetRes(), obj.GetName(), apply)
|
log.Printf("%v[%v]: CheckApply(%t)", obj.Kind(), obj.GetName(), apply)
|
||||||
|
|
||||||
if obj.isStateOK { // cache the state
|
if obj.isStateOK { // cache the state
|
||||||
return true, nil
|
return true, nil
|
||||||
|
|||||||
@@ -241,7 +241,7 @@ func (g *Graph) Graphviz() (out string) {
|
|||||||
//out += "\tnode [shape=box];\n"
|
//out += "\tnode [shape=box];\n"
|
||||||
str := ""
|
str := ""
|
||||||
for i := range g.Adjacency { // reverse paths
|
for i := range g.Adjacency { // reverse paths
|
||||||
out += fmt.Sprintf("\t%v [label=\"%v[%v]\"];\n", i.GetName(), i.GetRes(), i.GetName())
|
out += fmt.Sprintf("\t%v [label=\"%v[%v]\"];\n", i.GetName(), i.Kind(), i.GetName())
|
||||||
for j := range g.Adjacency[i] {
|
for j := range g.Adjacency[i] {
|
||||||
k := g.Adjacency[i][j]
|
k := g.Adjacency[i][j]
|
||||||
// use str for clearer output ordering
|
// use str for clearer output ordering
|
||||||
@@ -556,7 +556,7 @@ func (g *Graph) Start(wg *sync.WaitGroup, first bool) { // start or continue
|
|||||||
go func(vv *Vertex) {
|
go func(vv *Vertex) {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
vv.Res.Watch()
|
vv.Res.Watch()
|
||||||
log.Printf("%v[%v]: Exited", vv.GetRes(), vv.GetName())
|
log.Printf("%v[%v]: Exited", vv.Kind(), vv.GetName())
|
||||||
}(v)
|
}(v)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -577,7 +577,7 @@ func (g *Graph) Start(wg *sync.WaitGroup, first bool) { // start or continue
|
|||||||
for !v.Res.SendEvent(eventStart, true, false) {
|
for !v.Res.SendEvent(eventStart, true, false) {
|
||||||
if DEBUG {
|
if DEBUG {
|
||||||
// if SendEvent fails, we aren't up yet
|
// if SendEvent fails, we aren't up yet
|
||||||
log.Printf("%v[%v]: Retrying SendEvent(Start)", v.GetRes(), v.GetName())
|
log.Printf("%v[%v]: Retrying SendEvent(Start)", v.Kind(), v.GetName())
|
||||||
// sleep here briefly or otherwise cause
|
// sleep here briefly or otherwise cause
|
||||||
// a different goroutine to be scheduled
|
// a different goroutine to be scheduled
|
||||||
time.Sleep(1 * time.Millisecond)
|
time.Sleep(1 * time.Millisecond)
|
||||||
|
|||||||
10
pkg.go
10
pkg.go
@@ -47,7 +47,7 @@ func NewPkgRes(name, state string, allowuntrusted, allownonfree, allowunsupporte
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (obj *PkgRes) GetRes() string {
|
func (obj *PkgRes) Kind() string {
|
||||||
return "Pkg"
|
return "Pkg"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -136,10 +136,10 @@ func (obj *PkgRes) Watch() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (obj *PkgRes) CheckApply(apply bool) (stateok bool, err error) {
|
func (obj *PkgRes) CheckApply(apply bool) (stateok bool, err error) {
|
||||||
log.Printf("%v[%v]: CheckApply(%t)", obj.GetRes(), obj.GetName(), apply)
|
log.Printf("%v[%v]: CheckApply(%t)", obj.Kind(), obj.GetName(), apply)
|
||||||
|
|
||||||
if obj.State == "" { // TODO: Validate() should replace this check!
|
if obj.State == "" { // TODO: Validate() should replace this check!
|
||||||
log.Fatalf("%v[%v]: Package state is undefined!", obj.GetRes(), obj.GetName())
|
log.Fatalf("%v[%v]: Package state is undefined!", obj.Kind(), obj.GetName())
|
||||||
}
|
}
|
||||||
|
|
||||||
if obj.isStateOK { // cache the state
|
if obj.isStateOK { // cache the state
|
||||||
@@ -254,7 +254,7 @@ func (obj *PkgRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
transactionFlags += PK_TRANSACTION_FLAG_ENUM_ONLY_TRUSTED
|
transactionFlags += PK_TRANSACTION_FLAG_ENUM_ONLY_TRUSTED
|
||||||
}
|
}
|
||||||
// apply correct state!
|
// apply correct state!
|
||||||
log.Printf("%v[%v]: Set: %v...", obj.GetRes(), obj.GetName(), obj.State)
|
log.Printf("%v[%v]: Set: %v...", obj.Kind(), obj.GetName(), obj.State)
|
||||||
switch obj.State {
|
switch obj.State {
|
||||||
case "uninstalled": // run remove
|
case "uninstalled": // run remove
|
||||||
// NOTE: packageId is different than when installed, because now
|
// NOTE: packageId is different than when installed, because now
|
||||||
@@ -272,7 +272,7 @@ func (obj *PkgRes) CheckApply(apply bool) (stateok bool, err error) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return false, err // fail
|
return false, err // fail
|
||||||
}
|
}
|
||||||
log.Printf("%v[%v]: Set: %v success!", obj.GetRes(), obj.GetName(), obj.State)
|
log.Printf("%v[%v]: Set: %v success!", obj.Kind(), obj.GetName(), obj.State)
|
||||||
return false, nil // success
|
return false, nil // success
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
30
resources.go
30
resources.go
@@ -45,7 +45,7 @@ const (
|
|||||||
type Res interface {
|
type Res interface {
|
||||||
Init()
|
Init()
|
||||||
GetName() string // can't be named "Name()" because of struct field
|
GetName() string // can't be named "Name()" because of struct field
|
||||||
GetRes() string
|
Kind() string
|
||||||
Watch()
|
Watch()
|
||||||
CheckApply(bool) (bool, error)
|
CheckApply(bool) (bool, error)
|
||||||
SetVertex(*Vertex)
|
SetVertex(*Vertex)
|
||||||
@@ -105,7 +105,7 @@ func (obj *BaseRes) GetName() string {
|
|||||||
return obj.Name
|
return obj.Name
|
||||||
}
|
}
|
||||||
|
|
||||||
func (obj *BaseRes) GetRes() string {
|
func (obj *BaseRes) Kind() string {
|
||||||
return "Base"
|
return "Base"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -146,7 +146,7 @@ func (obj *BaseRes) GetState() resState {
|
|||||||
|
|
||||||
func (obj *BaseRes) SetState(state resState) {
|
func (obj *BaseRes) SetState(state resState) {
|
||||||
if DEBUG {
|
if DEBUG {
|
||||||
log.Printf("%v[%v]: State: %v -> %v", obj.GetRes(), obj.GetName(), obj.GetState(), state)
|
log.Printf("%v[%v]: State: %v -> %v", obj.Kind(), obj.GetName(), obj.GetState(), state)
|
||||||
}
|
}
|
||||||
obj.state = state
|
obj.state = state
|
||||||
}
|
}
|
||||||
@@ -174,7 +174,7 @@ func (obj *BaseRes) OKTimestamp() bool {
|
|||||||
// b/c we should let our pre-req's go first...
|
// b/c we should let our pre-req's go first...
|
||||||
x, y := obj.GetTimestamp(), n.Res.GetTimestamp()
|
x, y := obj.GetTimestamp(), n.Res.GetTimestamp()
|
||||||
if DEBUG {
|
if DEBUG {
|
||||||
log.Printf("%v[%v]: OKTimestamp: (%v) >= %v[%v](%v): !%v", obj.GetRes(), obj.GetName(), x, n.GetRes(), n.GetName(), y, x >= y)
|
log.Printf("%v[%v]: OKTimestamp: (%v) >= %v[%v](%v): !%v", obj.Kind(), obj.GetName(), x, n.Kind(), n.GetName(), y, x >= y)
|
||||||
}
|
}
|
||||||
if x >= y {
|
if x >= y {
|
||||||
return false
|
return false
|
||||||
@@ -195,12 +195,12 @@ func (obj *BaseRes) Poke(activity bool) {
|
|||||||
// XXX: if n.Res.GetState() != resStateEvent { // is this correct?
|
// XXX: if n.Res.GetState() != resStateEvent { // is this correct?
|
||||||
if true { // XXX
|
if true { // XXX
|
||||||
if DEBUG {
|
if DEBUG {
|
||||||
log.Printf("%v[%v]: Poke: %v[%v]", v.GetRes(), v.GetName(), n.GetRes(), n.GetName())
|
log.Printf("%v[%v]: Poke: %v[%v]", v.Kind(), v.GetName(), n.Kind(), n.GetName())
|
||||||
}
|
}
|
||||||
n.SendEvent(eventPoke, false, activity) // XXX: can this be switched to sync?
|
n.SendEvent(eventPoke, false, activity) // XXX: can this be switched to sync?
|
||||||
} else {
|
} else {
|
||||||
if DEBUG {
|
if DEBUG {
|
||||||
log.Printf("%v[%v]: Poke: %v[%v]: Skipped!", v.GetRes(), v.GetName(), n.GetRes(), n.GetName())
|
log.Printf("%v[%v]: Poke: %v[%v]: Skipped!", v.Kind(), v.GetName(), n.Kind(), n.GetName())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -221,12 +221,12 @@ func (obj *BaseRes) BackPoke() {
|
|||||||
// happens earlier in the state cycle and that doesn't wrap nil
|
// happens earlier in the state cycle and that doesn't wrap nil
|
||||||
if x >= y && (s != resStateEvent && s != resStateCheckApply) {
|
if x >= y && (s != resStateEvent && s != resStateCheckApply) {
|
||||||
if DEBUG {
|
if DEBUG {
|
||||||
log.Printf("%v[%v]: BackPoke: %v[%v]", v.GetRes(), v.GetName(), n.GetRes(), n.GetName())
|
log.Printf("%v[%v]: BackPoke: %v[%v]", v.Kind(), v.GetName(), n.Kind(), n.GetName())
|
||||||
}
|
}
|
||||||
n.SendEvent(eventBackPoke, false, false) // XXX: can this be switched to sync?
|
n.SendEvent(eventBackPoke, false, false) // XXX: can this be switched to sync?
|
||||||
} else {
|
} else {
|
||||||
if DEBUG {
|
if DEBUG {
|
||||||
log.Printf("%v[%v]: BackPoke: %v[%v]: Skipped!", v.GetRes(), v.GetName(), n.GetRes(), n.GetName())
|
log.Printf("%v[%v]: BackPoke: %v[%v]: Skipped!", v.Kind(), v.GetName(), n.Kind(), n.GetName())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -282,7 +282,7 @@ func (obj *BaseRes) ReadEvent(event *Event) (exit, poke bool) {
|
|||||||
return false, false // don't poke on unpause!
|
return false, false // don't poke on unpause!
|
||||||
} else {
|
} else {
|
||||||
// if we get a poke event here, it's a bug!
|
// if we get a poke event here, it's a bug!
|
||||||
log.Fatalf("%v[%v]: Unknown event: %v, while paused!", obj.GetRes(), obj.GetName(), e)
|
log.Fatalf("%v[%v]: Unknown event: %v, while paused!", obj.Kind(), obj.GetName(), e)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -295,7 +295,7 @@ func (obj *BaseRes) ReadEvent(event *Event) (exit, poke bool) {
|
|||||||
// XXX: rename this function
|
// XXX: rename this function
|
||||||
func Process(obj Res) {
|
func Process(obj Res) {
|
||||||
if DEBUG {
|
if DEBUG {
|
||||||
log.Printf("%v[%v]: Process()", obj.GetRes(), obj.GetName())
|
log.Printf("%v[%v]: Process()", obj.Kind(), obj.GetName())
|
||||||
}
|
}
|
||||||
obj.SetState(resStateEvent)
|
obj.SetState(resStateEvent)
|
||||||
var ok = true
|
var ok = true
|
||||||
@@ -305,17 +305,17 @@ func Process(obj Res) {
|
|||||||
// us back and we will run if needed then!
|
// us back and we will run if needed then!
|
||||||
if obj.OKTimestamp() {
|
if obj.OKTimestamp() {
|
||||||
if DEBUG {
|
if DEBUG {
|
||||||
log.Printf("%v[%v]: OKTimestamp(%v)", obj.GetRes(), obj.GetName(), obj.GetTimestamp())
|
log.Printf("%v[%v]: OKTimestamp(%v)", obj.Kind(), obj.GetName(), obj.GetTimestamp())
|
||||||
}
|
}
|
||||||
|
|
||||||
obj.SetState(resStateCheckApply)
|
obj.SetState(resStateCheckApply)
|
||||||
// if this fails, don't UpdateTimestamp()
|
// if this fails, don't UpdateTimestamp()
|
||||||
stateok, err := obj.CheckApply(true)
|
stateok, err := obj.CheckApply(true)
|
||||||
if stateok && err != nil { // should never return this way
|
if stateok && err != nil { // should never return this way
|
||||||
log.Fatalf("%v[%v]: CheckApply(): %t, %+v", obj.GetRes(), obj.GetName(), stateok, err)
|
log.Fatalf("%v[%v]: CheckApply(): %t, %+v", obj.Kind(), obj.GetName(), stateok, err)
|
||||||
}
|
}
|
||||||
if DEBUG {
|
if DEBUG {
|
||||||
log.Printf("%v[%v]: CheckApply(): %t, %v", obj.GetRes(), obj.GetName(), stateok, err)
|
log.Printf("%v[%v]: CheckApply(): %t, %v", obj.Kind(), obj.GetName(), stateok, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
if !stateok { // if state *was* not ok, we had to have apply'ed
|
if !stateok { // if state *was* not ok, we had to have apply'ed
|
||||||
@@ -340,7 +340,7 @@ func Process(obj Res) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (obj *NoopRes) GetRes() string {
|
func (obj *NoopRes) Kind() string {
|
||||||
return "Noop"
|
return "Noop"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -388,7 +388,7 @@ func (obj *NoopRes) Watch() {
|
|||||||
|
|
||||||
// CheckApply method for Noop resource. Does nothing, returns happy!
|
// CheckApply method for Noop resource. Does nothing, returns happy!
|
||||||
func (obj *NoopRes) CheckApply(apply bool) (stateok bool, err error) {
|
func (obj *NoopRes) CheckApply(apply bool) (stateok bool, err error) {
|
||||||
log.Printf("%v[%v]: CheckApply(%t)", obj.GetRes(), obj.GetName(), apply)
|
log.Printf("%v[%v]: CheckApply(%t)", obj.Kind(), obj.GetName(), apply)
|
||||||
return true, nil // state is always okay
|
return true, nil // state is always okay
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
4
svc.go
4
svc.go
@@ -46,7 +46,7 @@ func NewSvcRes(name, state, startup string) *SvcRes {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (obj *SvcRes) GetRes() string {
|
func (obj *SvcRes) Kind() string {
|
||||||
return "Svc"
|
return "Svc"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -216,7 +216,7 @@ func (obj *SvcRes) Watch() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (obj *SvcRes) CheckApply(apply bool) (stateok bool, err error) {
|
func (obj *SvcRes) CheckApply(apply bool) (stateok bool, err error) {
|
||||||
log.Printf("%v[%v]: CheckApply(%t)", obj.GetRes(), obj.GetName(), apply)
|
log.Printf("%v[%v]: CheckApply(%t)", obj.Kind(), obj.GetName(), apply)
|
||||||
|
|
||||||
if obj.isStateOK { // cache the state
|
if obj.isStateOK { // cache the state
|
||||||
return true, nil
|
return true, nil
|
||||||
|
|||||||
Reference in New Issue
Block a user