[Static Assets] Improve development experience by javiercn · Pull Request #57671 · dotnet/aspnetcore (original) (raw)
mkArtakMSFT pushed a commit that referenced this pull request
Backport of #57671 to release/9.0
/cc @javiercn
[Static Assets] Improve development experience
Fixes an issue when running a published app on Development and provides a better error when static web assets are not enabled during development
Description
- Addresses two issues that we found during development:
- When the user publishes the app and runs against the
Development
environment:- Some logic that is pivoted on based on the Environment and is only used during development (Build as opposed to Publish) interferes with the output and causes issues on the running app.
- When the app runs during development, but Static Web Assets are not enabled for some reason:
- The app isn't able to find some static files and errors out.
- The fix improves the experience by detecting this situation and logging a warning on the console with instructions on how to enable static web assets explicitly.
- When the user publishes the app and runs against the
Customer Impact
- Running in Docker 'Regular Mode' in Visual Studio breaks as the app runs the published output with
Development
environment. - Running the app during development with a custom environment or without a launch profile will cause some static files to not be found.
Regression?
- Yes
- No
8.0 and earlier, the published output was runnable in Development
environment. For example in Docker containers regular mode (how the issue was found).
Risk
- High
- Medium
- Low
The changes uses information that we produce during the build (Build and Publish) to differentiate between the two scenarios and disable the development functionality for the published output and provide a better error message when static web assets are not enabled during development.
Verification
- Manual (required)
- Automated
Packaging changes reviewed?
- Yes
- No
- N/A
When servicing release/2.1
- Make necessary changes in eng/PatchConfig.props