Deploy to Dev Team Server
Deploy to Dev Team Server
Overview
If you are using Amazon Web Services, consider using ElasticPath CloudOps for AWS to automate your infrastructure setup and deployment, instead of manually configuring your infrastructure and deploying using the Pusher scripts.
The Dev Team server has the simplest possible deployment topology - a local MySQL database, a local ActiveMQ JMS broker, and a single Tomcat instance running all web apps.
The Pusher is used to deploy Elastic Path applications to the Dev Team server. The Pusher contains a set of Bash scripts that can be configured to handle single server deployments as well as more complex deployment topologies. A copy of the Pusher source is included in the devops/pusher-package module.
The basic deployment components are:
- A deployment package that is built by the extensions/packager module. The same package can be deployed to multiple environments without changes using a "Build once, deploy anywhere" approach.
- A pusher package that is built by the devops/pusher-package module.
Deployment package
The deployment package contains:
- WAR files for all Elastic Path webapps
- Data and properties from the extensions/database module - these are used to update the database schema and catalog data.
- Tools - Data Population and Import/Export
- JAR files - database driver and Active MQ dependencies required by Tomcat
- Tomcat installation package - to install Tomcat for the first time (if desired)
Pusher package
The pusher package contains:
- Configuration files for target environments that are controlled by the construction team. For production environments the configuration files are typically managed separately.
- A copy of The Pusher - a set of scripts that manages the deployment process.
Deployment process
An overview of the deployment process is shown in the diagram below. Typically there are two CI jobs - one to build a deployment package, and the second to push to the target environment.
Configuration steps
- Verify that the target server has been configured as specified by Prepare Infrastructure.
- Review the target server requirements on The Pusher - Quick Start page and implement any missing requirements.
- Configure the following files in the extensions/database/ext-data/src/main/resources/environments/dev/ folder:
- filtering.properties - filtering of catalog data
- Configure the following files in devops/pusher-package/environments/dev/ folder:
Property Description database.properties
Defines database connection properties and the data population environment name itself for this environment. data-population.properties Defines properties required by the Data Population tool for execution in this environment; e.g. Liquibase contexts to activate for this environment. filtering.properties Defines the values used when overriding property placeholders in data files for this environment.
Refer to The Pusher - Quick Start page for configuration tips.
Deployment steps
You can deploy to the Dev Team server using the following CI jobs that were created in Setup CI Server.
- Run the Deployment Package job and wait for it to complete.
- Run the Deploy to Dev Server job and wait for it to complete.
- You can smoke test the deployment using the following URLs:
Component URL Notes Cortex http://<hostname>:8080/cortex/status Cortex health monitor Cortex Studio http://<hostname>:8080/studio Expand the Authentication utility menu, then click the Revoke Acccess and Authenticate buttons.You should be granted access. Commerce Manager http://<hostname>:8080/cm/?servicehandler=status Commerce manager health monitor Search Server http://<hostname>:8080/search/status/ Search server health monitor Batch Server http://<hostname>:8080/batch/status/ Batch server health monitor Integration Server http://<hostname>:8080/integration/status/ Integration server health monitor Active MQ http://<hostname>:8161/admin Active MQ control panel.