问题描述
通过 Bicep 中的“简单”参数,我可以使用 @decorators 进行某种“验证”,如下所示:
@minLength(3)
@maxLength(20)
@description('Name of database administrator')
param dbAdminUsername string = 'dbadmin'
这会强制 dbAdminUsername
参数介于 3 到 20 个字符之间,并且还会显示说明。
我想将我拥有的所有数据库参数“组合在一起”;比如用户名、密码、服务器名、数据库名等等。所以我定义了一个对象:
param db object = {
adminName: 'dbadmin'
serverName: 'foo'
size: 42
// ...
}
几个问题。对象:
- 我能否以某种方式为我可能拥有的各种属性使用装饰器?
- 如何定义允许值的类型(int、bool、string、...)?
- 以及如何定义 REQUIRED 值?使用上面显示的定义,我定义了一些默认值。这并不总是我们想要的。
解决方法
这是不可能的(目前)。目前正在讨论如何定义此类条件:https://github.com/Azure/bicep/issues/622
欢迎任何其他输入!