diff --git a/examples/lib/helper.sh b/examples/lib/helper.sh new file mode 100644 index 000000000000..9b8bc0db5dd0 --- /dev/null +++ b/examples/lib/helper.sh @@ -0,0 +1,5 @@ +randomName() { + echo "$1$RANDOM" +} + +export -f randomName \ No newline at end of file diff --git a/examples/lib/setup.sh b/examples/lib/setup.sh new file mode 100644 index 000000000000..0db35e8524a2 --- /dev/null +++ b/examples/lib/setup.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +# Login +echo "Executing Login..." +export CmdletSessionId=1010 +azure account add --username $azureuser --password $azurepassword \ No newline at end of file diff --git a/examples/lib/testrunner.sh b/examples/lib/testrunner.sh new file mode 100644 index 000000000000..9288ead22713 --- /dev/null +++ b/examples/lib/testrunner.sh @@ -0,0 +1,12 @@ +#!/bin/bash +. setup.sh +. helper.sh +export resourceGroupName=`randomName testrg` +export resourceGroupLocation="westus" + +for d in $( ls .. --ignore=lib ); do + for f in $( ls ../$d/*.sh ); do + echo "running: $f" + . $f + done +done \ No newline at end of file diff --git a/examples/resource-management/01-ResourceGroups.ps1 b/examples/resource-management/01-ResourceGroups.ps1 new file mode 100644 index 000000000000..8ee55c68b338 --- /dev/null +++ b/examples/resource-management/01-ResourceGroups.ps1 @@ -0,0 +1,25 @@ +Param( + [string]$resourceGroupName, + [string]$resourceGroupLocation +) + +Write-Host "=== Managing Resource Groups in Azure ===" + +Write-Host "1. Create a new resource group" +New-AzureRmResourceGroup -Name $resourceGroupName -Location $resourceGroupLocation + +Write-Host "2. Update group tags" +Set-AzureRmResourceGroup -Name $resourceGroupName -Tags @{Name = "testtag"; Value = "testval"} + +Write-Host "3. Get information about resource group" +$resourceGroup = Get-AzureRmResourceGroup -Name $resourceGroupName +Write-Host $resourceGroup + +Write-Host "4. List all resource groups in the subscription" +Get-AzureRmResourceGroup + +Write-Host "5. Remove resource group" +Remove-AzureRmResourceGroup -Name $resourceGroupName -Force + +Write-Host "6. Validations" +Assert-AreEqual $resourceGroup.ResourceGroupName $resourceGroupName \ No newline at end of file diff --git a/examples/resource-management/01-ResourceGroups.sh b/examples/resource-management/01-ResourceGroups.sh new file mode 100644 index 000000000000..f9efe7a0d441 --- /dev/null +++ b/examples/resource-management/01-ResourceGroups.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +printf "\n=== Managing Resource Groups in Azure ===\n" + +printf "\n1. Creating a new resource group: %s and location: %s.\n" "$resourceGroupName" "$resourceGroupLocation" +azure resource group new --name "$resourceGroupName" --location "$resourceGroupLocation" + +printf "\n2. Updating the group %s with tags.\n" "$resourceGroupName" +azure resource group set --name "$resourceGroupName" --tags "[{\"Value\":\"testval\",\"Name\":\"testtag\"}]" + +printf "\n3. Get information about resource group : %s.\n" "$resourceGroupName" +resourceGroupInfo=`azure resource group get --name $resourceGroupName` +printf "\nThe resource group info is: \n %s\n" "$resourceGroupInfo" + +printf "\n4. Listing all resource groups in the subscription.\n" +azure resource group get + +printf "\n5. Removing resource group: %s.\n" "$resourceGroupName" +azure resource group remove --name "$resourceGroupName" --force