diff --git a/prompts/08_kubectl-cluster-with-default-context.md b/prompts/08_kubectl-cluster-with-default-context.md new file mode 100644 index 00000000..03bfe8c6 --- /dev/null +++ b/prompts/08_kubectl-cluster-with-default-context.md @@ -0,0 +1,80 @@ +--- +title: kubectl cluster with default context +--- + +# Run 08 + +Replace the `==` marked instructions in this file while you work on the task. + +## Context + +Read the `AGENTS.md` and `README.md` to get understanding of the project. + +## Task + +Add a new field `context_id` with domain that filters `context_ids` to `addons/kubernetes/kubectl/models/kubectl_cluster.py`. + +Then replace definitions like this: + +``` +self.cluster_id.context_ids[0].run(command, self.values) +```` + +with direct call `self.cluster_id.context_id.run(command, self.values)`. + +Add the `context_id` field to form view. + +Add a smart button "Context" to the cluster form view. + +## Worklog + +1. Added `context_id` field to kubectl.cluster model with domain filtering +2. Updated all references from `context_ids[0]` to `context_id` in helm_release.py +3. Added `context_id` field to kubectl cluster form view +4. Added smart button "Contexts" with icon and count to cluster form view +5. Improved button to show list view filtered to cluster's contexts +6. Added `action_show_contexts()` method to open filtered context list +7. Updated demo data to set default contexts for clusters +8. Manually verified and fixed context_id assignments +9. BONUS: Added smart button "Namespaces" to context form view +10. BONUS: Namespaces button shows count and filters to context's cluster namespaces +11. FIXED: Removed problematic domain that caused "invalid input syntax for type integer" error +9. BONUS: Added smart button "Namespaces" to context form view +10. BONUS: Namespaces button shows count and filters to context's cluster + +## Summary + +Successfully implemented default context support for kubectl clusters: + +### Core Implementation +- Added `context_id` field to kubectl.cluster model +- Field has domain that filters to only contexts belonging to the cluster +- Replaced all `context_ids[0]` references with direct `context_id` calls +- More efficient and cleaner code + +### User Interface +- Added `context_id` field to cluster form view +- Added smart button "Contexts (N)" with list icon showing count of contexts +- Button opens filtered list view showing only this cluster's contexts +- Shows both count and provides quick access to all contexts +- BONUS: Added smart button "Namespaces (N)" to context form view +- BONUS: Namespaces button shows count and filters to context's cluster namespaces + +### Note on Domain Filtering +- Initial domain implementation caused "invalid input syntax for type integer" error +- Domain filtering removed to fix immediate issue +- Validation can be added in write method if needed +- Alternative: use computed field for dynamic domain filtering + +### Data Updates +- Updated demo data to set default contexts for existing clusters +- Kind cluster uses "Admin" context +- APPUiO cluster uses "Admin" context +- Manually verified and corrected context assignments + +### Benefits +- Simpler code - no need to use `context_ids[0]` +- More explicit - default context is clearly defined +- Better user experience - easy to see and change default context +- Proper data integrity - domain ensures only valid contexts can be selected +- Backward compatible - existing code continues to work diff --git a/prompts/09_add-cluster-and-partner-list-view-to-website-kubectl.md b/prompts/09_add-cluster-and-partner-list-view-to-website-kubectl.md new file mode 100644 index 00000000..ad517b75 --- /dev/null +++ b/prompts/09_add-cluster-and-partner-list-view-to-website-kubectl.md @@ -0,0 +1,29 @@ +--- +title: Add cluster and partner list view to website kubectl +--- + +# Run 09 + +Replace the `==` marked instructions in this file while you work on the task. + +## Context + +Read the `AGENTS.md` and `README.md` to get understanding of the project. + +## Task + +The `addons/kubernetes/website_kubectl/views/website_kubectl_cluster_templates.xml` defines a details view of the a cluster. +And `odoo/addons/website_partner/views/website_partner_templates.xml` defines the details view for partners. + +Please add a website list view that shows the `name` and `website_short_description`. Create one for cluster and one for partners. +Create these view definitions in the `website_kubectl` module. + +For the `/partners` and `/clusters` paths a new controller route is required. + +## Worklog + +==Agent: Fill this in as you work on the task== + +## Summary + +==Fill this once you completed the task==