serverless / desktop

A native GUI application that makes it easy to explore and test Serverless Framework applications built on AWS Lambda.
45 stars 4 forks source link

Sync errors not being shown to user #16

Closed austencollins closed 3 years ago

austencollins commented 3 years ago

When opening a view, and the sync process fails, no error is shown to the user. Instead, the view is simply blank.

Here is an example where a resource was not found because it was deleted manually, even though it is listed in a CloudFormation stack.

Screen Shot 2021-02-09 at 12 07 45 PM
stevewillard commented 3 years ago

If a resource has been deleted manually, do we fail the whole sync process, or can we skip over the missing resource?

My preference would to be skip over what's missing, but provide an error array of resources that failed to sync. cc @astuyve

astuyve commented 3 years ago

That seems like appropriate acceptance criteria to me! I can start looking into that!

astuyve commented 3 years ago

@ac360 I'm unclear on the path by which Traditional component instances are upgraded.

Let's say hypothetically I make this change, likely around this area: https://github.com/serverlessinc/platform/blob/master/sp-connect/code/traditional/src/functions/sync.js#L59-L83 Then I publish a new version of the traditional component.

How do the existing instances get updated? Do they just stay dormant until we call sync, and then get re-incarnated with the latest version? Is the expectation that all Traditional component instances will be at the same version at the same time?

austencollins commented 3 years ago

@astuyve Correct. Right now, the Desktop is set to call the LATEST version of the Traditional Component. This is the default behavior when you do not include a Component version in the sdk.run() request. As soon as you make the change and publish a new version, all Desktop users will use this. We thought this was best at this innovation phase and considering the Desktop update experience is super smooth. Later, we may want to investigate the version pinning functionality of Components.