Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add proposal #6 - k8s best practices #32

Closed
wants to merge 1 commit into from

Conversation

mgoltzsche
Copy link

@mgoltzsche mgoltzsche commented Jun 26, 2020

Closes #30

Relates to #31

@jenkins-x-bot
Copy link

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
To complete the pull request process, please assign jstrachan
You can assign the PR to them by writing /assign @jstrachan in a comment when ready.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

TODO: To be refined:
* SourceRepository controller that accepts pipeline bot invitations (more of a security concern) - maybe not a good idea after all since e.g. github request for bot invitations could hang and therefore block the reconcile loop -> would need to spawn a pod to accept the invite
* Promotion controller that triggers a rollout and reflects its state in the corresponding CR's status so that clients (like jxui) can easily query it) - question remains how to make this work consistently with GitOps
* ...
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe that RoleController is currently being extracted out of JX and there is also work happening on an Environment/Preview Controller.

* Correspondingly avoid joining API resources - at least when listing them.
* Security: Don't mix security concerns. Think of how different security-related responsibilities can be separated before implementing new features. Model CRDs so that K8s' RBAC can be leveraged.

## 4. External interface(s) & user load
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Deane recommends to call them "public" interface and encourage users to use these only instead of relying on potentially more unstable internal k8s APIs.

@mgoltzsche mgoltzsche closed this Jul 15, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Get more out of Kubernetes' Operator Pattern
3 participants