Skip to content

Conversation

@ytimocin
Copy link
Contributor

@ytimocin ytimocin commented Jan 7, 2026

Description

This pull request introduces conversion logic and related tests for the new BicepSettingsResource type in the v20250801preview API version, enabling seamless translation between versioned API models and internal datamodel representations. Additionally, it updates the EnvironmentResource conversion to include BicepSettings and TerraformSettings, and marks several dependencies as peer dependencies in package lock files.

API resource conversion logic:

  • Added bicepsettings_conversion.go in pkg/corerp/api/v20250801preview to implement bidirectional conversion between BicepSettingsResource (versioned API type) and its internal datamodel, including detailed mapping for authentication registry settings.
  • Updated environment_conversion.go to support conversion of BicepSettings and TerraformSettings properties in EnvironmentResource.

Testing:

  • Added comprehensive unit tests in bicepsettings_conversion_test.go to verify conversion logic for BicepSettingsResource, including authentication scenarios and error handling for invalid types.

Dependency management:

Type of change

  • This pull request adds or changes features of Radius and has an approved issue (issue link required).

Fixes: #issue_number

Contributor checklist

Please verify that the PR meets the following requirements, where applicable:

  • An overview of proposed schema changes is included in a linked GitHub issue.
    • Yes
    • Not applicable
  • A design document PR is created in the design-notes repository, if new APIs are being introduced.
    • Yes
    • Not applicable
  • The design document has been reviewed and approved by Radius maintainers/approvers.
    • Yes
    • Not applicable
  • A PR for the samples repository is created, if existing samples are affected by the changes in this PR.
    • Yes
    • Not applicable
  • A PR for the documentation repository is created, if the changes in this PR affect the documentation or any user facing updates are made.
    • Yes
    • Not applicable
  • A PR for the recipes repository is created, if existing recipes are affected by the changes in this PR.
    • Yes
    • Not applicable

@ytimocin ytimocin requested review from a team as code owners January 7, 2026 05:09
@ytimocin ytimocin temporarily deployed to functional-tests January 7, 2026 05:09 — with GitHub Actions Inactive
@ytimocin ytimocin changed the base branch from main to features/terraform-bicep-settings January 7, 2026 05:10
@github-actions
Copy link

github-actions bot commented Jan 7, 2026

Unit Tests

4 610 tests  +32   4 607 ✅ +33   7m 52s ⏱️ -5s
  331 suites + 2       3 💤 ± 0 
    1 files   ± 0       0 ❌  -  1 

Results for commit 86bf25f. ± Comparison against base commit e3f446e.

♻️ This comment has been updated with latest results.

@codecov
Copy link

codecov bot commented Jan 7, 2026

Codecov Report

❌ Patch coverage is 84.93151% with 55 lines in your changes missing coverage. Please review.
✅ Project coverage is 51.00%. Comparing base (e3f446e) to head (86bf25f).
⚠️ Report is 1 commits behind head on features/terraform-bicep-settings.

Files with missing lines Patch % Lines
...p/api/v20250801preview/bicepsettings_conversion.go 86.23% 10 Missing and 5 partials ⚠️
...i/v20250801preview/terraformsettings_conversion.go 90.76% 6 Missing and 6 partials ⚠️
...oller/bicepsettings/createorupdatebicepsettings.go 69.23% 4 Missing and 4 partials ⚠️
...rraformsettings/createorupdateterraformsettings.go 69.23% 4 Missing and 4 partials ⚠️
...erp/datamodel/converter/bicepsettings_converter.go 80.95% 2 Missing and 2 partials ⚠️
...datamodel/converter/terraformsettings_converter.go 80.95% 2 Missing and 2 partials ⚠️
...corerp/datamodel/bicepsettings_v20250801preview.go 0.00% 2 Missing ⚠️
...rp/datamodel/terraformsettings_v20250801preview.go 0.00% 2 Missing ⚠️
Additional details and impacted files
@@                          Coverage Diff                          @@
##           features/terraform-bicep-settings   #11013      +/-   ##
=====================================================================
+ Coverage                              50.70%   51.00%   +0.29%     
=====================================================================
  Files                                    675      683       +8     
  Lines                                  42456    42821     +365     
