pulumi/sdk/go
Julien 1dd366951f
Ignore DependsOn for direct form invokes instead of raising an error (#18089)
When we introduced DependsOn for output form invokes in Go, we made it
an error to pass this option to direct form invokes. Unfortunately that
is not backwards compatible, and users for example pass the same set of
options to resources and invokes. Previously this worked without issue,
but now this can result in an error.

This also occurs in our SDKs. The Kubernetes SDK has resources that
internally call an invoke with the options of the resource.

The solution is to ignore DependsOn in this case, instead of making it
an error. This is what we did for Python and Typescript, [for
example](27cf193189/sdk/nodejs/runtime/invoke.ts (L88-L92)).

Fixes https://github.com/pulumi/pulumi/issues/18087
2024-12-20 16:40:43 +00:00
..
auto Append debug flags after subcommand to account for non global flags like "debug" (#18071) 2024-12-19 23:10:29 +00:00
common Update the refresh/destroy warnings for parameterized packages (#18029) 2024-12-20 02:03:17 +00:00
internal Add OutputWithDependencies (#17856) 2024-11-26 09:53:24 +00:00
property Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
pulumi Ignore DependsOn for direct form invokes instead of raising an error (#18089) 2024-12-20 16:40:43 +00:00
pulumi-internal/netutil try to choose a consistent port for debugging (#17271) 2024-09-18 10:06:17 +00:00
pulumi-language-go Update golang.org/x/net (#18079) 2024-12-19 14:56:29 +00:00
pulumix Enable goheader rule and add missing license headers (#15473) 2024-09-09 12:05:45 +00:00
Makefile sdk/go: fix test_fast Makefile target (#16811) 2024-07-26 10:25:04 +00: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.