pulumi/sdk/go
Fraser Waters a35c0d0ad7 Warn about non-project mode
In preperation for deprecating non-project mode at some point. This is
phase 1 of encouraging users off of legacy mode.

Any time a user opens a backend in legacy mode (either old states, or
new states with SELF_MANAGED_STATE_LEGACY_LAYOUT set) we'll warn that
non-project mode is due to deprecate this year.

They can disable this warning by setting
PULUMI_DIY_BACKEND_ACKNOWLEDGE_LEGACY_WARNING to true.

The next phase (in a few months) will turn this into an error which
they'll be able to opt out of by setting
PULUMI_DIY_BACKEND_ACKNOWLEDGE_LEGACY_ERROR to true.

After that it will be a hard error and all non-project related code will
be removed.
2024-01-30 10:36:10 +00:00
..
auto [sdk/go] Use `filepath.Join` rather than `path.Join` (#15273) 2024-01-27 01:25:23 +00:00
common Warn about non-project mode 2024-01-30 10:36:10 +00:00
internal turn on the golangci-lint exhaustive linter (#15028) 2024-01-17 16:50:41 +00:00
pulumi Move assets and archives to their own package (#15157) 2024-01-25 20:39:31 +00:00
pulumi-language-go upgrade gocloud.dev take 2 (#15202) 2024-01-26 13:14:17 +00:00
pulumix Use EqualError/ErrorContains instead of Error (#14737) 2023-12-08 06:40:14 +00:00
Makefile make(sdk/go): Use -C instead of cd for 'go' commands (#13853) 2023-08-31 21:12:03 +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.