bicep를 사용하여 논리 앱(표준) connections.json 매개 변수화 - 2부
이것이 흥미로워지는 곳입니다. 인터넷과 테스트를 통해 많은 검색을 한 후 강조해야 할 몇 가지 사항이 있습니다.
managedApiConnections
정보를 전체 문자열로 바꿀 수 없습니다. 즉, 아래 설정은 작동하지 않습니다....
"managedApiConnections": {
"azureblob_1": {
"api": {
"id": "@appsetting('azureBlobApiId')"
},
"authentication": {
"type": "ManagedServiceIdentity"
},
"connection": {
"id": "@appsetting('azureBlobConnectionId')"
},
"connectionRuntimeUrl": "@appsetting('azureBlobConnectionRuntimeUrl')"
}
}
...
위와 같이 연결이 작동하는 것 같습니다. API 연결 상태를 보면 "연결됨"이라고 보고됩니다. 모든 것이 정상인 것 같습니다... 워크플로우를 저장하려고 시도하기 전까지는 말입니다. 워크플로를 저장하려고 하면 알 수 없는 오류가 표시됩니다.
Workflow saved successfully. Workflow validation failed for the workflow 'xxxxxxxxxx'. The file 'connections.json' contains invalid expressions. The allowed expression functions are 'xxxxxxxxxx'.
위의 문제를 해결하기 위해 이 문서Create cross-environment parameters for workflow inputs in Azure Logic Apps에서 힌트를 찾을 수 있습니다. 본질적으로 위의 코드 대신 다음 코드를 만들어야 합니다(아래 코드는 워크플로를 저장할 때 여전히 오류가 발생합니다. 마지막 관찰 및 해결 방법은 3단계 참조).
...
"managedApiConnections": {
"azureblob_1": {
"api": {
"id": "/subscriptions/@{appsetting('WORKFLOW_SUBSCRIPTION_ID')}/providers/Microsoft.Web/locations/@{appsetting('WORKFLOW_LOCATION')}/managedApis/azureblob"
},
"authentication": {
"type": "ManagedServiceIdentity"
},
"connection": {
"id": "/subscriptions/@{appsetting('WORKFLOW_SUBSCRIPTION_ID')}/resourceGroups/@{appsetting('WORKFLOW_RG_NAME')}/providers/Microsoft.Web/connections/azureblob"
},
"connectionRuntimeUrl": "@appsetting('azureBlobConnectionRuntimeUrl')"
}
}
...
참고:
connectionRuntimeUrl
만 앱 설정을 성공적으로 사용할 수 있습니다. apiId
및 connectionId
는 어떻게든 부분적으로 매개변수화될 수 있습니다.마지막으로 중괄호
{}
를 사용하여 표현식을 둘러싸는 보간 형식에 대한 위의 Microsoft 문서 권장 사항이 작동하지 않는 것 같습니다. 마지막으로 최종connections.json
이 다음과 같이 보이도록 중괄호를 제거해야 합니다....
"managedApiConnections": {
"azureblob_1": {
"api": {
"id": "/subscriptions/@appsetting('WORKFLOW_SUBSCRIPTION_ID')/providers/Microsoft.Web/locations/@appsetting('WORKFLOW_LOCATION')/managedApis/azureblob"
},
"authentication": {
"type": "ManagedServiceIdentity"
},
"connection": {
"id": "/subscriptions/@appsetting('WORKFLOW_SUBSCRIPTION_ID')/resourceGroups/@appsetting('WORKFLOW_RG_NAME')/providers/Microsoft.Web/connections/azureblob"
},
"connectionRuntimeUrl": "@appsetting('azureBlobConnectionRuntimeUrl')"
}
}
...
위의 설정이 완료되면 이제 API 연결을 사용하고 워크플로를 성공적으로 저장할 수 있습니다.
Reference
이 문제에 관하여(bicep를 사용하여 논리 앱(표준) connections.json 매개 변수화 - 2부), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/leonards/parameterising-logic-app-standard-connectionsjson-with-bicep-part-2-hdl텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)