Application Packaging Standard

Last updated 18-Mar-2019

DNS Management

The guide demonstrates the process of integrating an application with the built-in Domain Manager application on the platform as described in the Integration with DNS document. It also directs you through a demo project that logically follows the Generic Services demo project.

../../../_images/tracks-dns.png

Follow the demo project in this document if you want to practice in binding your application with the DNS services.

../../../_images/dns-step-model-b1.png ../../../_images/dns-step-meta1.png ../../../_images/dns-step-provision1.png ../../../_images/dns-step-presentation1.png ../../../_images/dns-step-deploy1.png ../../../_images/dns-step-provisioning1.png

Scenario

The procedure guide and the embedded demo project are based on the following scenario.

  • When creating a virtual private server (VPS), the owner can require the following DNS operations:
    • Assign VPS to a hosted domain.
    • Create the DNS CNAME record aliased to the A record in the hosted domain.
  • Once a domain zone (hosted domain) is created, the subscriber can open the domain profile to require creation of a VPS assigned to the domain or remove the bound VPSes.
  • In the list of domains, a subscriber will see application services assigned to the domains.

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

Resource Model

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

../../../_images/dns-model.png
  • cloud - an APS type to create the system-wide application root resource
  • context - an APS type to create the singular VPS management environment in each subscription
  • vps - an APS type to create virtual servers

Compared with its predecessor, the new resource model requires each VPS to have a link with a domain and the collection of optional links with DNS records in this domain.

Note

A link to a domain is required for integrating the application with the Domain Manager.

Start Your Demo Project

Clone the package you have created in the demo project of the Generic Services 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 dns1p name.
    • Extract the package to a folder, for example, to dns1p/.
  2. Replace every occurrence of custom application ID and type ID prefix with “http://aps-standard.org/samples/dns1p/” 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 dns1p
    

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.