rpc: conform to new API
This commit is contained in:
parent
25a3cc480c
commit
585067c8f5
|
@ -73,10 +73,12 @@ func (p *ResourceProvider) Configure(c *terraform.ResourceConfig) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *ResourceProvider) Apply(
|
func (p *ResourceProvider) Apply(
|
||||||
s *terraform.ResourceState,
|
info *terraform.InstanceInfo,
|
||||||
d *terraform.ResourceDiff) (*terraform.ResourceState, error) {
|
s *terraform.InstanceState,
|
||||||
|
d *terraform.ResourceDiff) (*terraform.InstanceState, error) {
|
||||||
var resp ResourceProviderApplyResponse
|
var resp ResourceProviderApplyResponse
|
||||||
args := &ResourceProviderApplyArgs{
|
args := &ResourceProviderApplyArgs{
|
||||||
|
Info: info,
|
||||||
State: s,
|
State: s,
|
||||||
Diff: d,
|
Diff: d,
|
||||||
}
|
}
|
||||||
|
@ -93,10 +95,12 @@ func (p *ResourceProvider) Apply(
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *ResourceProvider) Diff(
|
func (p *ResourceProvider) Diff(
|
||||||
s *terraform.ResourceState,
|
info *terraform.InstanceInfo,
|
||||||
|
s *terraform.InstanceState,
|
||||||
c *terraform.ResourceConfig) (*terraform.ResourceDiff, error) {
|
c *terraform.ResourceConfig) (*terraform.ResourceDiff, error) {
|
||||||
var resp ResourceProviderDiffResponse
|
var resp ResourceProviderDiffResponse
|
||||||
args := &ResourceProviderDiffArgs{
|
args := &ResourceProviderDiffArgs{
|
||||||
|
Info: info,
|
||||||
State: s,
|
State: s,
|
||||||
Config: c,
|
Config: c,
|
||||||
}
|
}
|
||||||
|
@ -112,9 +116,15 @@ func (p *ResourceProvider) Diff(
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *ResourceProvider) Refresh(
|
func (p *ResourceProvider) Refresh(
|
||||||
s *terraform.ResourceState) (*terraform.ResourceState, error) {
|
info *terraform.InstanceInfo,
|
||||||
|
s *terraform.InstanceState) (*terraform.InstanceState, error) {
|
||||||
var resp ResourceProviderRefreshResponse
|
var resp ResourceProviderRefreshResponse
|
||||||
err := p.Client.Call(p.Name+".Refresh", s, &resp)
|
args := &ResourceProviderRefreshArgs{
|
||||||
|
Info: info,
|
||||||
|
State: s,
|
||||||
|
}
|
||||||
|
|
||||||
|
err := p.Client.Call(p.Name+".Refresh", args, &resp)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -148,17 +158,19 @@ type ResourceProviderConfigureResponse struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type ResourceProviderApplyArgs struct {
|
type ResourceProviderApplyArgs struct {
|
||||||
State *terraform.ResourceState
|
Info *terraform.InstanceInfo
|
||||||
|
State *terraform.InstanceState
|
||||||
Diff *terraform.ResourceDiff
|
Diff *terraform.ResourceDiff
|
||||||
}
|
}
|
||||||
|
|
||||||
type ResourceProviderApplyResponse struct {
|
type ResourceProviderApplyResponse struct {
|
||||||
State *terraform.ResourceState
|
State *terraform.InstanceState
|
||||||
Error *BasicError
|
Error *BasicError
|
||||||
}
|
}
|
||||||
|
|
||||||
type ResourceProviderDiffArgs struct {
|
type ResourceProviderDiffArgs struct {
|
||||||
State *terraform.ResourceState
|
Info *terraform.InstanceInfo
|
||||||
|
State *terraform.InstanceState
|
||||||
Config *terraform.ResourceConfig
|
Config *terraform.ResourceConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -167,8 +179,13 @@ type ResourceProviderDiffResponse struct {
|
||||||
Error *BasicError
|
Error *BasicError
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ResourceProviderRefreshArgs struct {
|
||||||
|
Info *terraform.InstanceInfo
|
||||||
|
State *terraform.InstanceState
|
||||||
|
}
|
||||||
|
|
||||||
type ResourceProviderRefreshResponse struct {
|
type ResourceProviderRefreshResponse struct {
|
||||||
State *terraform.ResourceState
|
State *terraform.InstanceState
|
||||||
Error *BasicError
|
Error *BasicError
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -234,7 +251,7 @@ func (s *ResourceProviderServer) Configure(
|
||||||
func (s *ResourceProviderServer) Apply(
|
func (s *ResourceProviderServer) Apply(
|
||||||
args *ResourceProviderApplyArgs,
|
args *ResourceProviderApplyArgs,
|
||||||
result *ResourceProviderApplyResponse) error {
|
result *ResourceProviderApplyResponse) error {
|
||||||
state, err := s.Provider.Apply(args.State, args.Diff)
|
state, err := s.Provider.Apply(args.Info, args.State, args.Diff)
|
||||||
*result = ResourceProviderApplyResponse{
|
*result = ResourceProviderApplyResponse{
|
||||||
State: state,
|
State: state,
|
||||||
Error: NewBasicError(err),
|
Error: NewBasicError(err),
|
||||||
|
@ -245,7 +262,7 @@ func (s *ResourceProviderServer) Apply(
|
||||||
func (s *ResourceProviderServer) Diff(
|
func (s *ResourceProviderServer) Diff(
|
||||||
args *ResourceProviderDiffArgs,
|
args *ResourceProviderDiffArgs,
|
||||||
result *ResourceProviderDiffResponse) error {
|
result *ResourceProviderDiffResponse) error {
|
||||||
diff, err := s.Provider.Diff(args.State, args.Config)
|
diff, err := s.Provider.Diff(args.Info, args.State, args.Config)
|
||||||
*result = ResourceProviderDiffResponse{
|
*result = ResourceProviderDiffResponse{
|
||||||
Diff: diff,
|
Diff: diff,
|
||||||
Error: NewBasicError(err),
|
Error: NewBasicError(err),
|
||||||
|
@ -254,9 +271,9 @@ func (s *ResourceProviderServer) Diff(
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *ResourceProviderServer) Refresh(
|
func (s *ResourceProviderServer) Refresh(
|
||||||
state *terraform.ResourceState,
|
args *ResourceProviderRefreshArgs,
|
||||||
result *ResourceProviderRefreshResponse) error {
|
result *ResourceProviderRefreshResponse) error {
|
||||||
newState, err := s.Provider.Refresh(state)
|
newState, err := s.Provider.Refresh(args.Info, args.State)
|
||||||
*result = ResourceProviderRefreshResponse{
|
*result = ResourceProviderRefreshResponse{
|
||||||
State: newState,
|
State: newState,
|
||||||
Error: NewBasicError(err),
|
Error: NewBasicError(err),
|
||||||
|
|
|
@ -101,14 +101,15 @@ func TestResourceProvider_apply(t *testing.T) {
|
||||||
}
|
}
|
||||||
provider := &ResourceProvider{Client: client, Name: name}
|
provider := &ResourceProvider{Client: client, Name: name}
|
||||||
|
|
||||||
p.ApplyReturn = &terraform.ResourceState{
|
p.ApplyReturn = &terraform.InstanceState{
|
||||||
ID: "bob",
|
ID: "bob",
|
||||||
}
|
}
|
||||||
|
|
||||||
// Apply
|
// Apply
|
||||||
state := &terraform.ResourceState{}
|
info := &terraform.InstanceInfo{}
|
||||||
|
state := &terraform.InstanceState{}
|
||||||
diff := &terraform.ResourceDiff{}
|
diff := &terraform.ResourceDiff{}
|
||||||
newState, err := provider.Apply(state, diff)
|
newState, err := provider.Apply(info, state, diff)
|
||||||
if !p.ApplyCalled {
|
if !p.ApplyCalled {
|
||||||
t.Fatal("apply should be called")
|
t.Fatal("apply should be called")
|
||||||
}
|
}
|
||||||
|
@ -142,11 +143,12 @@ func TestResourceProvider_diff(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Diff
|
// Diff
|
||||||
state := &terraform.ResourceState{}
|
info := &terraform.InstanceInfo{}
|
||||||
|
state := &terraform.InstanceState{}
|
||||||
config := &terraform.ResourceConfig{
|
config := &terraform.ResourceConfig{
|
||||||
Raw: map[string]interface{}{"foo": "bar"},
|
Raw: map[string]interface{}{"foo": "bar"},
|
||||||
}
|
}
|
||||||
diff, err := provider.Diff(state, config)
|
diff, err := provider.Diff(info, state, config)
|
||||||
if !p.DiffCalled {
|
if !p.DiffCalled {
|
||||||
t.Fatal("diff should be called")
|
t.Fatal("diff should be called")
|
||||||
}
|
}
|
||||||
|
@ -173,11 +175,12 @@ func TestResourceProvider_diff_error(t *testing.T) {
|
||||||
p.DiffReturnError = errors.New("foo")
|
p.DiffReturnError = errors.New("foo")
|
||||||
|
|
||||||
// Diff
|
// Diff
|
||||||
state := &terraform.ResourceState{}
|
info := &terraform.InstanceInfo{}
|
||||||
|
state := &terraform.InstanceState{}
|
||||||
config := &terraform.ResourceConfig{
|
config := &terraform.ResourceConfig{
|
||||||
Raw: map[string]interface{}{"foo": "bar"},
|
Raw: map[string]interface{}{"foo": "bar"},
|
||||||
}
|
}
|
||||||
diff, err := provider.Diff(state, config)
|
diff, err := provider.Diff(info, state, config)
|
||||||
if !p.DiffCalled {
|
if !p.DiffCalled {
|
||||||
t.Fatal("diff should be called")
|
t.Fatal("diff should be called")
|
||||||
}
|
}
|
||||||
|
@ -201,13 +204,14 @@ func TestResourceProvider_refresh(t *testing.T) {
|
||||||
}
|
}
|
||||||
provider := &ResourceProvider{Client: client, Name: name}
|
provider := &ResourceProvider{Client: client, Name: name}
|
||||||
|
|
||||||
p.RefreshReturn = &terraform.ResourceState{
|
p.RefreshReturn = &terraform.InstanceState{
|
||||||
ID: "bob",
|
ID: "bob",
|
||||||
}
|
}
|
||||||
|
|
||||||
// Refresh
|
// Refresh
|
||||||
state := &terraform.ResourceState{}
|
info := &terraform.InstanceInfo{}
|
||||||
newState, err := provider.Refresh(state)
|
state := &terraform.InstanceState{}
|
||||||
|
newState, err := provider.Refresh(info, state)
|
||||||
if !p.RefreshCalled {
|
if !p.RefreshCalled {
|
||||||
t.Fatal("refresh should be called")
|
t.Fatal("refresh should be called")
|
||||||
}
|
}
|
||||||
|
|
|
@ -36,7 +36,7 @@ func (p *ResourceProvisioner) Validate(c *terraform.ResourceConfig) ([]string, [
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *ResourceProvisioner) Apply(
|
func (p *ResourceProvisioner) Apply(
|
||||||
s *terraform.ResourceState,
|
s *terraform.InstanceState,
|
||||||
c *terraform.ResourceConfig) error {
|
c *terraform.ResourceConfig) error {
|
||||||
var resp ResourceProvisionerApplyResponse
|
var resp ResourceProvisionerApplyResponse
|
||||||
args := &ResourceProvisionerApplyArgs{
|
args := &ResourceProvisionerApplyArgs{
|
||||||
|
@ -65,7 +65,7 @@ type ResourceProvisionerValidateResponse struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
type ResourceProvisionerApplyArgs struct {
|
type ResourceProvisionerApplyArgs struct {
|
||||||
State *terraform.ResourceState
|
State *terraform.InstanceState
|
||||||
Config *terraform.ResourceConfig
|
Config *terraform.ResourceConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,7 @@ func TestResourceProvisioner_apply(t *testing.T) {
|
||||||
provisioner := &ResourceProvisioner{Client: client, Name: name}
|
provisioner := &ResourceProvisioner{Client: client, Name: name}
|
||||||
|
|
||||||
// Apply
|
// Apply
|
||||||
state := &terraform.ResourceState{}
|
state := &terraform.InstanceState{}
|
||||||
conf := &terraform.ResourceConfig{}
|
conf := &terraform.ResourceConfig{}
|
||||||
err = provisioner.Apply(state, conf)
|
err = provisioner.Apply(state, conf)
|
||||||
if !p.ApplyCalled {
|
if !p.ApplyCalled {
|
||||||
|
|
Loading…
Reference in New Issue