azure-common-construct
v0.0.74
Published
This package is a Typescript package for some common Azure L3 CDK-TF patterns. 1. AzureFunctionLinuxConstruct and AzureFunctionWindowsConstruct – C# Azure function in Linux with consumption plan and handle publishing application. 2. AzureIotConstruct - Az
Downloads
98
Readme
azure-common-construct
This package is a Typescript package for some common Azure L3 CDK-TF patterns.
- AzureFunctionLinuxConstruct and AzureFunctionWindowsConstruct – C# Azure function in Linux with consumption plan and handle publishing application.
- AzureIotConstruct - Azure IoTHub and return primary connection string.
- AzureIotEventHubConstruct - Child class of AzureIotConstruct, added Event hub sink and return EventHub primary connection string.
- AzureIotDeviceConstruct – Using terraform external data provider and Azure CLI to create Azure IoT Device and return device key.
- AzureStaticConstainerConstruct - Build static Docker image and put it in ACR. Image will rebuild when docker GitHub branch is updated.
- PublisherConstruct - Used by AzureFunctionLinuxConstruct and AzureFunctionWindowsConstruct. It runs "dotnet publish -p:PublishProfile=FolderProfile" and "az functionapp deployment source config-zip" based on PublishMode. Extract Function keys and urls when functionNames presents. You have to create /Properties/PublishProfiles/FolderProfile.pubxml with the same PublishDir.
<Project>
<PropertyGroup>
<PublishProtocol>FileSystem</PublishProtocol>
<PublishDir>$(MSBuildProjectDirectory)/bin/Release/publish/azfunction</PublishDir>
<TargetFramework>net8.0</TargetFramework>
<RuntimeIdentifier>linux-x64</RuntimeIdentifier>
<SelfContained>true</SelfContained>
<PublishSingleFile>false</PublishSingleFile>
<PublishReadyToRun>true</PublishReadyToRun>
</PropertyGroup>
</Project>
- AzureFunctionFileSharePublisherConstruct - Upload folder to Azure Function fileshare.
- AzureApiManagementConstruct - Azure Function wrapper with API Key and Rate Limit settings.
Some of the functions are using powershell to invoke Azure cli, You need to install Azure cli
- Login AZ cli, but you should always complete this for Terraform.
- set
az config set extension.use_dynamic_install=yes_without_prompt
.
Install CDKTF and login npm
npm install --global cdktf-cli@latest
npm i
npm adduser
To publish new version,
npm run build
npm publish