To make the review of your request easier, please use the following template to provide all the required details and also include any other information that may be relevant.
- Snap name:
upgrade-cdk - Description: upgrade-cdk automates the CDK (Charmed Distribution of Kubernetes) upgrade workflow using the Jubilant library.
- snapcraft: https://github.com/canonical/upgrade-cdk/blob/main/snap/snapcraft.yaml
- upstream: https://github.com/canonical/upgrade-cdk (Private to Canonical)
- upstream-relation: I am the upstream author and maintainer
- Requested interfaces:
personal-files(two plugs) - Justification for interface
juju-data:- The snap wraps the
jujuCLI (viajuju-bincontent interface) to automate Kubernetes cluster upgrades - Juju must read controller credentials and CA certs from
~/.local/share/jujuto connect to controllers - Write access is needed because juju creates advisory cookie lock files in
~/.local/share/juju/cookies/on every API call
- The snap wraps the
- Justification for interface
kube-config:- Read-only access to
~/.kubefor the Kubernetes Python client to query node/pod health during upgrades - This is the standard kubeconfig location;
.kubeis a hidden directory excluded from thehomeinterface
- Read-only access to
- Access is minimal:
kube-configis read-only;juju-datawrite access is scoped to exactly~/.local/share/juju(not broader home access)