`spin deploy` is using application name from the bindle rather than from the application manifest
calebschoepp opened this issue · 4 comments
This is a problem in the following scenario:
- Change application name in
spin.toml
- Run
spin deploy
- Uses old name to find the app id when we expected it to use the new name
Although users will typically need to run spin build
before deploying anyways, this is a subtle and confusing bug I think we should avoid.
fermyon/spin#1141 as a ref
Is this still needed now we are in the OCI world? If so, what is the specific change that is being requested?
I don't know if this is fixed now that we're using OCI. It can be tested by:
- Make an app with
spin new
- Run
spin build
- Run
spin cloud deploy
- Modify the name of the app in the
spin.toml
- Run
spin cloud deploy
again - Expect to see two different apps in the cloud with different names
If we don't see two different apps than the OCI deploy path is probably pulling the name from the OCI image (similar to how Bindle was doing it) which is a subtle behaviour we want to avoid.
I followed your steps and I have two different apps in the cloud with two different names. If I understand your message correctly, that means the issue is fixed?
(I am a bit curious as to how Cloud could ever have "known" to use an old bindle/OCI image - there's no persistent ID, so it seems like that would require something to remember the old name somehow. Oh or if it was matching on a hash derived from everything except the spin.toml
?! Then again, no, I am not curious enough to dive back through months of bindle-related history. I will be happier not knowing.)
Closing as fixed; if I've misunderstood, please re-open.