pulumi/pkg/engine
Alex Clemmer ea32fec8f9 Implement query primitives in the engine
`pulumi query` is designed, essentially, as a souped-up `exec`. We
execute a query program, and add a few convenience constructs (e.g., the
default providers that give you access to things like `getStack`).

Early in the design process, we decided to not re-use the `up`/update
path, both to minimize risk to update operations, and to simplify the
implementation.

This commit will add this "parallel query universe" into the engine
package. In particular, this includes:

* `QuerySource`, which executes the language provider running the query
  program, and providing it with some simple constructs, such as the
  default provider, which provides access to `getStack`. This is much
  like a very simplified `EvalSource`, though notably without any of the
  planning/step execution machinery.
* `queryResmon`, which disallows all resource operations, except the
  `Invoke` that retrieves the resource outputs of some stack's last
  snapshot. This is much like a simplified `resmon`, but without any of
  the provider resolution, and without and support for resource
  operations generally.
* Various static functions that pull together miscellaneous things
  needed to execute a query program. Notably, this includes gathering
  language plugins.
2019-05-02 18:08:08 -07:00
..
destroy.go Use result.Result in more places. (#2568) 2019-03-19 16:21:50 -07:00
diff.go Use Go Modules for dependency tracking 2019-04-10 08:37:51 +04:00
engine.go Add an API for importing stack outputs (#2180) 2018-11-14 13:33:35 -08:00
errors.go Show a better error message when decrypting fails (#1815) 2018-08-22 15:32:54 -07:00
events.go Add a --json flag to the preview command 2019-04-25 17:36:31 -07:00
eventsink.go Make a smattering of CLI UX improvements 2018-09-24 08:43:46 -07:00
lifecycle_test.go Add an ignoreChanges resource option (#2657) 2019-04-22 13:54:48 -07:00
plan.go Move planResult#Chdir into fsutil 2019-05-02 18:08:08 -07:00
plugins.go Remove uses of plugins in the snapshot (#2662) 2019-04-23 09:53:44 -07:00
plugins_test.go Load default providers deterministically (#2590) 2019-03-26 13:29:34 -07:00
project.go Add license headers 2018-05-22 15:02:47 -07:00
query.go Implement query primitives in the engine 2019-05-02 18:08:08 -07:00
refresh.go Use result.Result in more places. (#2568) 2019-03-19 16:21:50 -07:00
snapshot.go Remove uses of plugins in the snapshot (#2662) 2019-04-23 09:53:44 -07:00
update.go Implement query primitives in the engine 2019-05-02 18:08:08 -07:00