Share via


Custom Resource Providers in Windows Azure Pack – Deploying the Hello World Sample

Hello readers, Victor Arzate here. I'm a Program Manager in the Windows Server and System Center CAT team and in this post I will walk you through the different steps required to deploy the Hello World custom Resource Provider sample that is included in the Windows Azure Pack Developers Kit. The purpose of this blog is to explain one of the methods used to extend Windows Azure Pack (WAP) by way of example. In this post I'll show how to deploy the Windows Azure Pack example resource provider 'Hello World'. One could develop their own resource provider and in this blog post I'll show all the basic steps to get the 'Hello World' example by way of the process and steps I used. In future blog posts, we will blog about how to extend the Hello World sample, and even how you can create your own Resource Provider taking the Hello World sample as a starting point.

Warning dear readers! – This blog post includes the following terms: Visual Studio and Compile

 

Disclaimer – There's a known issue when you deploy the Hello World Custom Resource Provider that is included in the WAP Service Management API Samples for December 2013, where you won't be able to see the PowerShell code for the SMA Runbooks using the WAP Admin Portal. Please note that the SMA Runbooks are there, and you'll be able to start/stop them, but the code won't be visible. This issue is specific to the Hello World sample, and does not apply to other WAP custom extensions you may create. If you uninstall the Hello World Custom Resource Provider, you will be able to see the PowerShell code for the SMA Runbooks again. Hence I recommend to use this blog post to test/evaluate the Hello World sample and custom resource providers in a testing environment. If you're working quite heavily with SMA you may not want to import this custom resource provider until a fix is released.

 

You may ask, what are Resource Providers in Windows Azure Pack (WAP)? In a nutshell, the cloud services that Windows Azure Pack provides are represented by Resource Providers. For example, by now you may have already deployed Windows Azure Pack and you noticed that it includes the Web Site Clouds, VM Clouds, Service Bus, SQL Servers and MySQL Servers Resource Providers. Obviously you can choose which services to offer to your tenants (for example, VM Clouds only), but what if the services you'd like to offer to your tenant are not available in the Resource Providers included in WAP? For example, what if you'd like to offer your tenants the option that they can back up their own Virtual Machines?

As described in the Custom Resource Provider Overview documentation in MSDN, a Resource Provider can provide services on its own, or it can act as a proxy to an existing external system. This means that you could include the functionality required in the custom Resource Provider, or you could use the custom Resource Provider to proxy the user and administrators requests to an external system (for example, System Center Orchestrator).

The Hello World custom Resource Provider sample is a great starting point when you want to offer additional functionality in WAP that is not currently provided in the out-of-the-box Resource Providers (such as VM Clouds and SQL Servers) and you want to use the default portals provided by WAP. For example, the Hello World Custom Resource Provider simulates the capabilities to allow tenants to create new file shares in the file servers defined by the administrator (this capability is not provided in the out-of-the-box Resource Providers).

You can learn more about the Hello World sample here and also, you can learn more about custom resource providers here.

Note that you can find generic guidance in MSDN and in the read me files included within the Hello World sample on how deploy it. In this blog post I'll give you the detailed steps with examples J

Prerequisites

  • Visual Studio 2012 installed (in my case I had Update 4 applied as well). Note that Visual Studio 2012 does not need to be installed in the same machine where you have Windows Azure Pack (WAP) installed.
  • Windows Installer XML (WiX) toolset version 3.6.3303.0 or newer installed (in my environment I installed WiX Toolset v3.8)
  • A Windows Azure Pack environment up & running.

 

Step 1 – Build the Hello World MSI installer file.

  1. Download the Windows Azure Pack: Service Management API Samples - Dec 2013 by clicking in the download button below:

  2. Copy the Microsoft.WindowsAzurePack.Samples.zip file to the machine where you've installed Visual Studio 2012 and extract the following folders (for example, to c:\projects):

    1. .\ Microsoft.WindowsAzurePack.Samples\HelloWorld
    2. .\ Microsoft.WindowsAzurePack.Samples\ApiClients
  3. Once those folders are extracted, make sure to remove the read only property for folders, all subfolders and files. Make sure you remove the read-only property for both, Microsoft.WAP.Samples.HelloWorld and the ApiClients folders.

  4. Copy the following assemblies from your WAP deployment to the .\HelloWorld\References folder (these assemblies are required to build the solution):

    1. Microsoft.Azure.Portal.Configuration.dll
    2. Microsoft.WindowsAzure.Management.Common.HttpClient.dll

    You will find these assemblies in the server where WAP is installed (for example, you can find them in the following folder: C:\inetpub\MgmtSvc-AdminSite\bin).

    Note – Before executing the next step, confirm that Visual Studio 2012 and that the Windows Installer XML (WiX) toolset 3.6.3303.0 are installed in the same machine.

  5. Launch Visual Studio 2012, and open the Hello World Solution that is located on the folder you extracted (in my example, C:\Projects\HelloWorld\Microsoft.WindowsAzurePack.Samples.HelloWorld.sln). You may receive a warning indicating that one or more projects were not loaded correctly. Click on OK and in the output Window you will see a line similar to this:

    C:\Projects\HelloWorld\Setup\Microsoft.WindowsAzurePack.Samples.HelloWorld.Setup.wixproj : error : The project file could not be loaded. Could not find file 'C:\Projects\HelloWorld\Setup\Microsoft.WindowsAzurePack.Samples.HelloWorld.Setup.wixproj'. C:\Projects\HelloWorld\Setup\Microsoft.WindowsAzurePack.Samples.HelloWorld.Setup.wixproj

    In Solution Explorer locate the Microsoft.WindowsAzurePack.Samples.HelloWorld.Setup project and you will notice that it has a blue exclamation mark.

  6. In the Properties Window, click on the three dots at the end of the File Path for the Microsoft.WindowsAzurePack.Samples.HelloWorld.Setup project. In the Locate Project File window select the Microsoft.WAP.Samples.HelloWorld.Setup.wixproj file (that is located under .\HelloWorld\Setup folder) and click Open.

  7. Right click the Microsoft.WindowsAzurePack.Samples.HelloWorld.Setup project and click on Reload Project. If you receive a security warning asking you if you would like to open the project click on ok.

    Once the project is reloaded, it will should correctly in the Solution Explorer

  8. You may find that the Newtonsoft.Json assembly is not properly resolved for the Microsoft.WindowsAzurePack.Samples, Microsoft.WindowsAzurePack.Samples.HelloWorld.Api and the Microsoft.WindowsAzurePack.Samples.HelloWorld.ApiClient projects.

     

     

    NewtonSoft.json is a NuGet package which normally is installed and resolved using the following NuGet command: Install-Package NewtonSoft.json. We have to execute this command for each of the projects where the NewtonSoft.json reference is not properly resolved. For this, go to the Tools Menu – Library Package ManagerPackage Manager Console:

    This will open the Package Manager Console:

    In the Package Manager Console, in Default project select the project where the NewtonSoft.Json reference is not properly resolved (for example, Microsoft.WindowsAzurePack.Samples), and type the following command in the Package Manager Console: Install-Package NewtonSoft.json

    You will receive an output similar to this to indicate that the Newtonsoft.Json reference was installed and added successfully:

    Installing 'Newtonsoft.Json 5.0.8'.

    Successfully installed 'Newtonsoft.Json 5.0.8'.

    Adding 'Newtonsoft.Json 5.0.8' to Microsoft.WindowsAzurePack.Samples.

    Successfully added 'Newtonsoft.Json 5.0.8' to Microsoft.WindowsAzurePack.Samples.

    And also you will notice that the reference in the project is now properly resolved.

    Repeat this procedure for the Microsoft.WindowsAzurePack.Samples.HelloWorld.Api and the Microsoft.WindowsAzurePack.Samples.HelloWorld.ApiClient projects making sure that the Newtonsoft.Json reference is properly resolved:

  9. Locate the Web.Config file in the Solution Explorer and double click on it.

  10. In the details Window, locate the <appSettings>
    section and note the values for Username and Password. Here you have to specify the credentials to be used by the Resource Provider and we will use them when we have to register it in WAP later in this blog post (note that this is an account specific to the sample Resource Provider and does not need to exist somewhere else, for example in AD). Set the values to your standards. For example, I changed them to:

    <appSettings>

    <!-- Following credentials are used for basic auth for hello world resource provider. Its shown like this for this sample only.

    Its always recommended not to store credentials in plain text in web.config.

    Encrypt the credentials or config file -->

    <add
    key="Username"
    value="admin" />

    <add
    key="Password"
    value="Pass@word1" />

    </appSettings>

  11. Save the Project, and then in the Build Menu, click on Build Solution

  12. Depending on your Visual Studio layout, you should see a message similar to this in the Output Window indicating that the project was built successfully:

    ========== Build: 7 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========

  13. You will notice that the build process succeeded without errors, and also, you'll see the location of the MSI file that was generated as part of the build process (in my example, it was generated on: C:\Projects\HelloWorld\Setup\bin\x64\Debug\ Microsoft.WindowsAzurePack.Samples.HelloWorld.Setup.msi)

 

Step 2 – Install and register the Hello World Custom Resource Provider

In this section we will install the Hello World custom Resource Provider in the WAP server, and then we will register it with the Service Management API using the PowerShell script provided in the kit.

  1. Copy the Microsoft.WindowsAzurePack.Samples.HelloWorld.Setup.msi to the server where WAP is installed in the case of the Express Install or the server where the Admin and Tenant sites are installed, and execute it.

    1. In the Welcome to the Windows Azure Pack: Hello World Sample Setup screen click on Next.

    2. In the End-User License Agreement read the EULA and click on I accept the terms in the License Agreement if you do so, and click on Next.

    3. In the Custom Setup screen, make sure that all options are selected and click on Next.

    4. On the Ready to install Windows Azure Pack: Hello World Sample click on Install (accept any UAC prompts that may be displayed).

    5. On the Completed the Windows Azure Pack: Hello World Sample Setup Wizard click on Finish.

  2. Now we have to register the Hello World Resource Provider with the Service Management API. For this, the sample kit has provided a PowerShell script. Copy the Register-ResourceProvider.ps1 script located in the

    .\ Microsoft.WAP.Samples.HelloWorld\Setup\PowerShell folder to your WAP server and open it with the PowerShell ISE.

  3. In the script, locate the section where the $username and $password variables are initialized and provide the same values that you specified in the Web.Config file in Visual Studio. In my case, I set the following values:

     

    $hostName
    =
    "$env:ComputerName"
    +
    ":30030"

    $userName
    =
    "admin"

    $password
    =
    "Pass@word1"

     

    Save the script and close the Windows PowerShell ISE.

    Note: Make sure that the credentials specified in the Web.config file (step 1.9 from this blog post) are the same as the ones specified in the Register-ResourceProvider.ps1 script.

  4. Open a PowerShell window with Administrative rights and execute the Register-ResourceProvider.ps1. Make sure that there are no errors in the output window. Note that you've to run this PowerShell script in the server where WAP is installed (for the Express install) or the server with the WAP PowerShell modules installed (MgmtSvcConfig).

 

Step 3 – Explore the Hello World Custom Resource Provider

That's it – the Hello World sample is now deployed in your WAP environment. Now let's take a few steps so that you explore this sample resource provider, and also, make it available to your tenants.

  1. Open the Windows Azure Pack Admin Portal and you will notice the Hello World custom Resource Provider.

    You will notice that the Register your Hello World REST endpoint option is grayed out, this indicates that the Resource Provider extension has been successfully registered. Navigate through the different options (File Servers, Products, Settings and Controls) to get an overview of this sample resource provider.

    Now we want to give our tenants access to this resource provider. Let's assume that you already have a plan and you just need to add this custom resource provider to that plan.

  2. In the WAP Admin Portal, select one of your plans, and in the actions menu click on Add Service.

  3. In the Select Services to Add screen, select Hello World and click on the check mark to add the service to the plan.

  4. In the Plan, under Plan Services you'll see the recently added service (Hello World):

  5. Now it's time to sign in to the Tenant Portal as a tenant and explore the recently added service.

  6. Sign in into the WAP Tenant Portal with the credentials of a user that has been subscribed to the plan we edited in the previous steps.

  7. You will notice that the Hello World Resource Provider is now available to the tenant.

 

Note that the Microsoft.WAP.Samples.HelloWorld.Setup.msi installer we generated when building the Hello World solution in Visual Studio, installs, updates, or removes the Hello World Custom Provider including the client-side and server-side management portal for administrators and the management portal for tenants. Hence you can use the installer when you've a new version of your solution, or when you want to uninstall a previously deployed extension:

    

