Refactor workspace devfile logic/spec/fixtures
Issue: Refactorings to workspace container/script logic (#511503 - closed)
NOTE: This MR is currently rebased on Refactor workspaces component-related code and ... (!174589 - merged) (caw-ws-refactor-component-logic)
What does this MR do and why?
Refactor workspaces component-related code and specs.
This is a second preliminary refactoring/rename/cleanup to prepare for Add support for devfile postStart event in Work... (#505988 - closed)
Refactor workspace devfile logic/spec/fixtures:
- Default all top-level structures in flattened devfile in initial devfile_flattener, instead of initializing them lazily in subsequent steps
- Rename and refactor some fixture files
- Refactor read_devfile_* methods to read_devfile_*_yaml
- converting processed devfile hash's keys from strings to symbols for easier reference, and to give us the ability to use rightward-assignment destructuring and type safety
- Other related cleanups for RubyMine inspections warnings
- Changes some single-quotes to double-quotes on modified lines (see Convert all string literals to use double quote... (#416147))
References
- Refactorings to workspace container/script logic (#511503 - closed)
- Add support for devfile postStart event in Work... (#505988 - closed)
- Startup scripts for Remote Development workspac... (&15602)
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Screenshots or screen recordings
N/A, pure refactoring, no UI or functionality changes
How to set up and validate locally
Workspace creation, reconcile, and usage (cloning and volume mounting) should still work as expected.