New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Send smart aliases via gRPC to engine #9731
Conversation
/run-integration-tests |
Please view the results of the PR Build + Acceptance Tests Run Here |
/run-integration-tests |
Please view the results of the PR Build + Integration Tests Run Here |
Curious how big of a change in the engine would it be to rename the existing field (keeping tag ID the same) to I'd then add a |
Done. Interestingly a discovery fell out of that rename that we didn't look at aliases for resource reads, and only the Go SDK tried to send them. I'm not sure if aliases make sense for reads anyway so I've just removed that field for now. Would be good to get @pgavlin check on if alias for reads is/isn't needed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My only comment is that this makes me long for codegen-ing resource options. It's a lot of little changes to review in each SDK.
Looking forward to deleting "inheritedChildAlias" and all the other machinery in the SDKs in 4.0.
@@ -104,6 +104,7 @@ type ResourceOptions struct { | |||
Remote bool | |||
Providers map[string]string | |||
AdditionalSecretOutputs []resource.PropertyKey | |||
SmartAliases []resource.Alias |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Able to rename this field as well?
Working on a design for that today 😄
Yes will do! |
LGTM |
* Send smart aliases via gRPC to engine * Add to SupportsFeature * Restore old logic when the engine doesn't support smartAliases * Add to deploytest ResourceOptions * Add tests * Add to CHANGELOG * Fix test * Rename proto fields * Regenerate protobufs * Fix up SDKs after field rename * Rename deploytest aliases * Rename internal fields * Fix typo in c# code * Fix typescript * Rename feature to aliasSpecs * Rename type to Spec
…ulumi/pulumi#9999) * Revert "Send smart aliases via gRPC to engine (pulumi/pulumi#9731)" This reverts commit c58062b. * Just fully revert the protobuf changes * Add to CHANGELOG
Description
This add an new field on the RegisterResource and ReadResource protobuf messages to the resource monitor. As well as the
repeated string aliases
field, we now have arepeated Alias smartAliases
field (name open to scrutiny). TheAlias
object is a protobuf encoding to match the alias objects we have in the SDKs where users can just set "name", or "type". Those objects worked by the SDK then resolving down to a URN, that resolution logic is now also in the engine and so eventually we'll be able to remove all that logic from every SDK (we can't remove it straight away because of back compatibility, a user may have a new SDK but old engine).Fixes #9734
Checklist