=====================================================================
+ Hits                                   21529    21839     +310     
- Misses                                 18858    18890      +32     
- Partials                                2069     2092      +23     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Contributor

@kachawla kachawla left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this a repurpose of the previously reviewed PR #10832? If so, could you point out main changes or anything in particular you’d like me to focus on for the re-review?

@ytimocin
Copy link
Contributor Author

Is this a repurpose of the previously reviewed PR #10832? If so, could you point out main changes or anything in particular you’d like me to focus on for the re-review?

Yes @kachawla, this is a cleaner version of that PR. You can probably focus on the following since most the changes are in generated files:

  • Files in pkg/corerp/api/v20250801preview folder except the fake folder and other generated files
  • Files in pkg/corerp/frontend/controller
  • TypeSpec changes

Thanks!

Signed-off-by: ytimocin <ytimocin@microsoft.com>
@ytimocin ytimocin force-pushed the ytimocin/terraform-bicep-settings/env-typespec-datamodel branch from ba6912b to 6cc1ccd Compare January 14, 2026 16:55
Signed-off-by: ytimocin <ytimocin@microsoft.com>
@radius-functional-tests
Copy link

radius-functional-tests bot commented Jan 14, 2026

Radius functional test overview

🔍 Go to test action run

Click here to see the test run details
Name Value
Repository radius-project/radius
Commit ref 86bf25f
Unique ID func8067a86aca
Image tag pr-func8067a86aca
  • gotestsum 1.13.0
  • KinD: v0.29.0
  • Dapr: 1.14.4
  • Azure KeyVault CSI driver: 1.4.2
  • Azure Workload identity webhook: 1.3.0
  • Bicep recipe location ghcr.io/radius-project/dev/test/testrecipes/test-bicep-recipes/<name>:pr-func8067a86aca
  • Terraform recipe location http://tf-module-server.radius-test-tf-module-server.svc.cluster.local/<name>.zip (in cluster)
  • applications-rp test image location: ghcr.io/radius-project/dev/applications-rp:pr-func8067a86aca
  • dynamic-rp test image location: ghcr.io/radius-project/dev/dynamic-rp:pr-func8067a86aca
  • controller test image location: ghcr.io/radius-project/dev/controller:pr-func8067a86aca
  • ucp test image location: ghcr.io/radius-project/dev/ucpd:pr-func8067a86aca
  • deployment-engine test image location: ghcr.io/radius-project/deployment-engine:latest

Test Status

⌛ Building Radius and pushing container images for functional tests...
✅ Container images build succeeded
⌛ Publishing Bicep Recipes for functional tests...
✅ Recipe publishing succeeded
⌛ Starting corerp-cloud functional tests...
⌛ Starting ucp-cloud functional tests...
✅ ucp-cloud functional tests succeeded
✅ corerp-cloud functional tests succeeded

@ytimocin ytimocin merged commit e32b94d into features/terraform-bicep-settings Jan 20, 2026
31 checks passed
@ytimocin ytimocin deleted the ytimocin/terraform-bicep-settings/env-typespec-datamodel branch January 20, 2026 18:11
ytimocin added a commit that referenced this pull request Jan 21, 2026
# Description

This pull request introduces conversion logic and related tests for the
new `BicepSettingsResource` type in the `v20250801preview` API version,
enabling seamless translation between versioned API models and internal
datamodel representations. Additionally, it updates the
`EnvironmentResource` conversion to include `BicepSettings` and
`TerraformSettings`, and marks several dependencies as peer dependencies
in package lock files.

**API resource conversion logic:**

