https://github.com/revant/erpnext_feature_board is a frappe framework app. It consists of following components
- Improvement: It keeps track of individual PR and additional data that is needed to generate sites.
- Github Repository: It is used to add Github repo url and PAT. Used for sync of Open PR <=> Improvements
- These are events check the deployment_status of the Improvement.
- As per the deployment_status the scheduler_event will pick up the Improvement and process it.
- Scheduler Functions are in
deploy.pythey do what is mentioned in Architecture.
- Think of it as executing kubectl and helm commands using python api. (https://github.com/kubernetes-client/python)
- For Helm it is using Flux Helm Operator
- Github Sync
- It is an hourly scheduler that syncs PR to Improvement
It is a standard frappe app that can be installed using
bench get-app and
bench install-app commands.
It needs a locally running kubernetes cluster if you are developing the Kubernetes related scheduler events.
Development docs use k3d.io for setting up local cluster.
If you are just dealing with the Web App development, no need to setup kubernetes and ignore
Make sure to set
1 during local development.
The app uses local user’s kubeconfig (~/.kube/config) in developer mode.
In case of production, it will take in-cluster kubeconfig.
Production docker images for the app are built and published to custom registry.
ERPNext Helm chart is used to install this app in production.