This is a to-do list web application with the basic features of most web apps, i.e., accounts/login, API, and interactive UI. To do this task, you will need:
Try it out by installing the requirements (the following commands work only with Python 3.8 and higher, due to Django 4):
pip install -r requirements.txt
Create a database schema:
python manage.py migrate
And then start the server (default is http://localhost:8000):
python manage.py runserver
You can now browse the API or start on the landing page.
Create a Kubernetes manifest for a pod that will contain a ToDo app container:
- Fork this repository.
- Create a
daemonset.yml
file with a daemonset. - DaemonSet requirements:
- Container:
busyboxplus:curl
- Resource requests and limits should be present
- Every 5 seconds it should execute a
curl
command to a clusterIp service of a todoapp.
- Container:
- Create a
cronjob.yml
file with a CrobJob manifest. - CrobJob requirements:
- Container:
busyboxplus:curl
- Resource requests and limits
- Every 4 minutes it should call a
/api/health
endpoint of todoapp via a clusterIp service. - Should keep 10 successful runs in history
- Should keep 5 failed runs in history
- Should have a
concurrencyPolicy
set toAllow
- Container:
- Both new manifests should belong to
mateapp
namespace - Create the
INSTRUCTION.md
file INSTRUCTION.md
should contain the instructions on how to deploydaemonset.yml
andcronjob.yml
to the cluster.INSTRUCTION.md
should be updated with the instructions on how to validate the solution. (Logs for thedaemonset
andcronjob
should be present)- Create PR with your changes and attach it for validation on a platform.