* Added `bicepsettings_conversion.go` in
`pkg/corerp/api/v20250801preview` to implement bidirectional conversion
between `BicepSettingsResource` (versioned API type) and its internal
datamodel, including detailed mapping for authentication registry
settings.
* Updated `environment_conversion.go` to support conversion of
`BicepSettings` and `TerraformSettings` properties in
`EnvironmentResource`.

**Testing:**

* Added comprehensive unit tests in `bicepsettings_conversion_test.go`
to verify conversion logic for `BicepSettingsResource`, including
authentication scenarios and error handling for invalid types.

**Dependency management:**

* Marked several dependencies as peer dependencies in
`package-lock.json` for both `autorest.bicep` and `generator` packages
to improve dependency resolution and avoid duplication.
[[1]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R160)
[[2]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1661)
[[3]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1696)
[[4]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1731)
[[5]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1888)
[[6]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2205)
[[7]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2658)
[[8]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R3612)
[[9]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5345)
[[10]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5426)
[[11]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR672)
[[12]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR741)
[[13]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR898)
[[14]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR1265)
[[15]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR2564)

## Type of change
- This pull request adds or changes features of Radius and has an
approved issue (issue link required).

Fixes: #issue_number

## Contributor checklist
Please verify that the PR meets the following requirements, where
applicable:

<!--
This checklist uses "TaskRadio" comments to make certain options
mutually exclusive.
See:
https://github.com/mheap/require-checklist-action?tab=readme-ov-file#radio-groups
For details on how this works and why it's required.
-->

- An overview of proposed schema changes is included in a linked GitHub
issue.
    - [ ] Yes <!-- TaskRadio schema -->
    - [x] Not applicable <!-- TaskRadio schema -->
