Swap Domains
While working with your project, you can face the need to upgrade or modify it. And, of course, before applying the changes in production, they should be tested. With Apiqcloud, this can be easily accomplished by means of swapping domains among intermediate and production project versions.
With this functionality, end-users of your application won't experience any downtime when you, for example, deploy a new application version. You can stage your new application version in a test environment and consequently swap URLs with a production environment just in a few clicks.
Note:
- If you want to use the Swapping domains feature, do not enable Public IP for any node in your environments
- In case of the necessity to attach external IP address to the entry point of your environment (i.e. app server or balancer) after the swapping is already done, you'll need to additionally state the proper CNAME record for it within the domains administration panel; otherwise, the requests will be sent to the "old" environment
So, let's see how this actually works.
Create a Test Environment
1. First of all, navigate to your Apiqcloud production environment with the needed application (i.e. which you want to update and test) deployed and running. In our case, it is called production.
2. Open the application in the browser to see that everything works.
3. Clone this environment to make its identical copy for adding new features, setting, updates and testing them. The cloned environment is an identical copy of the original environment including all data in the deployed packages, databases, etc. Let's call it testing.
Follow the link for more detailed instruction on cloning.
4. Click Open in browser button for your cloned environment to make sure that everything works fine.
Update the Application
- adding a Java project via Maven
-
adding a PHP project
2. Click Build and deploy for the new project. The project appears in the specified context.
3. Click Open in browser button for your updated project to make sure that everything works fine.
Bind Domains
1. Open Settings of your cloned environment and bind the domain (for example, test.com) that you have purchased earlier.
Note that your production environment also should have a custom domain bound before (for example, production.com).
More information about binding domains you can find in the Custom domains document.
2. Open the updated application in a web browser to see the applied changes.
Swap Domains
The next step after testing the updates you've done is to swap domains.
1. Open the Settings () for one of your environments - production or cloned for testing (in our case we choose a production environment).
2. In the Custom domains section expand Swap domains menu.
3. Choose the environment with which you want to swap your domains (in our case, testing environment) and press the Swap button. Right after that, the external domain names on the two environments will be exchanged.
4. Now you can navigate to production.com (your production environment custom domain) and see that your application has been already updated.