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

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.

Edited by Chad Woolley

Merge request reports

Loading