Azure / avdaccelerator

AVD Accelerator deployment automation to simplify the setup of AVD (Azure Virtual Desktop) based on best practices
MIT License
308 stars 201 forks source link

[Feature request] - Versioning of DSC scripts to avoid breaking changes #530

Closed stalejohnsen closed 8 months ago

stalejohnsen commented 8 months ago

Describe the feature end to end, including deployment scenario details under which the feature would occur.

It would be great if changes to the DSC scripts could be versioned in the future to avoid breaking changes when using cloned AVD accelerator modules in combination with the remote dsc script uris.

For example previously this week there was a commit with changes on parameter names which requires that you have the latest local version of bicep modules or it would fail with 'A parameter cannot be found that matches parameter name 'DomainAdminUserName''. 'https://github.com/Azure/avdaccelerator/commit/db7ebfd44d1a44fba303736159ccf56a4a83a776 If this update of the dsc script was combined with a date version and that date version was used in the updated arm/bicep modules, this change would not break previously cloned arm/bicep modules using remote dsc script uris.

Some organizations are not able to use synced forks to stay up to date with upstream so releases with a changelog would be a great addition to this project.

Why is this feature important. Describe why this would be important for your organization and others. Would this impact similar orgs in the same way?

Improving code quality, reducing probability of introducing breaking changes.

Please provide the correlation id associated with your error or bug.

xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Can you describe any alternatives that you have taken since this feature does not exist?

No response

Feature Implementation

No response

danycontre commented 8 months ago

@stalejohnsen thanks for the feedback, it makes a lot of sense, we just pushed updates (feature branch ids-updates) to introduce versioning of the DSC package and will aim at keeping the last 3 versions.

But in general, if the customer is creating a local copy, we recommend modifying their local code to point to their own copy of the scripts/packages, lines to modify are: