Application Packaging Standard

Last updated 18-Mar-2019

Bind-to-Domain Event

The guide walks you through the process of binding of application services to the registration of a required domain name on the platform as described in the Bind-to-Domain document. It also directs you through a demo project that logically follows the DNS Management demo project.

../../../_images/tracks-bind2domain.png

Following the demo project in this document, you will get practice in binding your application with the DNS registration.

../../../_images/dns-step-model-b.png ../../../_images/dns-step-meta.png ../../../_images/dns-step-provision.png ../../../_images/dns-step-presentation.png ../../../_images/dns-step-deploy.png ../../../_images/dns-step-provisioning.png

Scenario

The procedure guide is valid for the platform consisting of both its parts, Operations Support System (OSS) and Business Support System (BSS). Such a configuration allows a provider to sell a domain registration service plan along with a service plan providing a demo application service. The latter will be a parent of the former that will be added as an upsell service plan.

The guide is based on creating a demo application with the following features:

  • The VPS management context resource will subscribe itself to the “bind to domain” event during the provisioning process.
  • Once the domain registration upsell process is completed, the VPS management context will receive and process a “bind to domain” event notification. The context resource will store the registered domain name to use it in the VPS provisioning processes.
  • When a subscriber creates a VPS, the registered domains will be available for creating a DNS A record for the VPS.

Benefits of the integration:

  • It allows an APS application to complete the integration between the two services. The hosting platform binds an application service subscription with a domain registration subscription, and then the application binds its services (VPSes) with the registered domains.
  • This helps to make integration with DNS fully automated.

Following this project, you will create an APS package similar to the sample package.

Resource Model

To reach the goals, the application must define the APS types presented on the following resource model:

../../../_images/bind2domain-model.png
  • cloud - the application root resource representing an APS application instance
  • context - the customer VPS management environment
  • vps - represents VPSes

Compared with its predecessor, the new resource model also includes a paDomain collection of links between the management context and DNS zones. This relationship cannot be required since the management context resource will bind itself to a new domain zone resource after the latter is provisioned.

Start Your Demo Project

Note

To test a demo application you should use a full installation of the platform containing both, the Operations Support System (OSS) and Business Support System (BSS).

Clone the package you have created in the demo project of the DNS Management scenario to the new one by following these steps.

  1. Create a new project basing on the input package and using one of the ways:

    • In the Eclipse or IntelliJ IDEA IDE, import the package and then rename it, for example, assign it the bind2domain name.
    • Extract the package to a folder, for example, to bind2domain/.
  2. Replace every occurrence of custom application ID and type ID prefix with “http://aps-standard.org/samples/bind2domain/” in all project files. This will replace the old application and types with the new ones.

  3. To verify if there are no typo in the new project, try to build the new package using either Eclipse IDE, IDEA IDE, or the following command from the command line tools:

    $ aps build bind2domain
    

If no errors detected and you have successfully built a new APS package, then proceed to the next step.

Conclusion

In this first step, we identified the purpose of the application, a relevant scenario, and a resource model.

To implement the scenario, you have started the demo project to create and test an APS package similar to the sample package.