Voting application contains various frontend and backend microservices. These microservices are deployed and are available over ingress in Roost Cluster.
An frontend application written in node to allow participants to vote.
Depends on: ballot and ecserver services
An backend app for voter written in Golang, to store the votes.
An frontend to manage the election candidates and uses ecserver as backend to store candidates lists.
Depends on: ecserver
An backend app written in Golang for election-commission to store list of candidates.
Right-click on Makefile and choose Run.
Pattern: http://$namespace.$serviceName.$clusterPublicIP.nip.io
Voter: default.voter.10.10.0.10.nip.io
ElectionCommission: default.ec.10.10.0.10.nip.io
Build and deploy service-test-suite in roost cluster. Roost intelligently identifies service dependencies. So whenever dependent service is modified, specified test suite is triggered. In event of building ballot image or restart of the ballot app, service test suite would be triggered and fitness events can be seen from event viewer (Observability -> Service Fitness -> Fitness Event).