-
Notifications
You must be signed in to change notification settings - Fork 379
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
Add Helm Chart manifests and GitHub Release Helm Chart for the snapshot-controller component #622
base: master
Are you sure you want to change the base?
Conversation
Welcome @kaskol10! |
Hi @kaskol10. Thanks for your PR. I'm waiting for a kubernetes-csi member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
/assign @msau42 |
Please include CRDs into chart as well. |
According to stevehipwell, is it really a good practice to install CRDs part of a helm chart ? |
@SamuelBagattin Helm isn't able to manage full lifecycle of CRDs, that's true, but it is quite capable of installing CRDs if there is none. Which solves initial deployment task. It's common practice on CRDs change to bump major chart version and provide instructions how to update CRDs, check out https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack. |
Great work, @kaskol10 , many thanks! |
Hi @kaskol10 🙌 |
/ok-to-test |
My concern with this is continued support of helm charts by the maintainers, I am not sure if that's something the team would have the bandwidth to do for every release. I'll defer to @xing-yang as to if we want to continue maintaining helm charts for the snapshot-controller in this repo. |
Thanks @kaskol10 for your contribution. As mentioned by @ggriffiths, that's exactly the concern we have. |
We too would really like an easy way to actually install this.. What other way do you recommend, instead of using a Helm Chart? |
The deployment files under deploy/kubernetes will work. We maintain those for every release with new flags/RBAC/etc. If there's enough interest, maybe you can create a separate repo to house and maintain the Helm installation. |
Maybe the solution is to generate the plain manifests from the helm chart (and add a pipeline to ensure. WDYT? NB: there is also helmify to create charts from plain manifests. |
/remove-lifecycle stale |
The Kubernetes project currently lacks enough contributors to adequately respond to all PRs. This bot triages PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
Keep |
/remove-lifecycle stale I would use a Helm chart if one were available. |
One maybe overlooked feature of using helm charts - is that they make it MUCH easier to automate monitoring for version updates, in a standardized way. We actually just have a script that looks through all our application helm charts (from upstream) - and talks to helm repo - to see if a new version exists.. Making it work pretty much like good old Linux repos - for k8s. |
Everyone who still comments here. Have you seen https://github.com/piraeusdatastore/helm-charts/tree/main/charts/snapshot-controller? It was linked here at #622 (comment). Have you tried it? Is it missing something? There is already existing fully functional helm chart available. |
We are following the piraus charts - but IMHO its important that charts are "maintained alongside the code it installs" - as any other "release package". Thats the learnings from Helms "once upon a time - central package repository" - which was discontinues because things bitrot, when they don't live together. |
I don't buy it. History of "central package repository" doesn't have anything to do with this case. Instead Helm enables anyone to package some manifests in a way they want to and distribute them. Project maintainers aren't obliged to provide a helm chart. This project isn't a unique case of not providing charts. Instead we see a raise of 3rd party repos that package multiple different projects (like https://github.com/bitnami/charts/tree/main/bitnami or https://github.com/deliveryhero/helm-charts/tree/master/stable), which is a good thing as this offloads burden from project maintainers and actually reduces chance of bitrot. |
No one said they were obliged. Its simply one of the best ways to consume k8s apps for the users, as it has features that enables easy monitoring for new versions f.ex. - instead of having to manually crawl through 50+ app repos (or how many you end up using), to check for updates regulary :) This is why f.ex. Ubuntu package a lot of applications into their repos - as Ubuntu users, then easily can follow updates and trust they're of decent quality and up2date. With k8s there aren't really distros in the same way, so you follow the apps you choose to use - and Helm really makes that easier, and also allows for applications to "simplify" install options, via the templating and values features of Helm. We're using it in our open source project https://github.com/Obmondo/k8id/tree/master/argocd-helm-charts/external-snapshotter - to f.ex. allow specifying multiple helm charts that needs to be installed to have a working external-snapshotter setup - trying to make everyones life easier, operating k8s :) |
@kaskol10: The following test failed, say
Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
It was not readily apparent to my HOW to implement this. For anyone that comes after; I just installed like this: module "eks_blueprints_addons" {
source = "aws-ia/eks-blueprints-addons/aws"
version = "~> 1.12.0" #ensure to update this to the latest/desired version
# Any addon from "add-ons from Amazon EKS" can be added to the below block
# https://docs.aws.amazon.com/eks/latest/userguide/eks-add-ons.html#workloads-add-ons-available-eks
eks_addons = {
aws-ebs-csi-driver = {
most_recent = true
service_account_role_arn = module.ebs_csi_driver_irsa.iam_role_arn
}
snapshot-controller = {
most_recent = true
}
}
...
} I hope this helps the next person 😄 |
The Kubernetes project currently lacks enough contributors to adequately respond to all PRs. This bot triages PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
/remove-lifecycle stale |
The Kubernetes project currently lacks enough contributors to adequately respond to all PRs. This bot triages PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
The Kubernetes project currently lacks enough active contributors to adequately respond to all PRs. This bot triages PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle rotten |
/remove-lifecycle rotten I'd still like to see this and would use it if it were available |
The Kubernetes project currently lacks enough contributors to adequately respond to all PRs. This bot triages PRs according to the following rules:
You can:
Please send feedback to sig-contributor-experience at kubernetes/community. /lifecycle stale |
/remove-lifecycle stale |
What type of PR is this?
/kind design
What this PR does / why we need it:
The changes introduced with this PR allow for better integration snapshot-controller and Helm. Besides, publish the Helm Chart in the GitHub Releases Pages using a GitHub Action.
Which issue(s) this PR fixes:
Fixes #551
Special notes for your reviewer:
A GitHub branch called
gh-pages
would be needed to store the published charts. It's a pre-requisite for chart-releaser-actionDoes this PR introduce a user-facing change?: