Previous to this commit, the Chainable class which is responsible for
iterating on the sequence of events in the intro Terraform animation,
was using setTimeout and thus could result in very messed up race
conditions when triggering physics changes.
This commit attaches the .wait timers to the Engine.render loop which
should enable everything to stay in sync.
The attributes in the diff are %#v-formatted. This means that all `\`
characters in the Windows paths are escaped with a `\`. We need to
escape the `\` characters in cwd, module, and root before doing any
comparison work.
Fixes the following test failure on Windows:
--- FAIL: TestContextPlan_pathVar (0.00s)
context_test.go:3833: bad:
DIFF:
CREATE: aws_instance.foo
cwd: "" => "C:\\Users\\ceh\\src\\github.com\\hashicorp\\terraform\\terraform/barpath"
module: "" => "C:\\Users\\ceh\\src\\github.com\\hashicorp\\terraform\\terraform\\test-fixtures\\plan-path-var/foopath"
root: "" => "C:\\Users\\ceh\\src\\github.com\\hashicorp\\terraform\\terraform\\test-fixtures\\plan-path-var/barpath"
type: "" => "aws_instance"
STATE:
<no state>
expected:
DIFF:
CREATE: aws_instance.foo
cwd: "" => "C:\Users\ceh\src\github.com\hashicorp\terraform\terraform/barpath"
module: "" => "C:\Users\ceh\src\github.com\hashicorp\terraform\terraform\test-fixtures\plan-path-var/foopath"
root: "" => "C:\Users\ceh\src\github.com\hashicorp\terraform\terraform\test-fixtures\plan-path-var/barpath"
type: "" => "aws_instance"
STATE:
<no state>
FAIL
exit status 1
FAIL github.com/hashicorp/terraform/terraform 0.050s
Right now we yield a perpetual diff on ASGs because we're not reading
termination policies back out in the provider.
This depends on https://github.com/mitchellh/goamz/pull/218 and fixes
it.
Now that readMap filters out '#' fields, when maps are nested in sets,
we exposed a related bug where a set was iterating over nested maps and
expected the '#' key to be present in those nested maps.
By skipping _all_ count fields when iterating over set keys, all is
right with the world again.