- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设我在 Azure Bicep 中有两个文件/模块,都在“main.bicep”中调用。其中一个称为“storage.bicep”,其中包含以下用于创建 storageAccount 的代码:
resource storageAccountTemp 'Microsoft.Storage/storageAccounts@2021-08-01' = {
name: 'tmpst4dnbnlp'
location: location
sku: {
name: storageAccountSku
}
kind: 'StorageV2'
properties: {
allowBlobPublicAccess: false
accessTier: 'Hot'
}
}
另一个文件包含一些 LogicApp 定义,名为“orchestration.bicep”。现在,在此文件中,有一部分我想引用模块“storage.bicep”中的“storageAccountTemp”资源,以提供 LogicApp 系统托管身份访问贡献者角色:
resource logicAppStorageAccountRoleAssignment 'Microsoft.Authorization/roleAssignments@2020-10-01-preview' = {
scope: 'xxx'
name: guid('ra-logicapp-${roleDefinitionId}')
properties: {
principalType: 'ServicePrincipal'
roleDefinitionId: subscriptionResourceId('Microsoft.Authorization/roleDefinitions', roleDefinitionId)
principalId: logicAppTest.identity.principalId
}
}
我需要指定范围(现在为“xxx”)。我不能说 resourcesGroup() 因为存储位于不同的资源组中。相反,我想引用 storageAccountTemp 对象。当对象位于不同的模块中时,这似乎不可能做到(我尝试输出名称和 id 并使用它们,但这没有被 Bicep 接受。
有什么方法可以实际引用“orchestration.bicep”文件中“storage.bicep”中的原始 storageAccountTemp 对象吗?
最佳答案
您需要使用现有
资源声明。所以你会得到类似的东西:
resource storageAccountTemp 'Microsoft.Storage/storageAccounts@2021-08-01' existing = {
scope: resourceGroup('blah')
name: 'tmpst4dnbnlp
}
然后您可以将其用于 roleAssignment 的 scope
属性。如何获取 roleAssignment 模块的 blah(资源组名称)和 storageAccount 名称取决于...如果这两个模块在协调器中是对等的,那么通常这些参数是已知的并且可以传递给两个模块模块。如果失败,您可以使用存储模块的输出并将其作为参数传递给 roleAssignment。
有帮助吗?
关于azure - 在另一个模块 Azure Bicep 中引用在一个模块中创建的资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73721936/
我能够使用最新的 Bicep 版本 0.4 创建应用服务计划和应用服务。 resource myAppServicePlan 'Microsoft.Web/serverfarms@2021-01-01
我有一个二头肌文件,应该创建一个虚拟网络网关。我通过创建虚拟网络的单独二头肌文件将其分解。我真正应该做的是有一个用于 vnet 创建的模块和另一个用于虚拟网络网关的模块,因为 bicep 对我来说是新
我正在尝试使用 bicep 将 apim 后端资源部署到现有 apim 实例中。这是我的 apim mdoule 的相关部分: resource apim 'Microsoft.ApiManageme
我想生成一个二头肌来构建逻辑应用程序。其样板是 resource logicApp 'Microsoft.Logic/workflows@2019-05-01' = { name: 'lapp-$
像往常一样与二头肌文档碰撞。我似乎找不到任何有关如何向自动化帐户 Runbook 的作业计划添加参数的帮助。 MS 的示例是 name: 'string' parent: resourceSy
我的情况是,我有一个公司列表,以及一个我想在我的二头肌文件中配对的队列列表。我想使用结果将队列添加到服务总线命名空间。 这是队列数组的示例: `var queues = [ 'first-queu
在二头肌中,我有一个主要的二头肌,它会调用 部署应用服务的模块 部署托管身份的模块 应用程序服务模块如下所示,它使用用户分配的托管 ID 的输出,并在应用程序服务的身份中分配: 主要二头肌 modul
我有一个应用程序,它有一个二头肌文件(用于部署 azure 应用程序服务),它调用另一个存储库中的模板模块(应用程序服务模板)。模板模块引用同一存储库中的多个模块。它调用一个用于应用服务计划的模块,一
尝试将托管标识分配给同一租户中单独订阅中的资源组。我可以通过 Azure 门户实现此目的。我的 Main.bicep,类似这样: targetScope = 'subscription' module
我目前正在尝试手动将现有 ARM 模板转换为二头肌,因为自动反编译方法失败。 现有模板包含以下变量: "environmentSize": { "dev": "small",
我正在运行二头肌 0.4.1318。 我有一个“主”二头肌模块,它调用子模块来配置数据工厂: var adfName = 'adf-ctaxrebate-${envPlusSuffix}-${form
我有一个 Azure Bicep 模板,用于部署存储帐户和容器。但是,当我重命名容器或注释掉模板中的容器资源时,不会触发删除操作。相反,它会创建一个新容器并且不会删除旧容器。有什么想法为什么会发生这种
我想创建一个 Azure 容器应用程序,该应用程序从位于不同订阅中的现有 Azure 容器应用程序注册表中提取其镜像。 我的主要二头肌: 创建用户分配的托管身份 将托管身份的 ACR Pull RBA
我刚开始使用 Azure 二头肌。我正在尝试使用以下二头肌文件部署一个简单的应用程序服务计划/应用程序服务: resource azBicepAsp1 'Microsoft.Web/serverfar
我想要一个可以向现有应用服务(本例中为函数应用)添加一组固定的 IP 限制规则的模块。 我在 main.bicep 中添加了对“ipSecurityRestrictions”模块的调用,如下所示: m
如何使用 bicep 更新字典对象,例如:原始字典对象: var dict = { 'a': {} } 我现在有一个数组:['b', 'c'],我想更新 dict 对象,例如: { 'a':
我需要: 创建数据工厂 创建存储帐户 创建函数应用 将数据工厂的角色分配添加到存储帐户 将函数应用的角色分配添加到存储帐户 数据工厂是在与“主”二头肌不同的模块中创建的。这是为了防止“主”模板太大而难
我正在尝试引用现有的二头肌模块作为另一个资源的父级。 module vnethub 'modules/vnet/vnet.bicep' = { scope: resourceGroup(rg.na
我正在尝试创建一个二头肌模板来根据条件部署具有 1 个或 2 个 NIC 的虚拟机。 有人知道是否有一种方法可以在属性定义中使用条件语句来部署虚拟机网卡吗?似乎资源定义中不允许使用 if 函数,并且由
我正在尝试使用以下代码创建一个简单的应用服务计划。 param Location string = 'eastus' resource appServicePlan1 'Microsoft.Web/s
我是一名优秀的程序员,十分优秀!