This project builds self-contained deployment artefacts of the Dynatrace easyTravel demo application for the following components:
| Component | Deployment Artefact |
|---|---|
| mongodb | A pre-populated travel database (MongoDB) as easyTravel-mongodb-db.tar.gz. |
| backend | The easyTravel Business Backend (Java) as backend.war |
| frontend | The easyTravel Customer Frontend (Java) as frontend.war. |
| loadgen | A synthetic UEM load generator (Java) as uemload.jar plus dependencies in loadgen.tar.gz. |
The build.sh script builds easyTravel deployment artefacts into a directory deploy inside your current working directory, by default. You can override the default behavior by providing the following environment variables to the script:
| Environment Variable | Defaults | Description |
|---|---|---|
| ET_SRC_URL | http://dexya6d9gs5s.cloudfront.net/latest/dynatrace-easytravel-src.zip | A URL to an easyTravel source distribution .zip file. |
| ET_DEPLOY_HOME | ./deploy | A directory to contain the easyTravel deployment artefacts. |
| ET_BB_DEPLOY_HOME | ./backend | A directory under ${ET_DEPLOY_HOME} to contain the easyTravel Business Backend deployment artefact (the artefact will be located in ${ET_DEPLOY_HOME}/${ET_BB_DEPLOY_HOME}. |
| ET_CF_DEPLOY_HOME | ./frontend | A directory under ${ET_DEPLOY_HOME} to contain the easyTravel Customer Frontend deployment artefact (the artefact will be located in ${ET_DEPLOY_HOME}/${ET_CF_DEPLOY_HOME}. |
| ET_LG_DEPLOY_HOME | ./loadgen | A directory under ${ET_DEPLOY_HOME} to contain the easyTravel UEM load generator deployment artefact (the artefact will be located in ${ET_DEPLOY_HOME}/${ET_LG_DEPLOY_HOME}. |
./build.sh
ET_BB_DEPLOY_HOME=. \
ET_CF_DEPLOY_HOME=. \
ET_LG_DEPLOY_HOME=. \
./build.sh
ET_DEPLOY_HOME=. \
ET_BB_DEPLOY_HOME=. \
ET_CF_DEPLOY_HOME=. \
ET_LG_DEPLOY_HOME=. \
./build.sh
Use build-in-docker.sh if you want to build easyTravel deployment artefacts in a build environment that runs in Docker, so you don't have to set up your own. Deployment artefacts can be found in a directory deploy inside your current working directory. You can override the default behavior by providing the following environment variables to the script:
| Environment Variable | Defaults | Description |
|---|---|---|
| ET_SRC_URL | http://dexya6d9gs5s.cloudfront.net/latest/dynatrace-easytravel-src.zip | A URL to an easyTravel source distribution. |
| ET_DEPLOY_HOME | ./deploy | A directory to contain the easyTravel deployment artefacts under the current working directory. |
| ET_BB_DEPLOY_HOME | ./backend | A directory under ${ET_DEPLOY_HOME} to contain the easyTravel Business Backend deployment artefact (the artefact will be located in ${ET_DEPLOY_HOME}/${ET_BB_DEPLOY_HOME}. |
| ET_CF_DEPLOY_HOME | ./frontend | A directory under ${ET_DEPLOY_HOME} to contain the easyTravel Customer Frontend deployment artefact (the artefact will be located in ${ET_DEPLOY_HOME}/${ET_CF_DEPLOY_HOME}. |
| ET_LG_DEPLOY_HOME | ./loadgen | A directory under ${ET_DEPLOY_HOME} to contain the easyTravel UEM load generator deployment artefact (the artefact will be located in ${ET_DEPLOY_HOME}/${ET_LG_DEPLOY_HOME}. |
./build-in-docker.sh
ET_BB_DEPLOY_HOME=. \
ET_CF_DEPLOY_HOME=. \
ET_LG_DEPLOY_HOME=. \
./build-in-docker.sh
ET_DEPLOY_HOME=. \
ET_BB_DEPLOY_HOME=. \
ET_CF_DEPLOY_HOME=. \
ET_LG_DEPLOY_HOME=. \
./build-in-docker.sh
Aligning with principles of 12factor apps, one of them which requires strict separation of configuration from code, easyTravel can be configured at startup time via the following environment variables:
| Environment Variable | Defaults | Description |
|---|---|---|
| ET_BACKEND_URL | http://localhost | The URL to easyTravel's Business Backend. |
| ET_DATABASE_USER | etAdmin | The username of the database easyTravel's Business Backend shall connect to. |
| ET_DATABASE_PASSWORD | adminadmin | The password of the database easyTravel's Business Backend shall connect to. |
| ET_DATABASE_LOCATION | localhost:27017 | The location of the database the easyTravel Business Backend shall connect to. |
Licensed under the MIT License. See the LICENSE file for details.