- A design document PR is created in the [design-notes
repository](https://github.com/radius-project/design-notes/), if new
APIs are being introduced.
    - [ ] Yes <!-- TaskRadio design-pr -->
    - [x] Not applicable <!-- TaskRadio design-pr -->
- The design document has been reviewed and approved by Radius
maintainers/approvers.
    - [ ] Yes <!-- TaskRadio design-review -->
    - [x] Not applicable <!-- TaskRadio design-review -->
- A PR for the [samples
repository](https://github.com/radius-project/samples) is created, if
existing samples are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio samples-pr -->
    - [x] Not applicable <!-- TaskRadio samples-pr -->
- A PR for the [documentation
repository](https://github.com/radius-project/docs) is created, if the
changes in this PR affect the documentation or any user facing updates
are made.
    - [ ] Yes <!-- TaskRadio docs-pr -->
    - [x] Not applicable <!-- TaskRadio docs-pr -->
- A PR for the [recipes
repository](https://github.com/radius-project/recipes) is created, if
existing recipes are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio recipes-pr -->
    - [x] Not applicable <!-- TaskRadio recipes-pr -->

---------

Signed-off-by: ytimocin <ytimocin@microsoft.com>
ytimocin added a commit that referenced this pull request Jan 21, 2026
# Description

This pull request introduces conversion logic and related tests for the
new `BicepSettingsResource` type in the `v20250801preview` API version,
enabling seamless translation between versioned API models and internal
datamodel representations. Additionally, it updates the
`EnvironmentResource` conversion to include `BicepSettings` and
`TerraformSettings`, and marks several dependencies as peer dependencies
in package lock files.

**API resource conversion logic:**

* Added `bicepsettings_conversion.go` in
`pkg/corerp/api/v20250801preview` to implement bidirectional conversion
between `BicepSettingsResource` (versioned API type) and its internal
datamodel, including detailed mapping for authentication registry
settings.
* Updated `environment_conversion.go` to support conversion of
`BicepSettings` and `TerraformSettings` properties in
`EnvironmentResource`.

**Testing:**

* Added comprehensive unit tests in `bicepsettings_conversion_test.go`
to verify conversion logic for `BicepSettingsResource`, including
authentication scenarios and error handling for invalid types.

**Dependency management:**

* Marked several dependencies as peer dependencies in
`package-lock.json` for both `autorest.bicep` and `generator` packages
to improve dependency resolution and avoid duplication.
[[1]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R160)
[[2]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1661)
[[3]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1696)
[[4]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1731)
[[5]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1888)
[[6]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2205)
[[7]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2658)
[[8]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R3612)
[[9]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5345)
[[10]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5426)
[[11]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR672)
[[12]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR741)
[[13]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR898)
[[14]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR1265)
[[15]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR2564)

## Type of change
- This pull request adds or changes features of Radius and has an
approved issue (issue link required).

Fixes: #issue_number

## Contributor checklist
Please verify that the PR meets the following requirements, where
applicable:

<!--
This checklist uses "TaskRadio" comments to make certain options
mutually exclusive.
See:
https://github.com/mheap/require-checklist-action?tab=readme-ov-file#radio-groups
For details on how this works and why it's required.
-->

- An overview of proposed schema changes is included in a linked GitHub
issue.
    - [ ] Yes <!-- TaskRadio schema -->
    - [x] Not applicable <!-- TaskRadio schema -->
- A design document PR is created in the [design-notes
repository](https://github.com/radius-project/design-notes/), if new
APIs are being introduced.
    - [ ] Yes <!-- TaskRadio design-pr -->
    - [x] Not applicable <!-- TaskRadio design-pr -->
- The design document has been reviewed and approved by Radius
maintainers/approvers.
    - [ ] Yes <!-- TaskRadio design-review -->
    - [x] Not applicable <!-- TaskRadio design-review -->
- A PR for the [samples
repository](https://github.com/radius-project/samples) is created, if
existing samples are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio samples-pr -->
    - [x] Not applicable <!-- TaskRadio samples-pr -->
- A PR for the [documentation
repository](https://github.com/radius-project/docs) is created, if the
changes in this PR affect the documentation or any user facing updates
are made.
    - [ ] Yes <!-- TaskRadio docs-pr -->
    - [x] Not applicable <!-- TaskRadio docs-pr -->
- A PR for the [recipes
repository](https://github.com/radius-project/recipes) is created, if
existing recipes are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio recipes-pr -->
    - [x] Not applicable <!-- TaskRadio recipes-pr -->

---------

Signed-off-by: ytimocin <ytimocin@microsoft.com>
ytimocin added a commit that referenced this pull request Jan 22, 2026
# Description

This pull request introduces conversion logic and related tests for the
new `BicepSettingsResource` type in the `v20250801preview` API version,
enabling seamless translation between versioned API models and internal
datamodel representations. Additionally, it updates the
`EnvironmentResource` conversion to include `BicepSettings` and
`TerraformSettings`, and marks several dependencies as peer dependencies
in package lock files.

**API resource conversion logic:**

* Added `bicepsettings_conversion.go` in
`pkg/corerp/api/v20250801preview` to implement bidirectional conversion
between `BicepSettingsResource` (versioned API type) and its internal
datamodel, including detailed mapping for authentication registry
settings.
* Updated `environment_conversion.go` to support conversion of
`BicepSettings` and `TerraformSettings` properties in
`EnvironmentResource`.

**Testing:**

* Added comprehensive unit tests in `bicepsettings_conversion_test.go`
to verify conversion logic for `BicepSettingsResource`, including
authentication scenarios and error handling for invalid types.

**Dependency management:**

* Marked several dependencies as peer dependencies in
`package-lock.json` for both `autorest.bicep` and `generator` packages
to improve dependency resolution and avoid duplication.
[[1]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R160)
[[2]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1661)
[[3]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1696)
[[4]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1731)
[[5]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1888)
[[6]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2205)
[[7]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2658)
[[8]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R3612)
[[9]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5345)
[[10]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5426)
[[11]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR672)
[[12]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR741)
[[13]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR898)
[[14]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR1265)
[[15]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR2564)

## Type of change
- This pull request adds or changes features of Radius and has an
approved issue (issue link required).

Fixes: #issue_number

## Contributor checklist
Please verify that the PR meets the following requirements, where
applicable:

<!--
This checklist uses "TaskRadio" comments to make certain options
mutually exclusive.
See:
https://github.com/mheap/require-checklist-action?tab=readme-ov-file#radio-groups
For details on how this works and why it's required.
-->

- An overview of proposed schema changes is included in a linked GitHub
issue.
    - [ ] Yes <!-- TaskRadio schema -->
    - [x] Not applicable <!-- TaskRadio schema -->
- A design document PR is created in the [design-notes
repository](https://github.com/radius-project/design-notes/), if new
APIs are being introduced.
    - [ ] Yes <!-- TaskRadio design-pr -->
    - [x] Not applicable <!-- TaskRadio design-pr -->
- The design document has been reviewed and approved by Radius
maintainers/approvers.
    - [ ] Yes <!-- TaskRadio design-review -->
    - [x] Not applicable <!-- TaskRadio design-review -->
- A PR for the [samples
repository](https://github.com/radius-project/samples) is created, if
existing samples are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio samples-pr -->
    - [x] Not applicable <!-- TaskRadio samples-pr -->
- A PR for the [documentation
repository](https://github.com/radius-project/docs) is created, if the
changes in this PR affect the documentation or any user facing updates
are made.
    - [ ] Yes <!-- TaskRadio docs-pr -->
    - [x] Not applicable <!-- TaskRadio docs-pr -->
- A PR for the [recipes
repository](https://github.com/radius-project/recipes) is created, if
existing recipes are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio recipes-pr -->
    - [x] Not applicable <!-- TaskRadio recipes-pr -->

---------

Signed-off-by: ytimocin <ytimocin@microsoft.com>
ytimocin added a commit that referenced this pull request Jan 23, 2026
# Description

This pull request introduces conversion logic and related tests for the
new `BicepSettingsResource` type in the `v20250801preview` API version,
enabling seamless translation between versioned API models and internal
datamodel representations. Additionally, it updates the
`EnvironmentResource` conversion to include `BicepSettings` and
`TerraformSettings`, and marks several dependencies as peer dependencies
in package lock files.

**API resource conversion logic:**

* Added `bicepsettings_conversion.go` in
`pkg/corerp/api/v20250801preview` to implement bidirectional conversion
between `BicepSettingsResource` (versioned API type) and its internal
datamodel, including detailed mapping for authentication registry
settings.
* Updated `environment_conversion.go` to support conversion of
`BicepSettings` and `TerraformSettings` properties in
`EnvironmentResource`.

**Testing:**

* Added comprehensive unit tests in `bicepsettings_conversion_test.go`
to verify conversion logic for `BicepSettingsResource`, including
authentication scenarios and error handling for invalid types.

**Dependency management:**

* Marked several dependencies as peer dependencies in
`package-lock.json` for both `autorest.bicep` and `generator` packages
to improve dependency resolution and avoid duplication.
[[1]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R160)
[[2]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1661)
[[3]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1696)
[[4]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1731)
[[5]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1888)
[[6]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2205)
[[7]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2658)
[[8]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R3612)
[[9]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5345)
[[10]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5426)
[[11]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR672)
[[12]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR741)
[[13]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR898)
[[14]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR1265)
[[15]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR2564)

## Type of change
- This pull request adds or changes features of Radius and has an
approved issue (issue link required).

Fixes: #issue_number

## Contributor checklist
Please verify that the PR meets the following requirements, where
applicable:

<!--
This checklist uses "TaskRadio" comments to make certain options
mutually exclusive.
See:
https://github.com/mheap/require-checklist-action?tab=readme-ov-file#radio-groups
For details on how this works and why it's required.
-->

- An overview of proposed schema changes is included in a linked GitHub
issue.
    - [ ] Yes <!-- TaskRadio schema -->
    - [x] Not applicable <!-- TaskRadio schema -->
- A design document PR is created in the [design-notes
repository](https://github.com/radius-project/design-notes/), if new
APIs are being introduced.
    - [ ] Yes <!-- TaskRadio design-pr -->
    - [x] Not applicable <!-- TaskRadio design-pr -->
- The design document has been reviewed and approved by Radius
maintainers/approvers.
    - [ ] Yes <!-- TaskRadio design-review -->
    - [x] Not applicable <!-- TaskRadio design-review -->
- A PR for the [samples
repository](https://github.com/radius-project/samples) is created, if
existing samples are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio samples-pr -->
    - [x] Not applicable <!-- TaskRadio samples-pr -->
- A PR for the [documentation
repository](https://github.com/radius-project/docs) is created, if the
changes in this PR affect the documentation or any user facing updates
are made.
    - [ ] Yes <!-- TaskRadio docs-pr -->
    - [x] Not applicable <!-- TaskRadio docs-pr -->
- A PR for the [recipes
repository](https://github.com/radius-project/recipes) is created, if
existing recipes are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio recipes-pr -->
    - [x] Not applicable <!-- TaskRadio recipes-pr -->

---------

Signed-off-by: ytimocin <ytimocin@microsoft.com>
ytimocin added a commit that referenced this pull request Jan 24, 2026
# Description

This pull request introduces conversion logic and related tests for the
new `BicepSettingsResource` type in the `v20250801preview` API version,
enabling seamless translation between versioned API models and internal
datamodel representations. Additionally, it updates the
`EnvironmentResource` conversion to include `BicepSettings` and
`TerraformSettings`, and marks several dependencies as peer dependencies
in package lock files.

**API resource conversion logic:**

* Added `bicepsettings_conversion.go` in
`pkg/corerp/api/v20250801preview` to implement bidirectional conversion
between `BicepSettingsResource` (versioned API type) and its internal
datamodel, including detailed mapping for authentication registry
settings.
* Updated `environment_conversion.go` to support conversion of
`BicepSettings` and `TerraformSettings` properties in
`EnvironmentResource`.

**Testing:**

* Added comprehensive unit tests in `bicepsettings_conversion_test.go`
to verify conversion logic for `BicepSettingsResource`, including
authentication scenarios and error handling for invalid types.

**Dependency management:**

* Marked several dependencies as peer dependencies in
`package-lock.json` for both `autorest.bicep` and `generator` packages
to improve dependency resolution and avoid duplication.
[[1]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R160)
[[2]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1661)
[[3]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1696)
[[4]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1731)
[[5]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1888)
[[6]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2205)
[[7]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2658)
[[8]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R3612)
[[9]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5345)
[[10]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5426)
[[11]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR672)
[[12]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR741)
[[13]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR898)
[[14]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR1265)
[[15]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR2564)

## Type of change
- This pull request adds or changes features of Radius and has an
approved issue (issue link required).

Fixes: #issue_number

## Contributor checklist
Please verify that the PR meets the following requirements, where
applicable:

<!--
This checklist uses "TaskRadio" comments to make certain options
mutually exclusive.
See:
https://github.com/mheap/require-checklist-action?tab=readme-ov-file#radio-groups
For details on how this works and why it's required.
-->

- An overview of proposed schema changes is included in a linked GitHub
issue.
    - [ ] Yes <!-- TaskRadio schema -->
    - [x] Not applicable <!-- TaskRadio schema -->
- A design document PR is created in the [design-notes
repository](https://github.com/radius-project/design-notes/), if new
APIs are being introduced.
    - [ ] Yes <!-- TaskRadio design-pr -->
    - [x] Not applicable <!-- TaskRadio design-pr -->
- The design document has been reviewed and approved by Radius
maintainers/approvers.
    - [ ] Yes <!-- TaskRadio design-review -->
    - [x] Not applicable <!-- TaskRadio design-review -->
- A PR for the [samples
repository](https://github.com/radius-project/samples) is created, if
existing samples are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio samples-pr -->
    - [x] Not applicable <!-- TaskRadio samples-pr -->
- A PR for the [documentation
repository](https://github.com/radius-project/docs) is created, if the
changes in this PR affect the documentation or any user facing updates
are made.
    - [ ] Yes <!-- TaskRadio docs-pr -->
    - [x] Not applicable <!-- TaskRadio docs-pr -->
- A PR for the [recipes
repository](https://github.com/radius-project/recipes) is created, if
existing recipes are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio recipes-pr -->
    - [x] Not applicable <!-- TaskRadio recipes-pr -->

---------

Signed-off-by: ytimocin <ytimocin@microsoft.com>
ytimocin added a commit that referenced this pull request Jan 27, 2026
# Description

This pull request introduces conversion logic and related tests for the
new `BicepSettingsResource` type in the `v20250801preview` API version,
enabling seamless translation between versioned API models and internal
datamodel representations. Additionally, it updates the
`EnvironmentResource` conversion to include `BicepSettings` and
`TerraformSettings`, and marks several dependencies as peer dependencies
in package lock files.

**API resource conversion logic:**

* Added `bicepsettings_conversion.go` in
`pkg/corerp/api/v20250801preview` to implement bidirectional conversion
between `BicepSettingsResource` (versioned API type) and its internal
datamodel, including detailed mapping for authentication registry
settings.
* Updated `environment_conversion.go` to support conversion of
`BicepSettings` and `TerraformSettings` properties in
`EnvironmentResource`.

**Testing:**

* Added comprehensive unit tests in `bicepsettings_conversion_test.go`
to verify conversion logic for `BicepSettingsResource`, including
authentication scenarios and error handling for invalid types.

**Dependency management:**

* Marked several dependencies as peer dependencies in
`package-lock.json` for both `autorest.bicep` and `generator` packages
to improve dependency resolution and avoid duplication.
[[1]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R160)
[[2]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1661)
[[3]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1696)
[[4]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1731)
[[5]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1888)
[[6]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2205)
[[7]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2658)
[[8]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R3612)
[[9]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5345)
[[10]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5426)
[[11]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR672)
[[12]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR741)
[[13]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR898)
[[14]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR1265)
[[15]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR2564)

## Type of change
- This pull request adds or changes features of Radius and has an
approved issue (issue link required).

Fixes: #issue_number

## Contributor checklist
Please verify that the PR meets the following requirements, where
applicable:

<!--
This checklist uses "TaskRadio" comments to make certain options
mutually exclusive.
See:
https://github.com/mheap/require-checklist-action?tab=readme-ov-file#radio-groups
For details on how this works and why it's required.
-->

- An overview of proposed schema changes is included in a linked GitHub
issue.
    - [ ] Yes <!-- TaskRadio schema -->
    - [x] Not applicable <!-- TaskRadio schema -->
- A design document PR is created in the [design-notes
repository](https://github.com/radius-project/design-notes/), if new
APIs are being introduced.
    - [ ] Yes <!-- TaskRadio design-pr -->
    - [x] Not applicable <!-- TaskRadio design-pr -->
- The design document has been reviewed and approved by Radius
maintainers/approvers.
    - [ ] Yes <!-- TaskRadio design-review -->
    - [x] Not applicable <!-- TaskRadio design-review -->
- A PR for the [samples
repository](https://github.com/radius-project/samples) is created, if
existing samples are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio samples-pr -->
    - [x] Not applicable <!-- TaskRadio samples-pr -->
- A PR for the [documentation
repository](https://github.com/radius-project/docs) is created, if the
changes in this PR affect the documentation or any user facing updates
are made.
    - [ ] Yes <!-- TaskRadio docs-pr -->
    - [x] Not applicable <!-- TaskRadio docs-pr -->
- A PR for the [recipes
repository](https://github.com/radius-project/recipes) is created, if
existing recipes are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio recipes-pr -->
    - [x] Not applicable <!-- TaskRadio recipes-pr -->

---------

Signed-off-by: ytimocin <ytimocin@microsoft.com>
ytimocin added a commit that referenced this pull request Jan 27, 2026
# Description

This pull request introduces conversion logic and related tests for the
new `BicepSettingsResource` type in the `v20250801preview` API version,
enabling seamless translation between versioned API models and internal
datamodel representations. Additionally, it updates the
`EnvironmentResource` conversion to include `BicepSettings` and
`TerraformSettings`, and marks several dependencies as peer dependencies
in package lock files.

**API resource conversion logic:**

* Added `bicepsettings_conversion.go` in
`pkg/corerp/api/v20250801preview` to implement bidirectional conversion
between `BicepSettingsResource` (versioned API type) and its internal
datamodel, including detailed mapping for authentication registry
settings.
* Updated `environment_conversion.go` to support conversion of
`BicepSettings` and `TerraformSettings` properties in
`EnvironmentResource`.

**Testing:**

* Added comprehensive unit tests in `bicepsettings_conversion_test.go`
to verify conversion logic for `BicepSettingsResource`, including
authentication scenarios and error handling for invalid types.

**Dependency management:**

* Marked several dependencies as peer dependencies in
`package-lock.json` for both `autorest.bicep` and `generator` packages
to improve dependency resolution and avoid duplication.
[[1]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R160)
[[2]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1661)
[[3]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1696)
[[4]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1731)
[[5]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R1888)
[[6]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2205)
[[7]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R2658)
[[8]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R3612)
[[9]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5345)
[[10]](diffhunk://#diff-075b4bbd5a7ae383d7c25934867346d6019accb02b5c5830c2fe6854ce420203R5426)
[[11]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR672)
[[12]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR741)
[[13]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR898)
[[14]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR1265)
[[15]](diffhunk://#diff-2c80cff24f8409b4ace1d93aae9e72fe0245398a137e056279b4fba9a788b99eR2564)

## Type of change
- This pull request adds or changes features of Radius and has an
approved issue (issue link required).

Fixes: #issue_number

## Contributor checklist
Please verify that the PR meets the following requirements, where
applicable:

<!--
This checklist uses "TaskRadio" comments to make certain options
mutually exclusive.
See:
https://github.com/mheap/require-checklist-action?tab=readme-ov-file#radio-groups
For details on how this works and why it's required.
-->

- An overview of proposed schema changes is included in a linked GitHub
issue.
    - [ ] Yes <!-- TaskRadio schema -->
    - [x] Not applicable <!-- TaskRadio schema -->
- A design document PR is created in the [design-notes
repository](https://github.com/radius-project/design-notes/), if new
APIs are being introduced.
    - [ ] Yes <!-- TaskRadio design-pr -->
    - [x] Not applicable <!-- TaskRadio design-pr -->
- The design document has been reviewed and approved by Radius
maintainers/approvers.
    - [ ] Yes <!-- TaskRadio design-review -->
    - [x] Not applicable <!-- TaskRadio design-review -->
- A PR for the [samples
repository](https://github.com/radius-project/samples) is created, if
existing samples are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio samples-pr -->
    - [x] Not applicable <!-- TaskRadio samples-pr -->
- A PR for the [documentation
repository](https://github.com/radius-project/docs) is created, if the
changes in this PR affect the documentation or any user facing updates
are made.
    - [ ] Yes <!-- TaskRadio docs-pr -->
    - [x] Not applicable <!-- TaskRadio docs-pr -->
- A PR for the [recipes
repository](https://github.com/radius-project/recipes) is created, if
existing recipes are affected by the changes in this PR.
    - [ ] Yes <!-- TaskRadio recipes-pr -->
    - [x] Not applicable <!-- TaskRadio recipes-pr -->

---------

Signed-off-by: ytimocin <ytimocin@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants