私の理解が正しい場合は、Azure Custom Script Extensionを使用してニーズを満たすことができます。ストレージアカウント名とストレージアカウントキーを受け取るスクリプトを書くことができます。
#!/bin/sh
accountname=$1
accountkey=$2
...............
次のスクリプトを使用してストレージキーを取得し、スクリプトに渡すことができます。
{
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "[concat(variables('vmName'),'/', variables('extensionName'))]",
"apiVersion": "[variables('apiVersion')]",
"location": "[resourceGroup().location]",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', variables('vmName'))]"
],
"properties": {
"publisher": "Microsoft.Azure.Extensions",
"type": "CustomScript",
"typeHandlerVersion": "2.0",
"autoUpgradeMinorVersion": true,
"settings": {
"fileUris": "[split(parameters('fileUris'), ' ')]",
"commandToExecute": "[concat('sh ', parameters('scriptName'), ' ' ,parameters('StorageAccountName''), ' ', listKeys(concat('Microsoft.Storage/storageAccounts/', variables('StorageAccountName')),
},
}
こんにちは、私はそれについて考えていましたが、ソース管理下のファイルを使用するためにScript Extensionをどのように取得するかを試していました。 VSTSのリリースプロセスでは、スクリプトをストレージにコピーするタスクを追加することができましたが、最初に1つのテンプレートでストレージを作成してからスクリプトをコピーしてから、VMテンプレートを個別に実行する必要がありますVMテンプレートを使用すると、スクリプトは最初にソース管理から来たAzureストレージ上に存在します。 – Simon
@Simonテンプレートを使用してソース管理からプライベートストレージアカウントにスクリプトをコピーしたいのですか?私の知る限り、テンプレートを使用するだけでは不可能です。カスタムスクリプト拡張を使用することができます。スクリプトをVHDにコピーします。この[テンプレート](https://github.com/Azure/azure-quickstart-templates/blob/master/201-vm-custom-image-new-storage-account/azuredeploy.json#L257)を確認することができます。 –
はい、私はそれが不可能なので、私はタスクを持っている必要があると思います - a)ストレージのみを含むテンプレートを配備する、b)ストレージにスクリプト成果物をコピーする、c)VMを持つテンプレートとスクリプトを配備する私がVMのtempalteに以前のストレージの詳細を含める/参照することができると仮定して、aとbによって作成されたものを参照する拡張子...実験の時間! – Simon