Skip to content

Humanitec-DemoOrg/traderx-demo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

traderx-demo

Get the finos/traderX to Score and Humanitec.

Open in GitHub Codespaces

flowchart TD
    dns[DNS] --> ingress(ingress)
    subgraph Workloads
        ingress-->reference-data(reference-data)
        ingress-->trade-service(trade-service)
        ingress-->trade-feed(trade-feed)
        ingress-->trade-processor(trade-processor)
        ingress-->web-frontend(web-frontend)
        ingress-->position-service(position-service)
        ingress-->people-service(people-service)
        ingress-->account-service(account-service)
        ingress-->database[(database)]
        web-frontend-->trade-feed
        web-frontend-->database
        account-service-->people-service
        account-service-->database
        position-service-->database
        trade-processor-->trade-feed
        trade-processor-->database
        trade-service-->account-service
        trade-service-->database
        trade-service-->people-service
        trade-service-->reference-data
        trade-service-->trade-feed
    end
Loading

Local deployment with Docker Compose

Deploy and test locally with Docker compose:

make compose-up

make compose-test

Working:

curl http://localhost:8080/people-service/People/GetPerson?LogonId=user01

curl http://localhost:8080/reference-data/api
curl http://localhost:8080/reference-data/stocks
curl http://localhost:8080/reference-data/stocks/MMM

curl http://localhost:8080/trade-feed/

curl http://localhost:8080/position-service/trades/22214
curl http://localhost:8080/position-service/positions/22214

Failing:

curl http://localhost:8080/position-service/swagger-ui/index.html
curl http://localhost:8080/trade-processor/swagger-ui/index.html

Local deployment with Kind cluster

Deploy and test locally with Kind cluster:

make kind-create-cluster

make k8s-up

make k8s-test

Humanitec deployment

You will need to install humctl locally.

Deploy to Humanitec:

export HUMANITEC_ORG=FIXME
export HUMANITEC_APPLICATION=traderx
export HUMANITEC_ENVIRONMENT=development

humctl login

humctl create app ${HUMANITEC_APPLICATION} \
    --name ${HUMANITEC_APPLICATION}

make humanitec-deploy

Get the generated DNS one the deployment is done:

humctl get active-resources \
    --app ${HUMANITEC_APPLICATION} \
    --env ${HUMANITEC_ENVIRONMENT} \
    -o json \
    | jq -c '.[] | select(.metadata.type | contains("dns"))' \
    | jq -r .status.resource.host

Here is the associated resource graph generated by Humanitec:

humctl resources graph \
    --app ${HUMANITEC_APPLICATION} \
    --env ${HUMANITEC_ENVIRONMENT}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors