Fixes: #497
This PR follows the `weekly-pulumi-update` CI workflow steps to update
our `pulumi/pulumi` dependency, with manual intervention to resolve
tooling update conflicts. Before generating the SDKs, it's necessary to
update the language tools and otel packages to ensure compatibility with
the latest changes.
Additional command executed for the manual updates:
```sh
TOOLS=(
"github.com/pulumi/pulumi/sdk/go/pulumi-language-go/v3"
"github.com/pulumi/pulumi/sdk/nodejs/cmd/pulumi-language-nodejs/v3"
"github.com/pulumi/pulumi/sdk/python/cmd/pulumi-language-python/v3"
"go.opentelemetry.io/otel/exporters/otlp/otlptrace"
)
for TOOL in "${TOOLS[@]}"; do
go get -u $TOOL
go mod tidy
done
```
---
Note: the Go directive is upgraded to v1.24 as
`github.com/pulumi/pulumi/sdk/go/pulumi-language-go/v3` requires Go
v1.24
([ref](5c96e4e6aa/sdk/go/pulumi-language-go/go.mod (L3))).
I could have sworn the context property was required, but evidently it
isn't and we weren't handling the case when it was missing.
This PR updates things to set a default location of the current
directory if the context is absent. Some unit tests are also added.
Fixes#78.