DSC
DSC copied to clipboard
Initial features needed for Bicep
Summary of the new feature / enhancement
- [x] not()
- [x] or()
- [x] and()
- [x] automatic consumption of .bicep files
- [ ] output
- [x] union()
- [x] contains()
- [x] endsWith()
- [x] length()
- [x] utcNow()
- [x] uniqueString()
- [x] empty()
- [x] Copy (aka loops)
- [ ] Types
- [ ] map() - lambda
- [ ] filter() - lambda
- [ ] reduce() - lambda
- [ ] ARM language v2 support
- [ ] flatten() -ARM language v2
Proposed technical implementation details (optional)
No response
@SteveL-MSFT - I think this is also part of the ARM language v2 support. It would be pretty cool if something like the following can be done:
extension dsc
targetScope = 'desiredStateConfiguration'
param companyName string = 'MyCompany'
param valueData registryValueDataType
resource registry 'Microsoft.Windows/[email protected]' = {
keyPath: 'HKLM\\Software\\${toLower(companyName)}'
valueName: 'InstallPath'
valueData: valueData
}
// =============== //
// Definitions //
// =============== //
@export()
@description('The type for registry value data. Can be one of several variants based on the registry value type.')
type registryValueDataType = {
@description('Optional. A string value (REG_SZ).')
String: string?
@description('Optional. An expandable string value (REG_EXPAND_SZ).')
ExpandString: string?
@description('Optional. Binary data (REG_BINARY).')
Binary: int[]?
@description('Optional. A 32-bit number (REG_DWORD).')
DWord: int?
@description('Optional. An array of strings (REG_MULTI_SZ).')
MultiString: string[]?
@description('Optional. A 64-bit number (REG_QWORD).')
QWord: int?
}