pulumi/sdk/go
Michael Bridgen aec158fd2d Allow a path to a file when cons'ing an archive
It's legitimate to construct an archive with a single file (rather than
a directory) by mentioning the file's name:

    zip handler.zip handler/main

In fact, that's what the AWS Lambda docs suggest:
https://docs.aws.amazon.com/lambda/latest/dg/golang-package.html

This commit lets you do the equivalent when making an
`asset.FileArchive`. It needs a little rearrangement of
directoryArchiveReader so that the individual paths are relative to a
base rather than sharing a prefix; otherwise, a single-file archive (in
which the name is the entire file path) cannot be constructed. I've
sign-posted this change by renaming the helper struct in question to
`filesystemArchiveReader`.

Signed-off-by: Michael Bridgen <mbridgen@pulumi.com>
2022-06-10 17:50:40 +01:00
..
auto Respond to SIGINT during plugin install (#9793) 2022-06-09 14:57:56 -07:00
common Allow a path to a file when cons'ing an archive 2022-06-10 17:50:40 +01:00
pulumi Add CompositeInvoke (#9752) 2022-06-07 09:11:44 +01:00
pulumi-language-go Poll gRPC healthchecks to auto-cancel sub-processes (#9735) 2022-06-06 13:28:00 +01:00
Makefile Cleanup make ensure (#9598) 2022-05-16 16:47:04 -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.