pulumi/pkg/resource/plugin
joeduffy c53ddeb678 Overhaul resources, planning, and environments
This change, part of pulumi/lumi#90, overhauls quite a bit of the
core resource, planning, environments, and related areas.

The biggest amount of movement comes from the splitting of pkg/resource
into multiple sub-packages.  This results in:

- pkg/resource: just the core resource data structures.

- pkg/resource/deployment: all planning and deployment logic.

- pkg/resource/environment: all environment, configuration, and
      serialized checkpoint structures and logic.

- pkg/resource/plugin: all dynamically loaded analyzer and
      provider logic, including the actual loading and RPC mechanisms.

This also splits the resource abstraction up.  We now have:

- resource.Resource: a shared interface.

- resource.Object: a resource that is connected to a live object
      that will periodically observe mutations due to ongoing
      evaluation of computations.  Snapshots of its state may be
      taken; however, this is purely a "pre-planning" abstraction.

- resource.State: a snapshot of a resource's state that is frozen.
      In other words, it is no longer connected to a live object.
      This is what will store provider outputs (ID and properties),
      and is what may be serialized into a deployment record.

The branch is in a half-baked state as of this change; more changes
are to come...
2017-06-13 07:10:13 -07:00
..
analyzer.go Overhaul resources, planning, and environments 2017-06-13 07:10:13 -07:00
analyzer_plugin.go Overhaul resources, planning, and environments 2017-06-13 07:10:13 -07:00
check.go Overhaul resources, planning, and environments 2017-06-13 07:10:13 -07:00
context.go Overhaul resources, planning, and environments 2017-06-13 07:10:13 -07:00
plugin.go Overhaul resources, planning, and environments 2017-06-13 07:10:13 -07:00
provider.go Overhaul resources, planning, and environments 2017-06-13 07:10:13 -07:00
provider_host.go Overhaul resources, planning, and environments 2017-06-13 07:10:13 -07:00
provider_plugin.go Overhaul resources, planning, and environments 2017-06-13 07:10:13 -07:00
resource.go Overhaul resources, planning, and environments 2017-06-13 07:10:13 -07:00
rpc.go Overhaul resources, planning, and environments 2017-06-13 07:10:13 -07:00