Fixes https://github.com/pulumi/pulumi-docker-build/issues/551
(sort of - the underlying problem that this repo pins SDK dependencies
that don't get automatically update by the workflow still exists, but it
should at least work until the codegen APIs change again.)
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))).
The `Image` resource already ignores errors during read but the `Index`
resource was requiring the inspect call to always succeed. This will often
fail due to https://github.com/pulumi/pulumi/issues/4981 (note however in
this case credentials are stored with the resource instead of the provider).
This changes our logic to instead emit a warning if the credentials are
invalid.
Fixes https://github.com/pulumi/pulumi-docker-build/issues/121.