Also note that you can use the Register-ResourceProvider.ps1 script in case you need to re-register the Resource Provider, as the script first checks if there is already an existing Resource Provider with the name provided using the Get-MgmtSvcResourceProviderConfiguration cmdlet. In case it exists, it will remove it using the Remove-MgmtSvcResourceProviderConfiguration cmdlet and then it will create and add the new Resource Provider using the New-MgmtSvcResourceProviderConfiguration and Add-MgmtSvcResourceProviderConfiguration cmdlets.

 

This is just the tip of the iceberg, but this will give you a quick start into another extensibility option available in the Windows Azure Pack.

Please let us know if you've any specific scenarios/functionality that is not covered by the out-of-the-box Resource Providers in WAP and that could be provided via a custom Resource Provider (either creating a new one or extending the Hello World sample).

Until next time!

Comments

  • Anonymous
    January 01, 2003
    Hi Cumhur Asci, did you checked that the Hello World resource provider was properly registed? Same PWD in the web.config file in the VS project and the Register-ResourceProvider.ps1 PS script? Is the Register your Hello World REST endpoint option is grayed out in the WAP admin portal?
  • Anonymous
    January 01, 2003
    The comment has been removed
  • Anonymous
    January 01, 2003
    Hi Pramod Gupta, have you reviewed the Windows Azure Pack Developers Kit at http://msdn.microsoft.com/en-us/library/dn448665.aspx
  • Anonymous
    January 01, 2003
    Hi Venkat
    Thanks for your comments. Normally you’ve different ways to store custom configuration values. For example, the Hello World sample stores them in the web.config file, or you could use your own custom database. In both cases, you should encrypt the credentials just like WAP in general does.

    Please refer to the Protect-MgmtSvcConfiguration and Unprotect-MgmtSvcConfiguration PowerShell Cmdlets for more details on this (http://technet.microsoft.com/en-us/library/dn520965(v=sc.20).aspx and http://technet.microsoft.com/en-us/library/dn520996(v=sc.20).aspx).
  • Anonymous
    January 01, 2003
    Hi Ranjana, If you want to use the VM Clouds Resource Provider that is included in WAP you require SPF and VMM. Take a look at this article that describes this architecture: http://technet.microsoft.com/en-us/library/dn457793.aspx. Note that VMM can manage Hyper-V hosts on untrusted domains! Check this article for more details: http://technet.microsoft.com/en-us/library/gg610609.aspx. Please note that the maximum number of VMM servers that can be configured in SPF is 5. Hope this helps!
  • Anonymous
    January 01, 2003
    Hi Kiran, what's the error you get when trying to add the custom resource provider to a plan?
  • Anonymous
    January 01, 2003
    Hi Tim,

    Thanks for your comments. Please check this new partner-provided WAP Resource Provider: http://www.gridprosoftware.com/en/products/requestmanagement
  • Anonymous
    February 13, 2014
    Can I add multiple standalone Hyper-V servers (members of different domains) as providers to WAP without them being managed by a VMM (as they belong to different domains that have their own VMMs). I do not wish to have a trust relationship with those domains. Just require to create user accounts in WAP and as they login, I'd like them to find their own assigned VM hosted on their respective Hyper-V server to be shown to them in the portal.
  • Anonymous
    February 28, 2014
    Hi Victor, Nice Post! Say the plugin has a backend. It communicates with the back end when calls are made to the plugin through these admin and tenant UIs. Now he needs to store credentials for himself to talk to the backend. Does the Azure pack framework provide some kind of support for storing these credentials. I mean is there a database or storage provided by the framework where the plugins can store their data or is it the plugins own responsibility to figure this. Ideally the plugin would be stateless but it may need some basic credentials to be persisted so that it can talk to the backend.
    Thanks
  • Anonymous
    March 02, 2014
    The comment has been removed
  • Anonymous
    March 04, 2014
    In this final section of the Success with Hybrid Cloud series, I want to get technical. The following
  • Anonymous
    March 13, 2014
    Throughout this Success with Hybrid Cloud series, I’ve emphasized the importance of linking private and
  • Anonymous
    May 07, 2014
    Pingback from Windows Azure Pack???????????? | blchen?????????
  • Anonymous
    May 20, 2014
    Pingback from Success with Hybrid Cloud: Getting Deep – Windows Azure Pack | Dot Net RSS
  • Anonymous
    May 20, 2014
    Pingback from Success with Hybrid Cloud: Getting Deep – Windows Azure Pack | Dot Net RSS
  • Anonymous
    May 20, 2014
    Pingback from Success with Hybrid Cloud: Getting Deep – Windows Azure Pack | Dot Net RSS
  • Anonymous
    May 20, 2014
    Pingback from Success with Hybrid Cloud: Getting Deep – Virtualization & Templates | Dot Net RSS
  • Anonymous
    May 20, 2014
    Pingback from Success with Hybrid Cloud: Getting Deep – Virtualization & Templates | Dot Net RSS
  • Anonymous
    July 31, 2014
    Hi Victor.
    I have a problem. I have completed all steps successfully. But when i try to add it to an existing Plan, it pops an error message and says "Unable to add service helloworld to plan X".

    I have checked the steps if I missed something but no, I did exactly the same things above. I wonder if this is a common problem or not? And do you have any idea?


    Thanks.
  • Anonymous
    August 11, 2014
    Hello. I am working on Windows azure pack and their Custom Resource provider feature. From your above blog I am able to deploy a 'Custom Resource Provider' successfully and now I want to deploy these 'Custome Resources provider' through Visual Studio or through any script which I can run through Visual studio (On Project Build or Deployment through VS)
  • Anonymous
    August 12, 2014
    So, please help me out
  • Anonymous
    August 20, 2014
    Thanks a lot Victor Arzate..!! It also came in my mind later.
  • Anonymous
    September 05, 2014
    Hi Victor, Pramod again.

    I am not able to see the file share details (grid) when I navigate from 'My account' tab in tenant site. But when I come from some other tab I can see it.

    It looks to be some JavaScript issue in hello world sample so can you help me out in that

    And also I want to learn the javascript/jquery framework used in windows azure pack so that I could develop in the same manner as WAP so please provide me some help (links, video references) for that.
  • Anonymous
    September 17, 2014
    Hi Victor. Also please tell how can we work in code with Plan Quota in Hello world 'Plan Service'?
  • Anonymous
    May 19, 2015
    Hi Victor,

    I'm going to create a custom resource provider in windows azure and that is great when I found this article. Thank you so much!

    I'm currently using Windows 7. I've tried to open the sample project on VS 2013 and there are some missing dlls. I've tried to get them on NuGet but I cannot get them sufficiently.

    So we cannot use Windows 8 or higher to develop?

    Thanks!
  • Anonymous
    June 08, 2015
    Hi Victor,
    followed all the steps.but am unable to add custom resource provider to a plan.please tell me solution.
  • Anonymous
    June 09, 2015
    Hi Victor,
    I'm not able to add service to my "Custom Plan(Existing Plan)". The Hello World Resource Provider is registered because "Register your Hello World REST endpoint" option is grayed out. The password is same in both side, I am giving administrator account(Azure Admin Portal UN & PW) username and password in web.config and in powershell script. When I try to add it in plan the "Unable to add service helloworld to plan Custom." error show and in detail section "Please try again. If the problem persists, contact support." error show.
  • Anonymous
    June 09, 2015
    And pls also tell which port number we have to use instead of "30030", and one more thing my server is domain is https secured.
  • Anonymous
    June 09, 2015
    Hi Victor, I've also followed your sample and deployed my custom resource provider, but when I try to add it to a plan I get this error from the AdminAPI. Can you tell me where to look ? I've checked the event logs, IIS logs, failed request trace logs and WAP trace (debug) logs.


    ERROR#1
    Unexpected exception for operation 'Fanout', version '', client request Id '', server request Id '', exception 'System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a receive. ---> System.IO.IOException: Unable to read data from the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
    at System.Net.Sockets.NetworkStream.EndRead(IAsyncResult asyncResult)
    --- End of inner exception stack trace ---
    at System.Net.ConnectStream.WriteHeadersCallback(IAsyncResult ar)
    --- End of inner exception stack trace ---
    at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
    at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
    --- End of inner exception stack trace ---
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    at Microsoft.WindowsAzure.Server.Management.Core.RequestSenderExtensions.d__1b.MoveNext()'.

    ERROR #2
    Error:
    HttpStatusCode: InternalServerError, ErrorCode: ErrorFromUnderlyingResourceProviders, ClientErrorMessage:One or more errors occurred while contacting the underlying resource providers. The operation may be partially completed.
    --->
    Microsoft.WindowsAzure.Server.Management.Core.ManagementServiceException: One or more errors occurred while contacting the underlying resource providers. The operation may be partially completed. Details: An error occurred while sending the request.
    at Microsoft.WindowsAzure.Server.Management.Core.QuotaManager.ThrowFanoutException(ResourceProviderException resourceProviderException)
    at Microsoft.WindowsAzure.Server.Management.Core.QuotaManager.d__fd.MoveNext()
    --- End of stack trace from previous location where exception was thrown ---
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
    at Microsoft.WindowsAzure.Server.AdminManagement.Service.Controllers.PlanServicesController.d__0.MoveNext()
    <---
    , operationName:, version:, accept language:, subscription Id:, client request Id:, principal Id:, page request Id:, server request id:


    Thanks!
  • Anonymous
    July 20, 2015
    Hi,

    I am also unable to get this solution to work.. it seems like the backend rest service isn't working.. when it creates the binding in IIS it is set as https, but has no cert, I've tried adding a self signed cert and re-registering the endpoint with https, As above I get similar errors when trying to configure the add-on.

    It lets me create the add-on , then when I go to configure it and save I get the following error:

    "Cannot validate the new quota settings because one of the underlying services failed to respond."

    Any suggestions?
  • Anonymous
    September 08, 2015
    Hi Suraj, James and David Wallis

    You can't add the Hello World service to a plan because when you registered the resource provider, it was registered with http instead of https. Please open the Register-ResourceProvider.ps1 script, change all the http instances to https, save the script and re-run it. Also, make sure that there's a valid SSL certificate for the https binding in the MgmtSvc-HelloWorld site in IIS (Hello World resource provider is deployed with https binding. But no certificate will be selected by default). After this, run iisreset and this time you'll be able to add the Hello World service to the plan, and when you sign in to the tenant portal, you'll see the hello world extension.

    We'll be updating the script so that in future releases you don't have to manually change http to https.

    Thanks,
    Victor
  • Anonymous
    September 08, 2015
    Hi Nguyen Tran, I just built and deployed the solution using Windows 10 and Visual Studio 2015, and it worked like a charm.
  • Anonymous
    September 10, 2015
    Hi Victor ,

    Have followed all the steps suggested in ur previous comment.

    Hi Suraj, James and David Wallis

    You can't add the Hello World service to a plan because when you registered the resource provider, it was registered with http instead of https. Please open the Register-ResourceProvider.ps1 script, change all the http instances to https, save the script and re-run it. Also, make sure that there's a valid SSL certificate for the https binding in the MgmtSvc-HelloWorld site in IIS (Hello World resource provider is deployed with https binding. But no certificate will be selected by default). After this, run iisreset and this time you'll be able to add the Hello World service to the plan, and when you sign in to the tenant portal, you'll see the hello world extension.

    We'll be updating the script so that in future releases you don't have to manually change http to https.

    Thanks,
    Victor


    still am not able to add service to hello world. I'm still getting this error: "Unable to add service hello world to plan Custom." error show and in detail section "Please try again. If the problem persists, contact support." error show."


    Please suggest how to resolve it.

    Thanks!
  • Anonymous
    September 10, 2015
    Still think I am doing something wrong..

    "Cannot validate the new quota settings because one of the underlying services failed to respond. Details: No HTTP resource was found that matches the request URI 'https://servername:30030/admin/quota?validateOnly=true'."

    Does the "HTTP Resource" mean HTTP or does it actually mean HTTPS? IE is it a generic error?

    David
  • Anonymous
    September 10, 2015
    The comment has been removed
  • Anonymous
    December 14, 2015
      While working on an issue last week, I came across a nice blog with all the steps to register
  • Anonymous
    April 06, 2016
    Hi,I am trying to deploy the helloworld resource provider. I am able to successfully build the solution and create the msi. I have created the plan with helloworld service successfully in admin portal. But when I subscribe to the plan, it throws error stating that "One or more error occurred while contacting the underlying resource provider. The operation may be partially completed.Details:Subscription can not be null"But the subscription is created. Nothing shows up in tenant under hello world. In admin side, the subscription status is shown as "out of sync". Could you please help me to resolve thisThanks
    • Anonymous
      April 06, 2016
      Please help on this ASAP
      • Anonymous
        April 26, 2016
        Hi Test, ThamilCan you please check the answer I provided above to Sharada and David Wallis? That answer includes the key steps/settings you must check to successfully register the Hello World extension.Thanks,Victor
  • Anonymous
    April 10, 2017
    This article is an appealing wealth of informative data that is interesting and well-written.