J Smith
J Smith

Reputation: 21

Automatically create new connection strings for web applications Azure

I am attempting to automate a workflow in our Azure environment.

We have several web applications with connectionstrings to several databases. Each new customer recives a new database.

I've hit a snag in the script with our connectionstrings. I want the script to update all web applications and add a new connectionstring for the newly created customer db.

The problem is "Set-Azurermwebapp -Name -ResourceGroup -ConnectionStrings" takes a hashtable which replaces any previously configured data.

I would only like to append a new connectionstring, or get the previously configered cstrings and add them to an array, then replacing all data.

Example code;

$test= @{"Type"="Custom"; "Value" = "TestValue"} 
$Connectionstring=@{"test"=$test }

Set-AzureRmWebApp 
        -Name "testapp" 
        -ResourceGroupName "testgrp" 
        -ConnectionStrings $Connectionstring"

Any ideas here?

Upvotes: 2

Views: 1475

Answers (2)

Srinivasa Rao Nalluri
Srinivasa Rao Nalluri

Reputation: 101

$connStrings =  @{ 
   AzureWebJobsDashboard = @{ 
       Type = "Custom"; 
       Value = $AzureWebJobsDashboard 
   };
   AzureWebJobsStorage = @{ 
       Type = "MySql"; 
       Value = $connstring
   }
};

Set-AzureRMWebApp -Name $webServiceName -ResourceGroupName $rgName -ConnectionStrings $connStrings

Cannot Delete All Azure Website Connection Strings

Upvotes: 10

frank tan
frank tan

Reputation: 141

#Add new connection string
$newConnString = New-Object Microsoft.WindowsAzure.Commands.Utilities.Websites.Services.WebEntities.ConnStringInfo
$newConnString.Name = $ConnStringName
$newConnString.ConnectionString = $ConnStringValue
$newConnString.Type = $ConnStringType
$connStrings.Add($newConnString)

Set-AzureWebsite $WebAppName -ConnectionStrings $connStrings

You can download detail script from How to automatically create new connection strings for web applications Azure

Upvotes: 0

Related Questions