pulumi/sdk/go
Pat Gavlin 35d373d137 Make plugin methods contextful.
The interfaces that we use to represent Pulumi plugins are currently
not contextful. This makes it impossible to implement client-side
cancellation and timeouts in an idiomatic fashion. These changes add
context parameters to the plugin interfaces and plumb them upwards
through their callers.

These changes also add a new API to the plugin package,
`NewProviderServer`, that wraps a `plugin.Provider` in a gRPC interface,
allowing it to be used as part of a gRPC server. This makes it simpler
for consumers to author plugins, as they do not need to concern
themselves with the gRPC machinery.
2020-10-22 09:53:47 -07:00
..
common Make plugin methods contextful. 2020-10-22 09:53:47 -07:00
pulumi [sdk/go] Add missing Version field to invokeOptions (#5401) 2020-09-17 12:21:50 -06:00
pulumi-language-go update go plugin acquisition to work for users who vendor dependencies (#5286) 2020-09-03 09:15:18 -07:00
x Add the ability to specify privateKey contents to AutomationAPI (#5557) 2020-10-12 19:51:26 +01:00
Makefile add auto tests to Makefile and fix up for CI 2020-08-23 21:36:21 -07:00
README.md `pulumi update` => `pulumi up` (#2702) 2019-05-06 14:00:18 -07:00

README.md

Pulumi Golang SDK

This directory contains support for writing Pulumi programs in the Go language. There are two aspects to this:

  • pulumi/ contains the client language bindings Pulumi program's code directly against;
  • pulumi-language-go/ contains the language host plugin that the Pulumi engine uses to orchestrate updates.

To author a Pulumi program in Go, simply say so in your Pulumi.yaml

name: <my-project>
runtime: go

and ensure you have pulumi-language-go on your path (it is distributed in the Pulumi download automatically).

By default, the language plugin will use your project's name, <my-project>, as the executable that it loads. This too must be on your path for the language provider to load it when you run pulumi preview or pulumi up.