This message was deleted.
# dotnet
s
This message was deleted.
t
Not exactly an answer to your question, but you should be able to avoid this. I would try to build a dictionary inside apply and move the resource constructor outside, somewhat similar to https://github.com/pulumi/pulumi-azure/blob/e07905225513d0adfaceac1633ac8e5d8c815c43/sdk/nodejs/appservice/zMixins.ts#L408-L424
b
ah that go code does look promising - but it looks like in the go sdk you can add assets and outputs to this map? in c# sdk i believe you can only use a dictionary of AssetOrArchive, so that's why I wrapped the whole archive in an apply instead of just the stringasset:
oops ignore me that is not go code 🤦‍♂️ i mean typescript
yeah it looks like the typescript asset and archive types each take in things like
string | Promise<string>
and
AssetMap | Promise<AssetMap>
etc, but the c# AssetArchive only takes in a
Dictionary<string, AssetOrArchive>
and StringAsset only accepts a
string
I have created a github issue with some more info https://github.com/pulumi/pulumi/issues/7076 Still working on getting a minimal workable example that actually fails similarly to my stack
t
ah, that’s a notable difference in the API indeed. I am not sure why it exists.
b
I updated the github issue but it looks like it isn't a problem with outputs at all. it is
refresh
that is rewriting the archive's representation in the state file. output<t> was just a red herring and/or a bad hunch! hah
t
aha! I think this has been reported before.
Ah, I can see you linked it already
b
haha inb4 - i can at least for now skip
pulumi refresh
and keep going. i might be able to poke around the refresh implementation at a later point but let me know if i can provide any more info to help out!