-
Story
-
Resolution: Done
-
Major
-
None
-
None
Story (Required)
The goal of this story is to put in a place a complete, atomic package that manages all the permissions related resources that the operator needs to manage. The package should be complete with all the required functions and unit tests
Background (Required)
The permissions package will be responsible for acting as an rbac object factory and for providing functions to access the cluster and manage the lifecycle of all rbac objects touched by the operator.
To begin with, the permissions package is responsible for managing:
- roles
- rolebindings
- clusterroles
- clusterrolebindings
- serviceaccounts
see https://github.com/jaideepr97/argocd-operator-rewrite/tree/main/pkg/permissions for reference
Out of scope
any code changes about how permissions objects are reconciled in the operator
Approach (Required)
- Create a new permissions package under pkg
- populate individual files for each managed permissions resource
- Each resource in the package must define a ResourceRequest interface
- package must specify the following functions for each managed resource:
-
- create
- update
- delete
- get
- list
- request
- add unit tests to cover all newly added functions
Dependencies
none
Acceptance Criteria (Mandatory)
- All listed resources have been covered within the package
- All listed functions have been implemented for each resource
- Sufficient unit tests to cover all implemented functions
INVEST Checklist
Dependencies identified
Blockers noted and expected delivery timelines set
Design is implementable
Acceptance criteria agreed upon
Story estimated
Legend
Unknown
Verified
Unsatisfied
Done Checklist
- Code is completed, reviewed, documented and checked in
- Unit and integration test automation have been delivered and running cleanly in continuous integration/staging/canary environment
- Continuous Delivery pipeline(s) is able to proceed with new code included
- Customer facing documentation, API docs etc. are produced/updated, reviewed and published
- Acceptance criteria are met
- blocks
-
GITOPS-3123 Implement the app-controller package
-
- Closed
-
-
GITOPS-3124 Implement the server package
-
- Closed
-
-
GITOPS-3125 Implement the repo-server package
-
- Closed
-
-
GITOPS-3126 Implement the notifications-controller package
-
- Closed
-
-
GITOPS-3127 Implement the applicationset-controller package
-
- Closed
-
-
GITOPS-3128 Implement the redis-controller package
-
- Closed
-
-
GITOPS-3246 Implement the keycloak package
-
- Closed
-
-
GITOPS-3247 Implement the dex package
-
- Closed
-
-
GITOPS-3249 Implement the SSO package
-
- Closed
-