remove unused
This commit is contained in:
parent
729c9b6f10
commit
810ab0386f
|
@ -43,10 +43,7 @@ func (n *nodeExpandApplyableResource) DynamicExpand(ctx EvalContext) (*Graph, er
|
|||
|
||||
expander := ctx.InstanceExpander()
|
||||
moduleInstances := expander.ExpandModule(n.Addr.Module)
|
||||
var resources []addrs.AbsResource
|
||||
for _, module := range moduleInstances {
|
||||
resAddr := n.Addr.Resource.Absolute(module)
|
||||
resources = append(resources, resAddr)
|
||||
g.Add(&NodeApplyableResource{
|
||||
NodeAbstractResource: n.NodeAbstractResource,
|
||||
Addr: n.Addr.Resource.Absolute(module),
|
||||
|
|
|
@ -73,13 +73,11 @@ func (n *nodeExpandPlannableResource) DynamicExpand(ctx EvalContext) (*Graph, er
|
|||
var g Graph
|
||||
|
||||
expander := ctx.InstanceExpander()
|
||||
var resources []addrs.AbsResource
|
||||
moduleInstances := expander.ExpandModule(n.Addr.Module)
|
||||
|
||||
// Add the current expanded resource to the graph
|
||||
for _, module := range moduleInstances {
|
||||
resAddr := n.Addr.Resource.Absolute(module)
|
||||
resources = append(resources, resAddr)
|
||||
g.Add(&NodePlannableResource{
|
||||
NodeAbstractResource: n.NodeAbstractResource,
|
||||
Addr: resAddr,
|
||||
|
@ -172,11 +170,6 @@ func (n *NodePlannableResource) Name() string {
|
|||
return n.Addr.String()
|
||||
}
|
||||
|
||||
// GraphNodeModuleInstance
|
||||
func (n *NodePlannableResource) ModuleInstance() addrs.ModuleInstance {
|
||||
return n.Addr.Module
|
||||
}
|
||||
|
||||
// GraphNodeExecutable
|
||||
func (n *NodePlannableResource) Execute(ctx EvalContext, op walkOperation) tfdiags.Diagnostics {
|
||||
if n.Config == nil {
|
||||
|
|
|
@ -1,22 +1,10 @@
|
|||
package terraform
|
||||
|
||||
import (
|
||||
"github.com/hashicorp/terraform/addrs"
|
||||
"github.com/hashicorp/terraform/configs/configschema"
|
||||
"github.com/hashicorp/terraform/providers"
|
||||
"github.com/zclconf/go-cty/cty"
|
||||
)
|
||||
|
||||
// testProviderComponentFactory creates a componentFactory that contains only
|
||||
// a single given.
|
||||
func testProviderComponentFactory(name string, provider providers.Interface) *basicComponentFactory {
|
||||
return &basicComponentFactory{
|
||||
providers: map[addrs.Provider]providers.Factory{
|
||||
addrs.NewDefaultProvider(name): providers.FactoryFixed(provider),
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
// mockProviderWithConfigSchema is a test helper to concisely create a mock
|
||||
// provider with the given schema for its own configuration.
|
||||
func mockProviderWithConfigSchema(schema *configschema.Block) *MockProvider {
|
||||
|
|
|
@ -274,10 +274,3 @@ func (ps *ProviderSchema) SchemaForResourceType(mode addrs.ResourceMode, typeNam
|
|||
func (ps *ProviderSchema) SchemaForResourceAddr(addr addrs.Resource) (schema *configschema.Block, version uint64) {
|
||||
return ps.SchemaForResourceType(addr.Mode, addr.Type)
|
||||
}
|
||||
|
||||
// ProviderSchemaRequest is used to describe to a ResourceProvider which
|
||||
// aspects of schema are required, when calling the GetSchema method.
|
||||
type ProviderSchemaRequest struct {
|
||||
ResourceTypes []string
|
||||
DataSources []string
|
||||
}
|
||||
|
|
|
@ -12,7 +12,6 @@ import (
|
|||
|
||||
"github.com/davecgh/go-spew/spew"
|
||||
"github.com/zclconf/go-cty/cty"
|
||||
"github.com/zclconf/go-cty/cty/convert"
|
||||
|
||||
"github.com/hashicorp/terraform/addrs"
|
||||
"github.com/hashicorp/terraform/configs"
|
||||
|
@ -55,37 +54,6 @@ func TestMain(m *testing.M) {
|
|||
os.Exit(m.Run())
|
||||
}
|
||||
|
||||
func tempDir(t *testing.T) string {
|
||||
t.Helper()
|
||||
|
||||
dir, err := ioutil.TempDir("", "tf")
|
||||
if err != nil {
|
||||
t.Fatalf("err: %s", err)
|
||||
}
|
||||
if err := os.RemoveAll(dir); err != nil {
|
||||
t.Fatalf("err: %s", err)
|
||||
}
|
||||
|
||||
return dir
|
||||
}
|
||||
|
||||
// tempEnv lets you temporarily set an environment variable. It returns
|
||||
// a function to defer to reset the old value.
|
||||
// the old value that should be set via a defer.
|
||||
func tempEnv(t *testing.T, k string, v string) func() {
|
||||
t.Helper()
|
||||
|
||||
old, oldOk := os.LookupEnv(k)
|
||||
os.Setenv(k, v)
|
||||
return func() {
|
||||
if !oldOk {
|
||||
os.Unsetenv(k)
|
||||
} else {
|
||||
os.Setenv(k, old)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func testModule(t *testing.T, name string) *configs.Config {
|
||||
t.Helper()
|
||||
c, _ := testModuleWithSnapshot(t, name)
|
||||
|
@ -208,20 +176,6 @@ func testSetResourceInstanceTainted(module *states.Module, resource, attrsJson,
|
|||
)
|
||||
}
|
||||
|
||||
// testSetResourceInstanceDeposed is a helper function for tests that sets a
|
||||
// Deposed resource instance for the given module.
|
||||
func testSetResourceInstanceDeposed(module *states.Module, resource, attrsJson, provider string, key states.DeposedKey) {
|
||||
module.SetResourceInstanceDeposed(
|
||||
mustResourceInstanceAddr(resource).Resource,
|
||||
key,
|
||||
&states.ResourceInstanceObjectSrc{
|
||||
Status: states.ObjectTainted,
|
||||
AttrsJSON: []byte(attrsJson),
|
||||
},
|
||||
mustProviderConfig(provider),
|
||||
)
|
||||
}
|
||||
|
||||
func testProviderFuncFixed(rp providers.Interface) providers.Factory {
|
||||
return func() (providers.Interface, error) {
|
||||
return rp, nil
|
||||
|
@ -266,22 +220,6 @@ func mustProviderConfig(s string) addrs.AbsProviderConfig {
|
|||
return p
|
||||
}
|
||||
|
||||
func instanceObjectIdForTests(obj *states.ResourceInstanceObject) string {
|
||||
v := obj.Value
|
||||
if v.IsNull() || !v.IsKnown() {
|
||||
return ""
|
||||
}
|
||||
idVal := v.GetAttr("id")
|
||||
if idVal.IsNull() || !idVal.IsKnown() {
|
||||
return ""
|
||||
}
|
||||
idVal, err := convert.Convert(idVal, cty.String)
|
||||
if err != nil {
|
||||
return "<invalid>" // placeholder value
|
||||
}
|
||||
return idVal.AsString()
|
||||
}
|
||||
|
||||
// HookRecordApplyOrder is a test hook that records the order of applies
|
||||
// by recording the PreApply event.
|
||||
type HookRecordApplyOrder struct {
|
||||
|
@ -320,21 +258,6 @@ func (h *HookRecordApplyOrder) PreApply(addr addrs.AbsResourceInstance, gen stat
|
|||
// Below are all the constant strings that are the expected output for
|
||||
// various tests.
|
||||
|
||||
const testTerraformInputProviderStr = `
|
||||
aws_instance.bar:
|
||||
ID = foo
|
||||
provider = provider["registry.terraform.io/hashicorp/aws"]
|
||||
bar = override
|
||||
foo = us-east-1
|
||||
type = aws_instance
|
||||
aws_instance.foo:
|
||||
ID = foo
|
||||
provider = provider["registry.terraform.io/hashicorp/aws"]
|
||||
bar = baz
|
||||
num = 2
|
||||
type = aws_instance
|
||||
`
|
||||
|
||||
const testTerraformInputProviderOnlyStr = `
|
||||
aws_instance.foo:
|
||||
ID = foo
|
||||
|
@ -343,38 +266,6 @@ aws_instance.foo:
|
|||
type = aws_instance
|
||||
`
|
||||
|
||||
const testTerraformInputVarOnlyStr = `
|
||||
aws_instance.foo:
|
||||
ID = foo
|
||||
provider = provider["registry.terraform.io/hashicorp/aws"]
|
||||
foo = us-east-1
|
||||
type = aws_instance
|
||||
`
|
||||
|
||||
const testTerraformInputVarOnlyUnsetStr = `
|
||||
aws_instance.foo:
|
||||
ID = foo
|
||||
provider = provider["registry.terraform.io/hashicorp/aws"]
|
||||
bar = baz
|
||||
foo = foovalue
|
||||
type = aws_instance
|
||||
`
|
||||
|
||||
const testTerraformInputVarsStr = `
|
||||
aws_instance.bar:
|
||||
ID = foo
|
||||
provider = provider["registry.terraform.io/hashicorp/aws"]
|
||||
bar = override
|
||||
foo = us-east-1
|
||||
type = aws_instance
|
||||
aws_instance.foo:
|
||||
ID = foo
|
||||
provider = provider["registry.terraform.io/hashicorp/aws"]
|
||||
bar = baz
|
||||
num = 2
|
||||
type = aws_instance
|
||||
`
|
||||
|
||||
const testTerraformApplyStr = `
|
||||
aws_instance.bar:
|
||||
ID = foo
|
||||
|
@ -1171,199 +1062,6 @@ aws_instance.bar:
|
|||
type = aws_instance
|
||||
`
|
||||
|
||||
const testTerraformPlanStr = `
|
||||
DIFF:
|
||||
|
||||
CREATE: aws_instance.bar
|
||||
foo: "" => "2"
|
||||
type: "" => "aws_instance"
|
||||
CREATE: aws_instance.foo
|
||||
num: "" => "2"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
STATE:
|
||||
|
||||
<no state>
|
||||
`
|
||||
|
||||
const testTerraformPlanComputedIdStr = `
|
||||
DIFF:
|
||||
|
||||
CREATE: aws_instance.bar
|
||||
foo: "" => "<computed>"
|
||||
type: "" => "aws_instance"
|
||||
CREATE: aws_instance.foo
|
||||
foo: "" => "<computed>"
|
||||
num: "" => "2"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
STATE:
|
||||
|
||||
<no state>
|
||||
`
|
||||
|
||||
const testTerraformPlanCountIndexZeroStr = `
|
||||
DIFF:
|
||||
|
||||
CREATE: aws_instance.foo
|
||||
foo: "" => "0"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
STATE:
|
||||
|
||||
<no state>
|
||||
`
|
||||
|
||||
const testTerraformPlanEmptyStr = `
|
||||
DIFF:
|
||||
|
||||
CREATE: aws_instance.bar
|
||||
CREATE: aws_instance.foo
|
||||
|
||||
STATE:
|
||||
|
||||
<no state>
|
||||
`
|
||||
|
||||
const testTerraformPlanEscapedVarStr = `
|
||||
DIFF:
|
||||
|
||||
CREATE: aws_instance.foo
|
||||
foo: "" => "bar-${baz}"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
STATE:
|
||||
|
||||
<no state>
|
||||
`
|
||||
|
||||
const testTerraformPlanModulesStr = `
|
||||
DIFF:
|
||||
|
||||
CREATE: aws_instance.bar
|
||||
foo: "" => "2"
|
||||
type: "" => "aws_instance"
|
||||
CREATE: aws_instance.foo
|
||||
num: "" => "2"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
module.child:
|
||||
CREATE: aws_instance.foo
|
||||
num: "" => "2"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
STATE:
|
||||
|
||||
<no state>
|
||||
`
|
||||
|
||||
const testTerraformPlanModuleCycleStr = `
|
||||
DIFF:
|
||||
|
||||
CREATE: aws_instance.b
|
||||
CREATE: aws_instance.c
|
||||
some_input: "" => "<computed>"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
STATE:
|
||||
|
||||
<no state>
|
||||
`
|
||||
|
||||
const testTerraformPlanModuleInputStr = `
|
||||
DIFF:
|
||||
|
||||
CREATE: aws_instance.bar
|
||||
foo: "" => "2"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
module.child:
|
||||
CREATE: aws_instance.foo
|
||||
foo: "" => "42"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
STATE:
|
||||
|
||||
<no state>
|
||||
`
|
||||
|
||||
const testTerraformPlanModuleInputComputedStr = `
|
||||
DIFF:
|
||||
|
||||
CREATE: aws_instance.bar
|
||||
compute: "" => "foo"
|
||||
compute_value: "" => "<computed>"
|
||||
foo: "" => "<computed>"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
module.child:
|
||||
CREATE: aws_instance.foo
|
||||
foo: "" => "<computed>"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
STATE:
|
||||
|
||||
<no state>
|
||||
`
|
||||
|
||||
const testTerraformPlanModuleVarIntStr = `
|
||||
DIFF:
|
||||
|
||||
module.child:
|
||||
CREATE: aws_instance.foo
|
||||
num: "" => "2"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
STATE:
|
||||
|
||||
<no state>
|
||||
`
|
||||
|
||||
const testTerraformPlanMultipleTaintStr = `
|
||||
DIFF:
|
||||
|
||||
DESTROY/CREATE: aws_instance.bar
|
||||
foo: "" => "2"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
STATE:
|
||||
|
||||
aws_instance.bar: (2 tainted)
|
||||
ID = <not created>
|
||||
Tainted ID 1 = baz
|
||||
Tainted ID 2 = zip
|
||||
aws_instance.foo:
|
||||
ID = bar
|
||||
num = 2
|
||||
`
|
||||
|
||||
const testTerraformPlanVarMultiCountOneStr = `
|
||||
DIFF:
|
||||
|
||||
CREATE: aws_instance.bar
|
||||
foo: "" => "2"
|
||||
type: "" => "aws_instance"
|
||||
CREATE: aws_instance.foo
|
||||
num: "" => "2"
|
||||
type: "" => "aws_instance"
|
||||
|
||||
STATE:
|
||||
|
||||
<no state>
|
||||
`
|
||||
|
||||
const testTerraformInputHCL = `
|
||||
hcl_instance.hcltest:
|
||||
ID = foo
|
||||
provider = provider["registry.terraform.io/hashicorp/hcl"]
|
||||
bar.w = z
|
||||
bar.x = y
|
||||
foo.# = 2
|
||||
foo.0 = a
|
||||
foo.1 = b
|
||||
type = hcl_instance
|
||||
`
|
||||
|
||||
const testTerraformRefreshDataRefDataStr = `
|
||||
data.null_data_source.bar:
|
||||
ID = foo
|
||||
|
|
|
@ -23,17 +23,6 @@ type GraphVertexTransformer interface {
|
|||
Transform(dag.Vertex) (dag.Vertex, error)
|
||||
}
|
||||
|
||||
// GraphTransformIf is a helper function that conditionally returns a
|
||||
// GraphTransformer given. This is useful for calling inline a sequence
|
||||
// of transforms without having to split it up into multiple append() calls.
|
||||
func GraphTransformIf(f func() bool, then GraphTransformer) GraphTransformer {
|
||||
if f() {
|
||||
return then
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
type graphTransformerMulti struct {
|
||||
Transforms []GraphTransformer
|
||||
}
|
||||
|
|
|
@ -274,14 +274,6 @@ test_object.A (destroy)
|
|||
test_object.B (destroy)
|
||||
`
|
||||
|
||||
const testTransformDestroyEdgeCreatorStr = `
|
||||
test_object.A
|
||||
test_object.A (destroy)
|
||||
test_object.A (destroy)
|
||||
test_object.B (destroy)
|
||||
test_object.B (destroy)
|
||||
`
|
||||
|
||||
const testTransformDestroyEdgeMultiStr = `
|
||||
test_object.A (destroy)
|
||||
test_object.B (destroy)
|
||||
|
|
|
@ -225,7 +225,6 @@ func (t *ProviderTransformer) Transform(g *Graph) error {
|
|||
if p, ok := target.(*graphNodeProxyProvider); ok {
|
||||
g.Remove(p)
|
||||
target = p.Target()
|
||||
key = target.(GraphNodeProvider).ProviderAddr().String()
|
||||
}
|
||||
|
||||
log.Printf("[DEBUG] ProviderTransformer: %q (%T) needs %s", dag.VertexName(v), v, dag.VertexName(target))
|
||||
|
@ -431,18 +430,6 @@ func providerVertexMap(g *Graph) map[string]GraphNodeProvider {
|
|||
return m
|
||||
}
|
||||
|
||||
func closeProviderVertexMap(g *Graph) map[string]GraphNodeCloseProvider {
|
||||
m := make(map[string]GraphNodeCloseProvider)
|
||||
for _, v := range g.Vertices() {
|
||||
if pv, ok := v.(GraphNodeCloseProvider); ok {
|
||||
addr := pv.CloseProviderAddr()
|
||||
m[addr.String()] = pv
|
||||
}
|
||||
}
|
||||
|
||||
return m
|
||||
}
|
||||
|
||||
type graphNodeCloseProvider struct {
|
||||
Addr addrs.AbsProviderConfig
|
||||
}
|
||||
|
@ -466,11 +453,6 @@ func (n *graphNodeCloseProvider) Execute(ctx EvalContext, op walkOperation) (dia
|
|||
return diags.Append(ctx.CloseProvider(n.Addr))
|
||||
}
|
||||
|
||||
// GraphNodeDependable impl.
|
||||
func (n *graphNodeCloseProvider) DependableName() []string {
|
||||
return []string{n.Name()}
|
||||
}
|
||||
|
||||
func (n *graphNodeCloseProvider) CloseProviderAddr() addrs.AbsProviderConfig {
|
||||
return n.Addr
|
||||
}
|
||||
|
|
|
@ -545,31 +545,6 @@ provider["registry.terraform.io/hashicorp/foo"] (close)
|
|||
provider["registry.terraform.io/hashicorp/foo"]
|
||||
`
|
||||
|
||||
const testTransformDisableProviderBasicStr = `
|
||||
module.child
|
||||
provider["registry.terraform.io/hashicorp/aws"] (disabled)
|
||||
var.foo
|
||||
provider["registry.terraform.io/hashicorp/aws"] (close)
|
||||
module.child
|
||||
provider["registry.terraform.io/hashicorp/aws"] (disabled)
|
||||
provider["registry.terraform.io/hashicorp/aws"] (disabled)
|
||||
var.foo
|
||||
`
|
||||
|
||||
const testTransformDisableProviderKeepStr = `
|
||||
aws_instance.foo
|
||||
provider["registry.terraform.io/hashicorp/aws"]
|
||||
module.child
|
||||
provider["registry.terraform.io/hashicorp/aws"]
|
||||
var.foo
|
||||
provider["registry.terraform.io/hashicorp/aws"]
|
||||
provider["registry.terraform.io/hashicorp/aws"] (close)
|
||||
aws_instance.foo
|
||||
module.child
|
||||
provider["registry.terraform.io/hashicorp/aws"]
|
||||
var.foo
|
||||
`
|
||||
|
||||
const testTransformModuleProviderConfigStr = `
|
||||
module.child.aws_instance.thing
|
||||
provider["registry.terraform.io/hashicorp/aws"].foo
|
||||
|
|
|
@ -538,17 +538,3 @@ func ReferencesFromConfig(body hcl.Body, schema *configschema.Block) []*addrs.Re
|
|||
refs, _ := lang.ReferencesInBlock(body, schema)
|
||||
return refs
|
||||
}
|
||||
|
||||
func modulePrefixStr(p addrs.ModuleInstance) string {
|
||||
return p.String()
|
||||
}
|
||||
|
||||
func modulePrefixList(result []string, prefix string) []string {
|
||||
if prefix != "" {
|
||||
for i, v := range result {
|
||||
result[i] = fmt.Sprintf("%s.%s", prefix, v)
|
||||
}
|
||||
}
|
||||
|
||||
return result
|
||||
}
|
||||
|
|
|
@ -309,25 +309,6 @@ B
|
|||
A
|
||||
`
|
||||
|
||||
const testTransformRefBackupStr = `
|
||||
A
|
||||
B
|
||||
A
|
||||
`
|
||||
|
||||
const testTransformRefBackupPrimaryStr = `
|
||||
A
|
||||
B
|
||||
C
|
||||
C
|
||||
`
|
||||
|
||||
const testTransformRefModulePathStr = `
|
||||
A
|
||||
B
|
||||
A
|
||||
`
|
||||
|
||||
const testTransformRefPathStr = `
|
||||
A
|
||||
B
|
||||
|
|
Loading…
Reference in New Issue