Twin Config
To host external applications in the AppHostingModule, each application requires some configuration. The twin configuration should contain a list of applications, that are set in the property "applications".
The required properties for each application are:
executableName: Name of the executable to run. Only .net dll's and exe files are currently supported.
executableFolderInsideZip: The AppHostingModule downloads zip files containing the application. This property states the path inside the zip file, to the executable. If the executable is not in a folder, leave this empty.
sasUri: SAS uri for cloud blob storage location of the application zip file. There is one SAS Uri per application.
httpPort: The port exposed by the application. Currently only supports http from localhost.
executableArguments: The arguments provided for running the executable.
executableType: Application type. Currently only "Dotnet" is supported (0).
zipFileName: Name of the zip file, containing the application.
validateChecksum: If set to true, the zip file checksum is validated against the sha256Checksum, to ensure the file integrity.
sha256Checksum: If the validateChecksum is set to true, this property holds the desired sha256 checksum.
To generate the sha256 checksum, the following powershell must be executed:
Get-FileHash <Path to zip file>
Here is an example of a twin configuration, containing 2 .net applications:
"applications": {
"Application1": {
"executableName": "Application1.dll",
"executableFolderInsideZip": "",
"sasUri": "https://tciotingestionstoragedev.blob.core.windows.net/app-hosting-module-drop/Application1.zip?sp=r&st=2023-02-20T09:39:24Z&se=2024-02-20T17:39:24Z&spr=https&sv=2021-06-08&sr=b&sig=ETj8%2BxIdf3duGOmp6xyOkf4mxv4dDAHSJNbJMXhOccU%3D",
"httpPort": "5010",
"executableArguments": "--AppHostingModuleRootDirectoryPath=/appdata/apphostingmodule --ImagesRootDirectoryPath=/appdata/images",
"executableType": 0,
"zipFileName": "Application1.zip",
"validateChecksum": true,
"sha256Checksum": "8F4E994DCE5EC56AFCE7188B11B47A6F705AC3EB8D209312140433A202E3E04C"
},
"Application2": {
"executableName": "Application2.exe",
"executableFolderInsideZip": "",
"sasUri": "https://tciotingestionstoragedev.blob.core.windows.net/app-hosting-module-drop/Application2.zip?sp=r&st=2023-02-20T09:39:24Z&se=2024-02-20T17:39:24Z&spr=https&sv=2021-06-08&sr=b&sig=ETj8%2BxIdf3duGOmp6xyOkf4mxv4dDAHSJNbJMXhOccU%3D",
"httpPort": "5011",
"executableArguments": "--AppHostingModuleRootDirectoryPath=/appdata/apphostingmodule --ImagesRootDirectoryPath=/appdata/images",
"executableType": 0,
"zipFileName": "Application2.zip",
"validateChecksum": false,
"sha256Checksum": ""
}
}Last updated
Was this helpful?