Code Monkey home page Code Monkey logo

terraform-provider-nsx's Introduction

Terraform-Provider-NSX

A Terraform provider for VMware NSX. The NSX provider is used to interact with resources supported by VMware NSX. The provider needs to be configured with the proper credentials before it can be used.

Wiki Pages

Features

Feature Create Read Update Delete
DHCP Relay Y Y Y Y
Edge Interface Y Y N Y
Logical Switch Y Y Y Y
Security Group Y Y Y Y
Security Policy Y Y Y Y
Security Policy Rules Y Y Y Y
Security Tag Y Y Y Y
Security Tag Attachment Y Y Y Y
Service Y Y Y Y
Firewall Exclusion Y Y N Y

Limitations

  • Security-tag resource requires vsphere-provider with moid parameter implemented. (branch not yet pushed to upstream). Docker image link with already built vsphere-provider available in getting started link above. - This issue was actually solved on terraform v0.9.6 - pull request here (hashicorp/terraform#14793)

  • At the moment only a very limited number of vSphere NSX resources have been implemented. These resources also have the basic attributes implemented, look at wiki link above to find more details about each of these resources.

Resources to consider

  • Transport Zones
  • Distributed Switch
  • Distributed Firewall (L2 / L3 rules)
  • Edge Device Nat config and rules
  • Edge Device Routing config

terraform-provider-nsx's People

Contributors

grubert65 avatar jstoja avatar luyfigue avatar lw346 avatar no-acl avatar rewiko avatar ruimoreira avatar sandeep-sidhu avatar tasneemrahim avatar yorg1st avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

terraform-provider-nsx's Issues

Deny by default security policy

Hello guys,

Thanks for the amazing work.
I'm wondering how you're handing the case of deny by default and them add security policies to allow traffic between groups.
Right now, I only manage to do this by creating a security policy by hand that would deny "any to any" between groups.

It seems that it's not doable because of the format of the nsx_security_policy_rule that requires a serviceids that doesn't handle the "any" value.

Do you have an idea of how to handle this? How do you handle this case @sky-uk ?

Cheers!

No NSX Security Policy Rule created and no error, just not create

Hi there,
I am using sky-uk/nsx provider to create nsx security policy rule. There return with no error but no policy rule created too. I quite new with terraform. May anyone please advise more about what happen and what should I do next.

here some of tf configuration file

resource "nsx_security_tag" "web" {
name = "99_tf-tag-test-99"
desc = "99_Security Tag for TEST 99 created with Terraform"
}
resource "nsx_security_tag_attachment" "client_vm" {
name = "99_tf-security-tag-attachment"
tagid = ["${nsx_security_tag.web.id}"]
moid = "${vsphere_virtual_machine.vm.moid}"
}
resource "nsx_service" "http" {
name = "99_tf_service_http_80"
scopeid = "globalroot-0"
description = "TCP port 80 - http"
protocol = "TCP"
ports = "80"
}
resource "nsx_service" "https" {
name = "99_tf_service_https_443"
scopeid = "globalroot-0"
description = "TCP port 443 - https"
protocol = "TCP"
ports = "443"
}
resource "nsx_security_policy" "web" {
name = "99_tf_TEST_security_policy"
description = "99_TEST security policy for web role"
precedence = "4000"
}
resource "nsx_security_policy_rule" "web" {
name = "99_tf_TEST_security_policy_rule"
securitypolicyname = "${nsx_security_policy.web.name}"
action = "BLOCK"
direction = "INBOUND"
serviceids = ["${nsx_service.http.name}","${nsx_service.https.name}"]
}

Result

Do you want to perform these actions?
Terraform will perform the actions described above.
Only 'yes' will be accepted to approve.

Enter a value: yes

nsx_security_policy.web: Creating...
description: "" => "99_TEST security policy for web role"
name: "" => "99_tf_TEST_security_policy"
precedence: "" => "4000"
nsx_security_tag.web: Creating...
desc: "" => "99_Security Tag for TEST 99 created with Terraform"
name: "" => "99_tf-tag-test-99"
nsx_service.http: Creating...
description: "" => "TCP port 80 - http"
name: "" => "99_tf_service_http_80"
ports: "" => "80"
protocol: "" => "TCP"
scopeid: "" => "globalroot-0"
nsx_service.https: Creating...
description: "" => "TCP port 443 - https"
name: "" => "99_tf_service_https_443"
ports: "" => "443"
protocol: "" => "TCP"
scopeid: "" => "globalroot-0"
nsx_security_policy.web: Creation complete after 1s (ID: policy-54)
nsx_security_tag.web: Creation complete after 1s (ID: securitytag-74)

....
nsx_service.http: Creation complete after 3s (ID: application-450)
nsx_service.https: Creation complete after 3s (ID: application-449)
nsx_security_policy_rule.web: Creating...
action: "" => "BLOCK"
direction: "" => "INBOUND"
name: "" => "99_tf_TEST_security_policy_rule"
securitypolicyname: "" => "99_tf_TEST_security_policy"
serviceids.#: "" => "2"
serviceids.0: "" => "99_tf_service_http_80"
serviceids.1: "" => "99_tf_service_https_443"
nsx_security_policy_rule.web: Creation complete after 1s

Thank in advance

Possible Bug - Terraform crash after destroy of one service resource

Crash on 11.7 and 11.8

Terraform v0.11.8

  • provider.nsx (unversioned)
provider "nsx" {
  nsxserver = "*********"
}

resource "nsx_service" "http_80" {
  name        = "tf_service_http_80"
  scopeid     = "globalroot-0"
  description = "TCP port 80 - http"
  protocol    = "TCP"
  ports       = "80"
}

********$ terraform destroy

2018/08/30 16:55:54 [INFO] Terraform version: 0.11.7 41e50bd32a8825a84535e353c3674af8ce799161
2018/08/30 16:55:54 [INFO] Go runtime version: go1.10.1
2018/08/30 16:55:54 [INFO] CLI args: []string{"/usr/local/bin/terraform", "destroy"}
2018/08/30 16:55:54 [DEBUG] Attempting to open CLI config file: /Users/*********/.terraformrc
2018/08/30 16:55:54 [DEBUG] File doesn't exist, but doesn't need to. Ignoring.
2018/08/30 16:55:54 [INFO] CLI command args: []string{"destroy"}
2018/08/30 16:55:54 [TRACE] Preserving existing state lineage "f2a40afe-170d-f4bd-15be-b1f77f8a20fb"
2018/08/30 16:55:54 [TRACE] Preserving existing state lineage "f2a40afe-170d-f4bd-15be-b1f77f8a20fb"
2018/08/30 16:55:54 [INFO] Building AWS region structure
2018/08/30 16:55:54 [INFO] Building AWS auth structure
2018/08/30 16:55:54 [INFO] Setting AWS metadata API timeout to 100ms
2018/08/30 16:55:54 [INFO] Ignoring AWS metadata API endpoint at default location as it doesn't return any instance-id
2018/08/30 16:55:54 [INFO] AWS Auth provider used: "SharedCredentialsProvider"
2018/08/30 16:55:54 [INFO] Initializing DeviceFarm SDK connection
2018/08/30 16:55:55 [DEBUG] Trying to get account ID via iam:GetUser
2018/08/30 16:55:56 [INFO] command: backend initialized: *s3.Backend
2018/08/30 16:55:56 [DEBUG] checking for provider in "."
2018/08/30 16:55:56 [DEBUG] checking for provider in "/usr/local/bin"
2018/08/30 16:55:56 [WARN] found legacy provider "terraform-provider-nsx"
2018/08/30 16:55:56 [DEBUG] checking for provider in ".terraform/plugins/darwin_amd64"
2018/08/30 16:55:56 [DEBUG] found valid plugin: "nsx", "0.0.0", "/usr/local/bin/terraform-provider-nsx"
2018/08/30 16:55:56 [DEBUG] checking for provisioner in "."
2018/08/30 16:55:56 [DEBUG] checking for provisioner in "/usr/local/bin"
2018/08/30 16:55:56 [DEBUG] checking for provisioner in ".terraform/plugins/darwin_amd64"
2018/08/30 16:55:56 [INFO] command: backend *s3.Backend is not enhanced, wrapping in local
2018/08/30 16:55:56 [INFO] backend/local: starting Apply operation
2018/08/30 16:55:57 [TRACE] Preserving existing state lineage "980441fe-6fe8-1a22-7be3-18fa5f0a1020"
2018/08/30 16:55:57 [TRACE] Preserving existing state lineage "980441fe-6fe8-1a22-7be3-18fa5f0a1020"
2018/08/30 16:55:57 [INFO] terraform: building graph: GraphTypeInput
2018/08/30 16:55:57 [TRACE] ConfigTransformer: Starting for path: []
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ConfigTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.LocalTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.OutputTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.OrphanResourceTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.OrphanOutputTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [TRACE] AttachResourceConfigTransformer: Beginning...
2018/08/30 16:55:57 [TRACE] AttachResourceConfigTransformer: Attach resource config request: nsx_service.http_80
2018/08/30 16:55:57 [TRACE] Attaching resource config: &config.Resource{Mode:0, Name:"http_80", Type:"nsx_service", RawCount:(*config.RawConfig)(0xc4203baee0), RawConfig:(*config.RawConfig)(0xc4203bae70), Provisioners:[]*config.Provisioner(nil), Provider:"", DependsOn:[]string(nil), Lifecycle:config.ResourceLifecycle{CreateBeforeDestroy:false, PreventDestroy:false, IgnoreChanges:[]string(nil)}}
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.AttachResourceConfigTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [DEBUG] Attaching resource state to "nsx_service.http_80": &terraform.ResourceState{Type:"nsx_service", Dependencies:[]string{}, Primary:(*terraform.InstanceState)(0xc4203fa320), Deposed:[]*terraform.InstanceState{}, Provider:"provider.nsx", mu:sync.Mutex{state:0, sema:0x0}}
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.AttachStateTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.RootVariableTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [TRACE] ProviderConfigTransformer: Starting for path: []
2018/08/30 16:55:57 [TRACE] Attach provider request: []string{} nsx
2018/08/30 16:55:57 [TRACE] Attaching provider config: *config.ProviderConfig{Name:"nsx", Alias:"", Version:"", RawConfig:(*config.RawConfig)(0xc4203bae00)}
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ProviderConfigTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.MissingProviderTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [DEBUG] resource nsx_service.http_80 using provider provider.nsx
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ProviderTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.PruneProviderTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ParentProviderTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.graphTransformerMulti:

nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ModuleVariableTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.RemovedModuleTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [DEBUG] ReferenceTransformer: "output.http_80" references: [nsx_service.http_80]
2018/08/30 16:55:57 [DEBUG] ReferenceTransformer: "provider.nsx" references: []
2018/08/30 16:55:57 [DEBUG] ReferenceTransformer: "nsx_service.http_80" references: []
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ReferenceTransformer:

nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.CountBoundaryTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.TargetsTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.CloseProviderTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx (close) - *terraform.graphNodeCloseProvider
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.CloseProvisionerTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx (close) - *terraform.graphNodeCloseProvider
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.RootTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
nsx_service.http_80 - *terraform.NodeAbstractResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx (close) - *terraform.graphNodeCloseProvider
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
root - terraform.graphNodeRoot
meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
provider.nsx (close) - *terraform.graphNodeCloseProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.TransitiveReductionTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeAbstractResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx (close) - *terraform.graphNodeCloseProvider
nsx_service.http_80 - *terraform.NodeAbstractResource
root - terraform.graphNodeRoot
meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
provider.nsx (close) - *terraform.graphNodeCloseProvider
2018/08/30 16:55:57 [DEBUG] Starting graph walk: walkInput
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "provider.nsx (close)"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "root"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "output.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "provider.nsx"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "meta.count-boundary (count boundary fixup)"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "nsx_service.http_80" waiting on "provider.nsx"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "output.http_80" waiting on "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "root" waiting on "meta.count-boundary (count boundary fixup)"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "meta.count-boundary (count boundary fixup)" waiting on "output.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "provider.nsx (close)" waiting on "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "root" waiting on "provider.nsx (close)"
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "nsx_service.http_80", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "output.http_80", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "root", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "meta.count-boundary (count boundary fixup)", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "provider.nsx (close)", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: walking "provider.nsx"
2018/08/30 16:55:57 [TRACE] vertex 'root.provider.nsx': walking
2018/08/30 16:55:57 [TRACE] vertex 'root.provider.nsx': evaluating
2018/08/30 16:55:57 [TRACE] [walkInput] Entering eval tree: provider.nsx
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalInitProvider
2018-08-30T16:55:57.256-0600 [DEBUG] plugin: starting plugin: path=/usr/local/bin/terraform-provider-nsx args=[/usr/local/bin/terraform-provider-nsx]
2018-08-30T16:55:57.259-0600 [DEBUG] plugin: waiting for RPC address: path=/usr/local/bin/terraform-provider-nsx
2018-08-30T16:55:57.278-0600 [DEBUG] plugin.terraform-provider-nsx: plugin address: timestamp=2018-08-30T16:55:57.278-0600 address=/var/folders/n3/znbdnv3513ldbjfs3c7x7rjc0000gp/T/plugin253293368 network=unix
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalOpFilter
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalGetProvider
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalInterpolateProvider
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalBuildProviderConfig
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalInputProvider
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalNoop
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalNoop
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalNoop
2018/08/30 16:55:57 [TRACE] [walkInput] Exiting eval tree: provider.nsx
2018/08/30 16:55:57 [TRACE] dag/walk: walking "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] vertex 'root.nsx_service.http_80': walking
2018/08/30 16:55:57 [TRACE] dag/walk: walking "output.http_80"
2018/08/30 16:55:57 [TRACE] vertex 'root.output.http_80': walking
2018/08/30 16:55:57 [TRACE] dag/walk: walking "provider.nsx (close)"
2018/08/30 16:55:57 [TRACE] vertex 'root.provider.nsx (close)': walking
2018/08/30 16:55:57 [TRACE] vertex 'root.output.http_80': evaluating
2018/08/30 16:55:57 [TRACE] vertex 'root.provider.nsx (close)': evaluating
2018/08/30 16:55:57 [TRACE] [walkInput] Entering eval tree: provider.nsx (close)
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalCloseProvider
2018/08/30 16:55:57 [TRACE] [walkInput] Entering eval tree: output.http_80
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalOpFilter
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalWriteOutput
2018/08/30 16:55:57 [TRACE] [walkInput] Exiting eval tree: provider.nsx (close)
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalNoop
2018/08/30 16:55:57 [TRACE] [walkInput] Exiting eval tree: output.http_80
2018/08/30 16:55:57 [TRACE] dag/walk: walking "meta.count-boundary (count boundary fixup)"
2018/08/30 16:55:57 [TRACE] vertex 'root.meta.count-boundary (count boundary fixup)': walking
2018/08/30 16:55:57 [TRACE] vertex 'root.meta.count-boundary (count boundary fixup)': evaluating
2018/08/30 16:55:57 [TRACE] [walkInput] Entering eval tree: meta.count-boundary (count boundary fixup)
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalCountFixZeroOneBoundaryGlobal
2018/08/30 16:55:57 [TRACE] EvalCountFixZeroOneBoundaryGlobal: count 1, search "nsx_service.http_80.0", replace "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] [walkInput] Exiting eval tree: meta.count-boundary (count boundary fixup)
2018/08/30 16:55:57 [TRACE] dag/walk: walking "root"
2018/08/30 16:55:57 [TRACE] vertex 'root.root': walking
2018/08/30 16:55:57 [INFO] terraform: building graph: GraphTypeValidate
2018/08/30 16:55:57 [TRACE] ConfigTransformer: Starting for path: []
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ConfigTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.LocalTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.OutputTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.OrphanResourceTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.OrphanOutputTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [TRACE] AttachResourceConfigTransformer: Beginning...
2018/08/30 16:55:57 [TRACE] AttachResourceConfigTransformer: Attach resource config request: nsx_service.http_80
2018/08/30 16:55:57 [TRACE] Attaching resource config: &config.Resource{Mode:0, Name:"http_80", Type:"nsx_service", RawCount:(*config.RawConfig)(0xc4203baee0), RawConfig:(*config.RawConfig)(0xc4203bae70), Provisioners:[]*config.Provisioner(nil), Provider:"", DependsOn:[]string(nil), Lifecycle:config.ResourceLifecycle{CreateBeforeDestroy:false, PreventDestroy:false, IgnoreChanges:[]string(nil)}}
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.AttachResourceConfigTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [DEBUG] Attaching resource state to "nsx_service.http_80": &terraform.ResourceState{Type:"nsx_service", Dependencies:[]string{}, Primary:(*terraform.InstanceState)(0xc4203fa320), Deposed:[]*terraform.InstanceState{}, Provider:"provider.nsx", mu:sync.Mutex{state:0, sema:0x0}}
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.AttachStateTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.RootVariableTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
2018/08/30 16:55:57 [TRACE] ProviderConfigTransformer: Starting for path: []
2018/08/30 16:55:57 [TRACE] Attach provider request: []string{} nsx
2018/08/30 16:55:57 [TRACE] Attaching provider config: *config.ProviderConfig{Name:"nsx", Alias:"", Version:"", RawConfig:(*config.RawConfig)(0xc4203bae00)}
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ProviderConfigTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.MissingProviderTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [DEBUG] resource nsx_service.http_80 using provider provider.nsx
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ProviderTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.PruneProviderTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ParentProviderTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.graphTransformerMulti:

nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.MissingProvisionerTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ProvisionerTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.graphTransformerMulti:

nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ModuleVariableTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.RemovedModuleTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [DEBUG] ReferenceTransformer: "provider.nsx" references: []
2018/08/30 16:55:57 [DEBUG] ReferenceTransformer: "nsx_service.http_80" references: []
2018/08/30 16:55:57 [DEBUG] ReferenceTransformer: "output.http_80" references: [nsx_service.http_80]
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ReferenceTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.CountBoundaryTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.TargetsTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.CloseProviderTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx (close) - *terraform.graphNodeCloseProvider
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.CloseProvisionerTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx (close) - *terraform.graphNodeCloseProvider
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.RootTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
nsx_service.http_80 - *terraform.NodeValidatableResource
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx (close) - *terraform.graphNodeCloseProvider
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
root - terraform.graphNodeRoot
meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
provider.nsx (close) - *terraform.graphNodeCloseProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.TransitiveReductionTransformer:

meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeValidatableResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx (close) - *terraform.graphNodeCloseProvider
nsx_service.http_80 - *terraform.NodeValidatableResource
root - terraform.graphNodeRoot
meta.count-boundary (count boundary fixup) - *terraform.NodeCountBoundary
provider.nsx (close) - *terraform.graphNodeCloseProvider
2018/08/30 16:55:57 [DEBUG] Starting graph walk: walkValidate
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "meta.count-boundary (count boundary fixup)"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "provider.nsx (close)"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "root"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "output.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "provider.nsx"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "output.http_80" waiting on "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "meta.count-boundary (count boundary fixup)" waiting on "output.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "root" waiting on "provider.nsx (close)"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "nsx_service.http_80" waiting on "provider.nsx"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "provider.nsx (close)" waiting on "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "root" waiting on "meta.count-boundary (count boundary fixup)"
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "output.http_80", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "meta.count-boundary (count boundary fixup)", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "root", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "nsx_service.http_80", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "provider.nsx (close)", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: walking "provider.nsx"
2018/08/30 16:55:57 [TRACE] vertex 'root.provider.nsx': walking
2018/08/30 16:55:57 [TRACE] vertex 'root.provider.nsx': evaluating
2018/08/30 16:55:57 [TRACE] [walkValidate] Entering eval tree: provider.nsx
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalInitProvider
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalNoop
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalOpFilter
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalGetProvider
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalInterpolateProvider
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalBuildProviderConfig
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalValidateProvider
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalNoop
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalNoop
2018/08/30 16:55:57 [TRACE] [walkValidate] Exiting eval tree: provider.nsx
2018/08/30 16:55:57 [TRACE] dag/walk: walking "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] vertex 'root.nsx_service.http_80': walking
2018/08/30 16:55:57 [TRACE] vertex 'root.nsx_service.http_80': evaluating
2018/08/30 16:55:57 [TRACE] [walkValidate] Entering eval tree: nsx_service.http_80
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalInterpolate
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalIf
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalValidateCount
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalCountFixZeroOneBoundary
2018/08/30 16:55:57 [TRACE] [walkValidate] Exiting eval tree: nsx_service.http_80
2018/08/30 16:55:57 [TRACE] vertex 'root.nsx_service.http_80': expanding/walking dynamic subgraph
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ResourceCountTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResourceInstance
2018/08/30 16:55:57 [DEBUG] Attaching resource state to "nsx_service.http_80": &terraform.ResourceState{Type:"nsx_service", Dependencies:[]string{}, Primary:(*terraform.InstanceState)(0xc4203fa320), Deposed:[]*terraform.InstanceState{}, Provider:"provider.nsx", mu:sync.Mutex{state:0, sema:0x0}}
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.AttachStateTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResourceInstance
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.TargetsTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResourceInstance
2018/08/30 16:55:57 [DEBUG] ReferenceTransformer: "nsx_service.http_80" references: []
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ReferenceTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResourceInstance
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.RootTransformer:

nsx_service.http_80 - *terraform.NodeValidatableResourceInstance
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: walking "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] vertex 'root.nsx_service.http_80': walking
2018/08/30 16:55:57 [TRACE] vertex 'root.nsx_service.http_80': evaluating
2018/08/30 16:55:57 [TRACE] [walkValidate] Entering eval tree: nsx_service.http_80
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalValidateResourceSelfRef
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalGetProvider
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalInterpolate
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalValidateResource
2018/08/30 16:55:57 [TRACE] [walkValidate] Exiting eval tree: nsx_service.http_80
2018/08/30 16:55:57 [TRACE] dag/walk: walking "output.http_80"
2018/08/30 16:55:57 [TRACE] vertex 'root.output.http_80': walking
2018/08/30 16:55:57 [TRACE] dag/walk: walking "provider.nsx (close)"
2018/08/30 16:55:57 [TRACE] vertex 'root.provider.nsx (close)': walking
2018/08/30 16:55:57 [TRACE] vertex 'root.output.http_80': evaluating
2018/08/30 16:55:57 [TRACE] [walkValidate] Entering eval tree: output.http_80
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalNoop
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalOpFilter
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalWriteOutput
2018/08/30 16:55:57 [TRACE] vertex 'root.provider.nsx (close)': evaluating
2018/08/30 16:55:57 [TRACE] [walkValidate] Entering eval tree: provider.nsx (close)
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalCloseProvider
2018/08/30 16:55:57 [TRACE] [walkValidate] Exiting eval tree: provider.nsx (close)
2018/08/30 16:55:57 [TRACE] [walkValidate] Exiting eval tree: output.http_80
2018/08/30 16:55:57 [TRACE] dag/walk: walking "meta.count-boundary (count boundary fixup)"
2018/08/30 16:55:57 [TRACE] vertex 'root.meta.count-boundary (count boundary fixup)': walking
2018/08/30 16:55:57 [TRACE] vertex 'root.meta.count-boundary (count boundary fixup)': evaluating
2018/08/30 16:55:57 [TRACE] [walkValidate] Entering eval tree: meta.count-boundary (count boundary fixup)
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalCountFixZeroOneBoundaryGlobal
2018/08/30 16:55:57 [TRACE] EvalCountFixZeroOneBoundaryGlobal: count 1, search "nsx_service.http_80.0", replace "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] [walkValidate] Exiting eval tree: meta.count-boundary (count boundary fixup)
2018/08/30 16:55:57 [TRACE] dag/walk: walking "root"
2018/08/30 16:55:57 [TRACE] vertex 'root.root': walking
2018/08/30 16:55:57 [INFO] backend/local: apply calling Refresh
2018/08/30 16:55:57 [INFO] terraform: building graph: GraphTypeRefresh
2018/08/30 16:55:57 [TRACE] ConfigTransformer: Starting for path: []
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ConfigTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
2018/08/30 16:55:57 [TRACE] ConfigTransformer: Starting for path: []
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ConfigTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.OrphanResourceTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
2018/08/30 16:55:57 [DEBUG] Attaching resource state to "nsx_service.http_80": &terraform.ResourceState{Type:"nsx_service", Dependencies:[]string{}, Primary:(*terraform.InstanceState)(0xc4200c6690), Deposed:[]*terraform.InstanceState{}, Provider:"provider.nsx", mu:sync.Mutex{state:0, sema:0x0}}
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.AttachStateTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
2018/08/30 16:55:57 [TRACE] AttachResourceConfigTransformer: Beginning...
2018/08/30 16:55:57 [TRACE] AttachResourceConfigTransformer: Attach resource config request: nsx_service.http_80
2018/08/30 16:55:57 [TRACE] Attaching resource config: &config.Resource{Mode:0, Name:"http_80", Type:"nsx_service", RawCount:(*config.RawConfig)(0xc4203baee0), RawConfig:(*config.RawConfig)(0xc4203bae70), Provisioners:[]*config.Provisioner(nil), Provider:"", DependsOn:[]string(nil), Lifecycle:config.ResourceLifecycle{CreateBeforeDestroy:false, PreventDestroy:false, IgnoreChanges:[]string(nil)}}
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.AttachResourceConfigTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.RootVariableTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
2018/08/30 16:55:57 [TRACE] ProviderConfigTransformer: Starting for path: []
2018/08/30 16:55:57 [TRACE] Attach provider request: []string{} nsx
2018/08/30 16:55:57 [TRACE] Attaching provider config: *config.ProviderConfig{Name:"nsx", Alias:"", Version:"", RawConfig:(*config.RawConfig)(0xc4203bae00)}
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ProviderConfigTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.MissingProviderTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [DEBUG] resource nsx_service.http_80 using provider provider.nsx
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ProviderTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.PruneProviderTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ParentProviderTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.graphTransformerMulti:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.LocalTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.OutputTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ModuleVariableTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [DEBUG] ReferenceTransformer: "nsx_service.http_80" references: []
2018/08/30 16:55:57 [DEBUG] ReferenceTransformer: "provider.nsx" references: []
2018/08/30 16:55:57 [DEBUG] ReferenceTransformer: "output.http_80" references: [nsx_service.http_80]
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ReferenceTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.TargetsTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.CloseProviderTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx (close) - *terraform.graphNodeCloseProvider
nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.RootTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx (close) - *terraform.graphNodeCloseProvider
nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
root - terraform.graphNodeRoot
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx (close) - *terraform.graphNodeCloseProvider
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.TransitiveReductionTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
output.http_80 - *terraform.NodeApplyableOutput
nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
provider.nsx - *terraform.NodeApplyableProvider
provider.nsx (close) - *terraform.graphNodeCloseProvider
nsx_service.http_80 - *terraform.NodeRefreshableManagedResource
root - terraform.graphNodeRoot
output.http_80 - *terraform.NodeApplyableOutput
provider.nsx (close) - *terraform.graphNodeCloseProvider
2018/08/30 16:55:57 [DEBUG] Starting graph walk: walkRefresh
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "root"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "provider.nsx"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "output.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "provider.nsx (close)"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "output.http_80" waiting on "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "provider.nsx (close)" waiting on "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "root" waiting on "output.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "root" waiting on "provider.nsx (close)"
2018/08/30 16:55:57 [TRACE] dag/walk: added edge: "nsx_service.http_80" waiting on "provider.nsx"
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "output.http_80", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "provider.nsx (close)", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "root", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: dependencies changed for "nsx_service.http_80", sending new deps
2018/08/30 16:55:57 [TRACE] dag/walk: walking "provider.nsx"
2018/08/30 16:55:57 [TRACE] vertex 'root.provider.nsx': walking
2018/08/30 16:55:57 [TRACE] vertex 'root.provider.nsx': evaluating
2018/08/30 16:55:57 [TRACE] [walkRefresh] Entering eval tree: provider.nsx
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalInitProvider
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalNoop
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalNoop
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalOpFilter
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalGetProvider
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalInterpolateProvider
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalBuildProviderConfig
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalOpFilter
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalConfigProvider
2018-08-30T16:55:57.289-0600 [DEBUG] plugin.terraform-provider-nsx: 2018/08/30 16:55:57 [INFO] VMWare NSX Client configured for URL: p-1-nsx-man-1.den-1a.us.

2018/08/30 16:55:57 [TRACE] [walkRefresh] Exiting eval tree: provider.nsx
2018/08/30 16:55:57 [TRACE] dag/walk: walking "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] vertex 'root.nsx_service.http_80': walking
2018/08/30 16:55:57 [TRACE] vertex 'root.nsx_service.http_80': evaluating
2018/08/30 16:55:57 [TRACE] [walkRefresh] Entering eval tree: nsx_service.http_80
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalInterpolate
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalCountCheckComputed
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalIf
2018/08/30 16:55:57 [TRACE] root: eval: *terraform.EvalCountFixZeroOneBoundary
2018/08/30 16:55:57 [TRACE] [walkRefresh] Exiting eval tree: nsx_service.http_80
2018/08/30 16:55:57 [TRACE] vertex 'root.nsx_service.http_80': expanding/walking dynamic subgraph
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ResourceCountTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResourceInstance
2018/08/30 16:55:57 [TRACE] OrphanResourceCount: Starting...
2018/08/30 16:55:57 [TRACE] OrphanResourceCount: Checking: nsx_service.http_80
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.OrphanResourceCountTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResourceInstance
2018/08/30 16:55:57 [DEBUG] Attaching resource state to "nsx_service.http_80": &terraform.ResourceState{Type:"nsx_service", Dependencies:[]string{}, Primary:(*terraform.InstanceState)(0xc4200c6690), Deposed:[]*terraform.InstanceState{}, Provider:"provider.nsx", mu:sync.Mutex{state:0, sema:0x0}}
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.AttachStateTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResourceInstance
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.TargetsTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResourceInstance
2018/08/30 16:55:57 [DEBUG] ReferenceTransformer: "nsx_service.http_80" references: []
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.ReferenceTransformer:

nsx_service.http_80 - *terraform.NodeRefreshableManagedResourceInstance
2018/08/30 16:55:57 [TRACE] Graph after step *terraform.RootTransformer:

nsx_service.http_80 - terraform.NodeRefreshableManagedResourceInstance
2018/08/30 16:55:57 [TRACE] dag/walk: added new vertex: "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] dag/walk: walking "nsx_service.http_80"
2018/08/30 16:55:57 [TRACE] vertex 'root.nsx_service.http_80': walking
2018/08/30 16:55:57 [TRACE] vertex 'root.nsx_service.http_80': evaluating
2018/08/30 16:55:57 [TRACE] [walkRefresh] Entering eval tree: nsx_service.http_80
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalSequence
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalGetProvider
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalReadState
2018/08/30 16:55:57 [TRACE] root: eval: terraform.EvalRefresh
2018-08-30T16:55:57.290-0600 [DEBUG] plugin.terraform-provider-nsx: 2018/08/30 16:55:57 [DEBUG] service.NewGetAll(globalroot-0)
2018-08-30T16:55:58.047-0600 [DEBUG] plugin.terraform-provider-nsx: 2018/08/30 16:55:58 [DEBUG] api.GetResponse().FilterByName("tf_service_http_80").ObjectID
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: panic: runtime error: invalid memory address or nil pointer dereference
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: [signal SIGSEGV: segmentation violation code=0x1 addr=0x30 pc=0x16c90e3]
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx:
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: goroutine 24 [running]:
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: main.resourceServiceRead(0xc420278b60, 0x17a38c0, 0xc42029f1c0, 0x0, 0x1d99c60)
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: /Users/
/go/src/github.com/sky-uk/terraform-provider-nsx/resource_service.go:154 +0x4b3
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: github.com/sky-uk/terraform-provider-nsx/vendor/github.com/hashicorp/terraform/helper/schema.(Resource).Refresh(0xc42034a840, 0xc420292140, 0x17a38c0, 0xc42029f1c0, 0xc4202d0cc0, 0x17dc401, 0x80020047b00)
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: /Users/
/go/src/github.com/sky-uk/terraform-provider-nsx/vendor/github.com/hashicorp/terraform/helper/schema/resource.go:321 +0x199
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: github.com/sky-uk/terraform-provider-nsx/vendor/github.com/hashicorp/terraform/helper/schema.(Provider).Refresh(0xc420344f50, 0xc4202920f0, 0xc420292140, 0x1fbf6c8, 0x0, 0x18)
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: /Users/
/go/src/github.com/sky-uk/terraform-provider-nsx/vendor/github.com/hashicorp/terraform/helper/schema/provider.go:284 +0x9a
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: github.com/sky-uk/terraform-provider-nsx/vendor/github.com/hashicorp/terraform/plugin.(ResourceProviderServer).Refresh(0xc4202cfa20, 0xc420268d80, 0xc420268fd0, 0x0, 0x0)
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: /Users/
****/go/src/github.com/sky-uk/terraform-provider-nsx/vendor/github.com/hashicorp/terraform/plugin/resource_provider.go:510 +0x4e
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: reflect.Value.call(0xc420071680, 0xc4202ea0c8, 0x13, 0x1885a2c, 0x4, 0xc420047f20, 0x3, 0x3, 0x20002, 0xc42027c71c, ...)
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: /usr/local/go/src/reflect/value.go:434 +0x905
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: reflect.Value.Call(0xc420071680, 0xc4202ea0c8, 0x13, 0xc42027c720, 0x3, 0x3, 0x1401dcf, 0x1, 0x0)
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: /usr/local/go/src/reflect/value.go:302 +0xa4
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: net/rpc.(*service).call(0xc42029e840, 0xc4202e8140, 0xc4202d61c0, 0xc4202e0480, 0xc4202d4920, 0x1726d80, 0xc420268d80, 0x16, 0x1726dc0, 0xc420268fd0, ...)
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: /usr/local/go/src/net/rpc/server.go:381 +0x142
2018-08-30T16:55:58.503-0600 [DEBUG] plugin.terraform-provider-nsx: created by net/rpc.(*Server).ServeCodec
2018-08-30T16:55:58.504-0600 [DEBUG] plugin.terraform-provider-nsx: /usr/local/go/src/net/rpc/server.go:475 +0x36b
2018/08/30 16:55:58 [ERROR] root: eval: *terraform.EvalRefresh, err: nsx_service.http_80: unexpected EOF
2018/08/30 16:55:58 [ERROR] root: eval: *terraform.EvalSequence, err: nsx_service.http_80: unexpected EOF
2018/08/30 16:55:58 [TRACE] [walkRefresh] Exiting eval tree: nsx_service.http_80
2018/08/30 16:55:58 [TRACE] dag/walk: upstream errored, not walking "output.http_80"
2018/08/30 16:55:58 [TRACE] dag/walk: upstream errored, not walking "provider.nsx (close)"
2018/08/30 16:55:58 [TRACE] dag/walk: upstream errored, not walking "root"
2018-08-30T16:55:58.507-0600 [DEBUG] plugin: plugin process exited: path=/usr/local/bin/terraform-provider-nsx
2018/08/30 16:55:58 [DEBUG] plugin: waiting for all plugin processes to complete...
2018-08-30T16:55:58.508-0600 [WARN ] plugin: error closing client during Kill: err="connection is shut down"

!!!!!!!!!!!!!!!!!!!!!!!!!!! TERRAFORM CRASH !!!!!!!!!!!!!!!!!!!!!!!!!!!!

Terraform crashed! This is always indicative of a bug within Terraform.
A crash log has been placed at "crash.log" relative to your current
working directory. It would be immensely helpful if you could please
report the crash with Terraform1 so that we can fix this.

When reporting bugs, please include your terraform version. That
information is available on the first line of crash.log. You can also
get it by running 'terraform --version' on the command line.

!!!!!!!!!!!!!!!!!!!!!!!!!!! TERRAFORM CRASH !!!!!!!!!!!!!!!!!!!!!!!!!!!!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.