You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: support shared key vault and create secrets in azlocal (#4716)
## Description
<!--
>Thank you for your contribution !
> Please include a summary of the change and which issue is fixed.
> Please also include the context.
> List any dependencies that are required for this change.
Fixes#123Fixes#456Closes#123Closes#456
-->
## Pipeline Reference
<!-- Insert your Pipeline Status Badge below -->
| Pipeline |
| -------- |
|
[](https://github.com/Infrastructure-as-code-Automation/bicep-registry-modules/actions/workflows/avm.res.azure-stack-hci.cluster.yml)
|
## Type of Change
<!-- Use the checkboxes [x] on the options that are relevant. -->
- [ ] Update to CI Environment or utilities (Non-module affecting
changes)
- [ ] Azure Verified Module updates:
- [ ] Bugfix containing backwards-compatible bug fixes, and I have NOT
bumped the MAJOR or MINOR version in `version.json`:
- [ ] Someone has opened a bug report issue, and I have included "Closes
#{bug_report_issue_number}" in the PR description.
- [ ] The bug was found by the module author, and no one has opened an
issue to report it yet.
- [ ] Feature update backwards compatible feature updates, and I have
bumped the MINOR version in `version.json`.
- [ ] Breaking changes and I have bumped the MAJOR version in
`version.json`.
- [ ] Update to documentation
## Checklist
- [ ] I'm sure there are no other open Pull Requests for the same
update/change
- [ ] I have run `Set-AVMModule` locally to generate the supporting
module files.
- [ ] My corresponding pipelines / checks run clean and green without
any errors or warnings
<!-- Please keep up to date with the contribution guide at
https://aka.ms/avm/contribute/bicep -->
---------
Co-authored-by: Hangyu Xu <[email protected]>
'hidden-title': 'This is visible in the resource name'
@@ -855,17 +915,36 @@ param tags = {
855
915
| :-- | :-- | :-- |
856
916
|[`name`](#parameter-name)| string | The name of the Azure Stack HCI cluster - this must be a valid Active Directory computer name and will be the name of your cluster in Azure. |
857
917
918
+
**Conditional parameters**
919
+
920
+
| Parameter | Type | Description |
921
+
| :-- | :-- | :-- |
922
+
|[`deploymentUser`](#parameter-deploymentuser)| string | The name of the deployment user. Required if useSharedKeyVault is true. |
923
+
|[`deploymentUserPassword`](#parameter-deploymentuserpassword)| securestring | The password of the deployment user. Required if useSharedKeyVault is true. |
924
+
|[`localAdminPassword`](#parameter-localadminpassword)| securestring | The password of the local admin user. Required if useSharedKeyVault is true. |
925
+
|[`localAdminUser`](#parameter-localadminuser)| string | The name of the local admin user. Required if useSharedKeyVault is true. |
926
+
|[`servicePrincipalId`](#parameter-serviceprincipalid)| string | The service principal ID for ARB. Required if useSharedKeyVault is true. |
927
+
|[`servicePrincipalSecret`](#parameter-serviceprincipalsecret)| string | The service principal secret for ARB. Required if useSharedKeyVault is true. |
928
+
858
929
**Optional parameters**
859
930
860
931
| Parameter | Type | Description |
861
932
| :-- | :-- | :-- |
933
+
|[`azureStackLCMUserCredentialContentType`](#parameter-azurestacklcmusercredentialcontenttype)| string | Content type of the azure stack lcm user credential. |
934
+
|[`azureStackLCMUserCredentialTags`](#parameter-azurestacklcmusercredentialtags)| object | Tags of azure stack LCM user credential. |
935
+
|[`defaultARBApplicationContentType`](#parameter-defaultarbapplicationcontenttype)| string | Content type of the default ARB application. |
936
+
|[`defaultARBApplicationTags`](#parameter-defaultarbapplicationtags)| object | Tags of the default ARB application. |
862
937
|[`deploymentOperations`](#parameter-deploymentoperations)| array | The cluster deployment operations to execute. Defaults to "[Validate, Deploy]". |
863
938
|[`deploymentSettings`](#parameter-deploymentsettings)| object | The deployment settings of the cluster. |
864
939
|[`enableTelemetry`](#parameter-enabletelemetry)| bool | Enable/Disable usage telemetry for module. |
940
+
|[`localAdminCredentialContentType`](#parameter-localadmincredentialcontenttype)| string | Content type of the local admin credential. |
941
+
|[`localAdminCredentialTags`](#parameter-localadmincredentialtags)| object | Tags of the local admin credential. |
865
942
|[`location`](#parameter-location)| string | Location for all resources. |
866
943
|[`roleAssignments`](#parameter-roleassignments)| array | Array of role assignments to create. |
867
944
|[`tags`](#parameter-tags)| object | Tags of the resource. |
868
945
|[`useSharedKeyVault`](#parameter-usesharedkeyvault)| bool | Specify whether to use the shared key vault for the HCI cluster. |
946
+
|[`witnessStoragekeyContentType`](#parameter-witnessstoragekeycontenttype)| string | Content type of the witness storage key. |
947
+
|[`witnessStoragekeyTags`](#parameter-witnessstoragekeytags)| object | Tags of the witness storage key. |
869
948
870
949
### Parameter: `name`
871
950
@@ -874,6 +953,78 @@ The name of the Azure Stack HCI cluster - this must be a valid Active Directory
874
953
- Required: Yes
875
954
- Type: string
876
955
956
+
### Parameter: `deploymentUser`
957
+
958
+
The name of the deployment user. Required if useSharedKeyVault is true.
959
+
960
+
- Required: No
961
+
- Type: string
962
+
963
+
### Parameter: `deploymentUserPassword`
964
+
965
+
The password of the deployment user. Required if useSharedKeyVault is true.
966
+
967
+
- Required: No
968
+
- Type: securestring
969
+
970
+
### Parameter: `localAdminPassword`
971
+
972
+
The password of the local admin user. Required if useSharedKeyVault is true.
973
+
974
+
- Required: No
975
+
- Type: securestring
976
+
977
+
### Parameter: `localAdminUser`
978
+
979
+
The name of the local admin user. Required if useSharedKeyVault is true.
980
+
981
+
- Required: No
982
+
- Type: string
983
+
984
+
### Parameter: `servicePrincipalId`
985
+
986
+
The service principal ID for ARB. Required if useSharedKeyVault is true.
987
+
988
+
- Required: No
989
+
- Type: string
990
+
991
+
### Parameter: `servicePrincipalSecret`
992
+
993
+
The service principal secret for ARB. Required if useSharedKeyVault is true.
Content type of the azure stack lcm user credential.
1001
+
1002
+
- Required: No
1003
+
- Type: string
1004
+
- Default: `'Secret'`
1005
+
1006
+
### Parameter: `azureStackLCMUserCredentialTags`
1007
+
1008
+
Tags of azure stack LCM user credential.
1009
+
1010
+
- Required: No
1011
+
- Type: object
1012
+
1013
+
### Parameter: `defaultARBApplicationContentType`
1014
+
1015
+
Content type of the default ARB application.
1016
+
1017
+
- Required: No
1018
+
- Type: string
1019
+
- Default: `'Secret'`
1020
+
1021
+
### Parameter: `defaultARBApplicationTags`
1022
+
1023
+
Tags of the default ARB application.
1024
+
1025
+
- Required: No
1026
+
- Type: object
1027
+
877
1028
### Parameter: `deploymentOperations`
878
1029
879
1030
The cluster deployment operations to execute. Defaults to "[Validate, Deploy]".
@@ -1176,6 +1327,21 @@ Enable/Disable usage telemetry for module.
1176
1327
- Type: bool
1177
1328
- Default: `True`
1178
1329
1330
+
### Parameter: `localAdminCredentialContentType`
1331
+
1332
+
Content type of the local admin credential.
1333
+
1334
+
- Required: No
1335
+
- Type: string
1336
+
- Default: `'Secret'`
1337
+
1338
+
### Parameter: `localAdminCredentialTags`
1339
+
1340
+
Tags of the local admin credential.
1341
+
1342
+
- Required: No
1343
+
- Type: object
1344
+
1179
1345
### Parameter: `location`
1180
1346
1181
1347
Location for all resources.
@@ -1304,6 +1470,21 @@ Specify whether to use the shared key vault for the HCI cluster.
1304
1470
- Type: bool
1305
1471
- Default: `True`
1306
1472
1473
+
### Parameter: `witnessStoragekeyContentType`
1474
+
1475
+
Content type of the witness storage key.
1476
+
1477
+
- Required: No
1478
+
- Type: string
1479
+
- Default: `'Secret'`
1480
+
1481
+
### Parameter: `witnessStoragekeyTags`
1482
+
1483
+
Tags of the witness storage key.
1484
+
1485
+
- Required: No
1486
+
- Type: object
1487
+
1307
1488
## Outputs
1308
1489
1309
1490
| Output | Type | Description |
@@ -1314,14 +1495,6 @@ Specify whether to use the shared key vault for the HCI cluster.
1314
1495
|`resourceId`| string | The ID of the cluster. |
1315
1496
|`systemAssignedMIPrincipalId`| string | The managed identity of the cluster. |
1316
1497
1317
-
## Cross-referenced modules
1318
-
1319
-
This section gives you an overview of all local-referenced module files (i.e., other modules that are referenced in this module) and all remote-referenced files (i.e., Bicep modules that are referenced from a Bicep Registry or Template Specs).
The software may collect information about you and your use of the software and send it to Microsoft. Microsoft may use this information to provide services and improve our products and services. You may turn off the telemetry as described in the [repository](https://aka.ms/avm/telemetry). There are also some features in the software that may enable you and Microsoft to collect data from users of your applications. If you use these features, you must comply with applicable law, including providing appropriate notices to users of your applications together with a copy of Microsoft’s privacy statement. Our privacy statement is located at <https://go.microsoft.com/fwlink/?LinkID=824704>. You can learn more about data collection and use in the help documentation and our privacy statement. Your use of the software operates as your consent to these practices.
fordeploymentOperationinsortedDeploymentOperations: if (!empty(deploymentOperation) && !empty(deploymentSettings)) {
@@ -404,3 +472,16 @@ type deploymentSettingsType = {
404
472
@description('Optional. If using a shared key vault or non-legacy secret naming, pass the properties.cloudId guid from the pre-created HCI cluster resource.')
405
473
cloudId: string?
406
474
}
475
+
476
+
@export()
477
+
@description('Key vault secret names interface')
478
+
typeKeyVaultSecretNames = {
479
+
@description('Required. The name of the Azure Stack HCI LCM user credential secret.')
480
+
azureStackLCMUserCredential: string
481
+
@description('Required. The name of the Azure Stack HCI local admin credential secret.')
482
+
localAdminCredential: string
483
+
@description('Required. The name of the Azure Stack HCI default ARB application secret.')
484
+
defaultARBApplication: string
485
+
@description('Required. The name of the Azure Stack HCI witness storage key secret.')
0 commit comments