The system that allows to receive and collect data about energy consumption from different villages. As a result, the system should, on demand, give out the consumption report per village for the last 24h.
Spring Boot, Maven, MySQL, Docker.
We will use minikube
to run a local kubernetes instance. We will access this local kubernetes with the client called kubectl
.
- There has to be atleast one electrical counter in every village i.e. a village cannot exist without electrical counter.
- A village can have any number of electrical counter.
- The last 24h will be considered from current time when the report is generated.
- All the electrical counter is operational all the time in every village.
GET https://europe-west2-zenhomes-development-project.cloudfunctions.net/counters/1
is always up and working and return non empty response.- By default the report will show energy consumption of last 24 hrs per village.
- Duration should always be in hours while generating reports.
counter_id
is always positive integer in post call.
- If possible do basic authentication on
POST /counter_callback
call. - Implement mysql persistent volume.
- Generate REST Documentation.
- Automate the deployment of service to kubernetes.
- Logging.
- Cloud.
- Securing Containers.
- Add some more unit test cases and duration can be passed dynamically instead of 24h.
- Securing an application with Transport Layer Security and a Self-Signed Certificate.