diff --git a/internal/core/project.go b/internal/core/project.go index 2cea8a78b..bdd94031f 100644 --- a/internal/core/project.go +++ b/internal/core/project.go @@ -68,7 +68,7 @@ func (p *Project) ActiveTargets() (activeTargets []core.Target, err error) { if err != nil { return nil, err } - if st == core.CREATED { + if st.IsActive() { activeTargets = append(activeTargets, t) } } @@ -302,7 +302,11 @@ func (p *Project) Target(nameOrId string, provider string) (core.Target, error) // on lookup, but once we know for sure that any Target that exists // already knows what its provider is, this should be able to be // removed. - if t.target.Provider == "" && provider != "" { + st, err := t.State() + if err != nil { + return nil, err + } + if provider != "" && !st.IsActive() { t.target.Provider = provider } return t, nil diff --git a/internal/core/target.go b/internal/core/target.go index 2467019f1..5e3a86b5d 100644 --- a/internal/core/target.go +++ b/internal/core/target.go @@ -114,7 +114,6 @@ func (t *Target) Provider() (p core.Provider, err error) { } // ProviderName implements core.Target -// TODO: Use actual value once provider is set on the go side func (t *Target) ProviderName() (string, error) { return t.target.Provider, nil }