core: Reinstate state-based tracking of data resource dependencies
This was inadvertently lost in the consoliation of EvalReadDataDiff and EvalReadDataApply into a single EvalReadData.
This commit is contained in:
parent
206a4b5de9
commit
dd8b3ab722
|
@ -21,6 +21,7 @@ import (
|
|||
type EvalReadData struct {
|
||||
Addr addrs.ResourceInstance
|
||||
Config *configs.Resource
|
||||
Dependencies []addrs.Referenceable
|
||||
Provider *providers.Interface
|
||||
ProviderAddr addrs.AbsProviderConfig
|
||||
ProviderSchema **ProviderSchema
|
||||
|
@ -157,6 +158,7 @@ func (n *EvalReadData) Eval(ctx EvalContext) (interface{}, error) {
|
|||
state := &states.ResourceInstanceObject{
|
||||
Value: change.After,
|
||||
Status: states.ObjectPlanned, // because the partial value in the plan must be used for now
|
||||
Dependencies: n.Dependencies,
|
||||
}
|
||||
*n.OutputState = state
|
||||
}
|
||||
|
@ -241,6 +243,7 @@ func (n *EvalReadData) Eval(ctx EvalContext) (interface{}, error) {
|
|||
state := &states.ResourceInstanceObject{
|
||||
Value: change.After,
|
||||
Status: states.ObjectReady, // because we completed the read from the provider
|
||||
Dependencies: n.Dependencies,
|
||||
}
|
||||
|
||||
err = ctx.Hook(func(h Hook) (HookAction, error) {
|
||||
|
|
|
@ -166,6 +166,7 @@ func (n *NodeRefreshableDataResourceInstance) EvalTree() EvalNode {
|
|||
&EvalReadData{
|
||||
Addr: addr.Resource,
|
||||
Config: n.Config,
|
||||
Dependencies: n.StateReferences(),
|
||||
Provider: &provider,
|
||||
ProviderAddr: n.ResolvedProvider,
|
||||
ProviderSchema: &providerSchema,
|
||||
|
|
|
@ -156,6 +156,7 @@ func (n *NodeApplyableResourceInstance) evalTreeDataResource(addr addrs.AbsResou
|
|||
&EvalReadData{
|
||||
Addr: addr.Resource,
|
||||
Config: n.Config,
|
||||
Dependencies: n.StateReferences(),
|
||||
Planned: &change, // setting this indicates that the result must be complete
|
||||
Provider: &provider,
|
||||
ProviderAddr: n.ResolvedProvider,
|
||||
|
|
|
@ -98,6 +98,7 @@ func (n *NodePlannableResourceInstance) evalTreeDataResource(addr addrs.AbsResou
|
|||
&EvalReadData{
|
||||
Addr: addr.Resource,
|
||||
Config: n.Config,
|
||||
Dependencies: n.StateReferences(),
|
||||
Provider: &provider,
|
||||
ProviderAddr: n.ResolvedProvider,
|
||||
ProviderSchema: &providerSchema,
|
||||
|
|
Loading…
Reference in New Issue