Giter Club home page Giter Club logo

charts-classic's Introduction

Helm

Build Status Go Report Card GoDoc CII Best Practices

Helm is a tool for managing Charts. Charts are packages of pre-configured Kubernetes resources.

Use Helm to:

  • Find and use popular software packaged as Helm Charts to run in Kubernetes
  • Share your own applications as Helm Charts
  • Create reproducible builds of your Kubernetes applications
  • Intelligently manage your Kubernetes manifest files
  • Manage releases of Helm packages

Helm in a Handbasket

Helm is a tool that streamlines installing and managing Kubernetes applications. Think of it like apt/yum/homebrew for Kubernetes.

  • Helm renders your templates and communicates with the Kubernetes API
  • Helm runs on your laptop, CI/CD, or wherever you want it to run.
  • Charts are Helm packages that contain at least two things:
    • A description of the package (Chart.yaml)
    • One or more templates, which contain Kubernetes manifest files
  • Charts can be stored on disk, or fetched from remote chart repositories (like Debian or RedHat packages)

Install

Binary downloads of the Helm client can be found on the Releases page.

Unpack the helm binary and add it to your PATH and you are good to go!

If you want to use a package manager:

  • Homebrew users can use brew install helm.
  • Chocolatey users can use choco install kubernetes-helm.
  • Scoop users can use scoop install helm.
  • Snapcraft users can use snap install helm --classic

To rapidly get Helm up and running, start with the Quick Start Guide.

See the installation guide for more options, including installing pre-releases.

Docs

Get started with the Quick Start guide or plunge into the complete documentation

Roadmap

The Helm roadmap uses GitHub milestones to track the progress of the project.

Community, discussion, contribution, and support

You can reach the Helm community and developers via the following channels:

Contribution

If you're interested in contributing, please refer to the Contributing Guide before submitting a pull request.

Code of conduct

Participation in the Helm community is governed by the Code of Conduct.

charts-classic's People

Contributors

arschles avatar benbarclay avatar elsonrodriguez avatar krancour avatar mboersma avatar paultiplady avatar radamanthus avatar rimusz avatar slack avatar technosophos avatar tmc avatar wombat avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

charts-classic's Issues

make a subfolder for the charts

Shall we make e.g. library folder and put charts there, as soon we have many charts, this repo will be come unreadable/messy

Add e2e chart testing logic

Most of the e2e test logic already exists in the helm repo, but we should keep it in the charts repo so that the tests can react to changes within charts.

repo needs to be renamed

googling for helm charts this repo comes as a second option from the top.
Craig Box from google asked to rename this repo.

Add curlpod

In the Kubernetes documentation they use the following pod definition for being able to manual test services within the cluster with curl/nslookup/etc:

apiVersion: v1
kind: Pod
metadata:
  name: curlpod
spec:
  containers:
  - image: radial/busyboxplus:curl
    command:
      - sleep
      - "3600"
    imagePullPolicy: IfNotPresent
    name: curlcontainer
  restartPolicy: Always

Then you execute:

kubectl exec curlpod -- nslookup nginxsvc

It would be nifty to have this available as a helm chart (would have helped @bacongobbler with testing #25)

MOVE REPO: change repo to `github.com/helm/charts`

We are going to move this and helm to their own org to open up some possibilities for the future of Helm.

We will likely re-se deis/charts to host Deis' own charts, while helm/charts will house generic charts like those we currently have here.

Wanted: charts that show configmap usage

These generally need to be kubectl apply/create'd before the RC manifests. I wasn't sure if helm even supports configmaps yet, but would love to see some examples.

Break apart selenium chart

Right now the selenium chart installs the hub as well as the chrome + firefox selenium nodes. Ideally if you're using selenium you'd want to control these or configure these separately, right? It makes sense to me to have a "selenium-hub" chart as well as a "selenium-node" chart. Thoughts @elsonrodriguez?

Add resilience to kubectl logs -f on test pod

We fairly consistently see a situation where a kubectl logs -f [deis-tests] --namespace=deis exits (like it got a connection reset or got an EOF) on ci e2e runs. This makes the test logic think that the tests are done running and therefore kick off the "wait for pod exit code" rigamarole. We should figure out a way to ensure that tests have either finished successfully, still are running, or have errored by adding in a check for pod status (other than container exit code) which can then rekick off a tailing of the test logs.

Cassandra chart install fails with "spec.selector: required value" error

With helm version helm version v0.1.0+c600ce8, I got the following error installing Cassandra:

pentagon:Applications paul$ helm search cassandra
        cassandra (cassandra 0.2.0) - The Apache Cassandra Project.
pentagon:Applications paul$ helm info cassandra
Name: cassandra
Home: http://cassandra.apache.org/
Version: 0.2.0
Description: The Apache Cassandra Project.
Details: This package deploys Cassandra to kubernetes.

pentagon:Applications paul$ helm install cassandra
---> No chart named "cassandra" in your workspace. Fetching now.
---> Running `kubectl create -f` ...
service "cassandra" created
The ReplicationController "cassandra" is invalid.
spec.selector: required value
[ERROR] Failed to upload manifests: exit status 1

Define minimum viable chart requirements

There are useful charts... and there are not-so-useful charts. I would like to start the conversation about what makes an awesome chart and create a standard of quality within the deis/charts repo.

One thing that has been discussed thus far:

  • all charts need to have service, replication controller, and pod definitions in the chart... unless it doesn't make sense to do so. Deploying a Jenkins master into a kubernetes cluster isn't so useful unless it has all three (rc, pod, service).

Attemping to regenerate manifests

I have both 2.2.0 and 2.3.0 charts and am attempting to generate the manifests via:

helmc generate -x -f manifests workflow-v2.3.0

and this results in the following:

[ERROR] Failed to complete generation: lstat /Users/<username>/.helmc/workspace/charts/manifests: no such file or directory

Under the .helmc directory, I have the following dir structure:

~/.helmc/workspace/charts/workflow-v2.2.0
~/.helmc/workspace/charts/workflow-v2.3.0

I'm guessing the error above only case-d in for a single version?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.