mirror of https://github.com/pulumi/pulumi.git
![]() * Fix some tracing issues. - Add endpoints for `startUpdate` and `postEngineEventsBatch` so that spans for these invocations have proper names - Inject a tracing span when walking a plan so that resource operations are properly parented - When handling gRPC calls, inject a tracing span into the call's metadata if no span is already present so that resource monitor and engine spans are properly parented - Do not trace client gRPC invocations of the empty method so that these calls (which are used to determine server availability) do not muddy the trace. Note that I tried parenting these spans appropriately, but doing so broke the trace entirely. With these changes, the only unparented span in a typical Pulumi invocation is a single call to `getUser`. This span is unparented because that call does not have a context available. Plumbing a context into that particular call is surprisingly tricky, as it is often called by other context-less functions. * Make tracing support more flexible. - Add support for writing trace data to a local file using Appdash - Add support for viewing Appdash traces via the CLI |
||
---|---|---|
.. | ||
pulumi | ||
pulumi-language-go | ||
Makefile | ||
README.md |
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
.