Azure / Azure/azure-service-operator

Refactor ToARMConverter + FromARMConverter

Open
#2,829 5 comments 2 reactions 0 assignees View on GitHub
low-priority technical-debt 📈
Dominant language
Go
Stars
911
Forks
261
Avg merge
1d 22h
Merged PRs (30d)
48

Description

The shape of these interfaces evolved somewhat organically. We generate both conversion directions for all types, but in reality it would make more sense to generate only ToARM for Spec types, and only FromARM for Status types, as those are the directions that things flow.

For example the fact that `FromARMConverter.PopulateFromARM` takes an owner is weird because it's only ever used for Status types and we never actually call that method on Spec types.

Contributor guide

Open the contributing guide

Research direction

Start by locating the ToARMConverter and FromARMConverter interfaces and all generated implementations and call sites. Trace how Spec and Status types use each conversion direction, then update the interfaces and generation paths so each type exposes only its applicable converter; done when the generated code and relevant tests compile and pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.