** Development Status**: This operator is currently under active development and is not production-ready yet. APIs and resource schemas may change. Use at your own risk in production environments.
The Arubacloud Resource Operator is a Kubernetes operator that enables declarative management of Aruba Cloud resources through Kubernetes Custom Resources. This operator allows you to provision and manage Aruba Cloud infrastructure using familiar Kubernetes tools and workflows.
Add the arubacloud Helm repository (if not already added):
helm repo add arubacloud https://arubacloud.github.io/helm-charts/
helm repo updateFor single-tenant deployments with direct OAuth credentials:
helm install arubacloud-operator arubacloud/arubacloud-resource-operator \
--namespace aruba-system \
--create-namespace \
--set config.auth.mode=single \
--set config.auth.single.clientId=<your-client-id> \
--set config.auth.single.clientSecret=<your-client-secret>For multi-tenant deployments using HashiCorp Vault:
helm install arubacloud-operator arubacloud/arubacloud-resource-operator \
--namespace aruba-system \
--create-namespace \
--set config.auth.mode=multi \
--set config.auth.multi.vault.address=<vault-address> \
--set config.auth.multi.vault.rolePath=<vault-role-path> \
--set config.auth.multi.vault.roleId=<vault-role-id> \
--set config.auth.multi.vault.roleSecret=<vault-role-secret> \
--set config.auth.multi.vault.kvMount=<vault-role-kvMount>For detailed configuration options, values, and advanced usage, please refer to the Helm chart documentation.
Check if the operator is running:
kubectl get pods -n aruba-systemCheck if CRDs are installed:
kubectl get crd | grep arubacloud.comTo uninstall the operator:
helm uninstall arubacloud-operator -n aruba-systemSample resource definitions can be found in the config/samples directory. These examples demonstrate how to create and manage Aruba Cloud resources through Kubernetes manifests.
To apply a sample:
kubectl apply -f config/samples/arubacloud.com_v1alpha1_cloudserver.yamlContributions are welcome! Please feel free to submit a Pull Request.
NOTE: Run make help for more information on all potential make targets.
More information can be found via the Kubebuilder Documentation
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.