private static async Task SetupAndTearDownCloudService(ManagementControllerParameters managementControllerParameters)
        {
            ManagementController controller = new ManagementController(managementControllerParameters);

            Console.WriteLine("1. Create Storage Account named {0} in Region {1}", managementControllerParameters.StorageAccountName, managementControllerParameters.Region);
            ConsoleContinuePrompt("Create");

            await controller.CreateStorageAccount();

            Console.WriteLine("...Complete");
            Console.WriteLine("2. Upload Service Config {0} and Service Package {1} to Storage Account {2}", managementControllerParameters.ServiceConfigurationFilePath, managementControllerParameters.ServicePackageFilePath, managementControllerParameters.StorageAccountName);
            ConsoleContinuePrompt("Upload");

            var blob = await controller.UploadDeploymentPackage();

            Console.WriteLine("...Complete");
            Console.WriteLine("3. Creating a Cloud Service hosted service slot named {0} in Region {1}", managementControllerParameters.CloudServiceName, managementControllerParameters.Region);
            ConsoleContinuePrompt("Create");

            await controller.CreateCloudService();

            Console.WriteLine("...Complete");
            Console.WriteLine("4. Deploy the Cloud Service to production slot");
            ConsoleContinuePrompt("Deploy");

            await controller.DeployCloudService(blob.Uri);

            Console.WriteLine("...Complete");
            Console.WriteLine("5. Delete Cloud Service Deployment, Hosted Service and Storage Account");
            ConsoleContinuePrompt("Delete");

            controller.TearDown();
        }
        private static async Task SetupAndTearDownCloudService(ManagementControllerParameters managementControllerParameters)
        {
            ManagementController controller = new ManagementController(managementControllerParameters);

            Console.WriteLine("1. Create Storage Account named {0} in Region {1}", managementControllerParameters.StorageAccountName, managementControllerParameters.Region);
            ConsoleContinuePrompt("Create");

            await controller.CreateStorageAccount();

            Console.WriteLine("...Complete");
            Console.WriteLine("2. Upload Service Config {0} and Service Package {1} to Storage Account {2}", managementControllerParameters.ServiceConfigurationFilePath, managementControllerParameters.ServicePackageFilePath, managementControllerParameters.StorageAccountName);
            ConsoleContinuePrompt("Upload");

            var blob = await controller.UploadDeploymentPackage();

            Console.WriteLine("...Complete");
            Console.WriteLine("3. Creating a Cloud Service hosted service slot named {0} in Region {1}", managementControllerParameters.CloudServiceName, managementControllerParameters.Region);
            ConsoleContinuePrompt("Create");

            await controller.CreateCloudService();

            Console.WriteLine("...Complete");
            Console.WriteLine("4. Deploy the Cloud Service to production slot");
            ConsoleContinuePrompt("Deploy");

            await controller.DeployCloudService(blob.Uri);

            Console.WriteLine("...Complete");
            Console.WriteLine("5. Delete Cloud Service Deployment, Hosted Service and Storage Account");
            ConsoleContinuePrompt("Delete");

            controller.TearDown();
        }