2.2.0: A Valentine Full of Features

@technosophos technosophos released this Feb 14, 2017 · 31 commits to master since this release

πŸ’ This Valentine's day, the Kubernetes Helm team would like to show some love with the newly minted Helm 2.2.0 release. πŸ’

We've got a lot of reasons to love the community:

  • Taylor Thomas (Intel) joined the Helm core team. He has already made a profound impact on Helm's velocity.
  • The Kubernetes Charts team has grown the stable repository to over 50 charts. Thanks to your contributions, that number is growing all the time.
  • Helm graduated from the Kubernetes Incubator process, and is now a full-fledged Kubernetes project. It is an honor to be the first project to graduate. We think Kubernetes Charts may very well be the next graduate.
  • The community has astonished and impressed us with a record number of pull requests. Over 40 individuals contributed at least one PR to the 2.2.0 release.

And we'd like you to be part of our community:

Will You Be Mine? πŸ’Œ

Upgrading just got easier. With this release of Helm, you can easily upgrade Tiller with helm init --upgrade.

Grab a Helm binary and get started.

The Quickstart Guide will get you going from there. For upgrade instructions or detailed installation notes, check the install guide. You can also use a script to install on any system with bash.

We Love Tests 😻

The headline feature of Helm 2.2.0 is its ability to run tests on a newly deployed chart. Chart authors can now create a suite of tests to verify that their chart is behaving as expected. We're excited about this tool because it meets one of our core objects: Make stability and reliability a hallmark of Kubernetes charts.

This feature comes with a new helm test command. Check out the new docs to learn more about testing your charts.

Wooing Third Party Resources πŸ’Ÿ

The Third Party Resources (TPR) system in Kubernetes has gone through many changes. The Helm team loves the TPR system like a kitten loves her favorite toy.

Cat Snuggle
source

(We're tracking the analytics to see if kitten pictures cause people to read release notes.)

And so we are thrilled to announce that Helm 2.2 can now create and upgrade resource types declared as Third Party Resources.

Securing Chart Repositories with Sweet, Sweet TLS πŸ’“

In addition to simple Basic auth, the Helm client can now use strong client SSL/TLS certificates to authenticate to a chart repository.

This new feature extends the chart repository file structure to allow embedding SSL certificates.

Share the Love ❀️

We've included many more features in Helm.

  • Helm now has a --wait flag on install and upgrade to wait until your whole chart is running
  • helm list now has a --namespace flag to filter by namespace
  • The repositories.yaml file can now reference local paths, a big boon for CI/CD systems
  • Parent "umbrella" charts can now strategically enable and disable subcharts using the new conditions and flags system.
  • Helm can uninstall Tiller with helm reset
  • Charts are now validated before being sent to Kubernetes, which means faster error detection and fewer broken installs
  • And for chart developers:
    • Added .Release.Revision, .Release.IsUpgrade and .Release.IsInstall
    • Added .Capabilities for learning about the capabilities of the Kubernetes cluster
    • Added fromYAML function
    • Update to the latest Sprig release

And this is just the short list! In all, over 152 patches were merged into this release.

Sometimes Love Hurts πŸ’”

Not all of the news is rosy. Helm maintains a strong commitment to backward compatibility. All of our changes to protocols and formats are backward compatible from Helm 2.0 until Helm 3.0. No features, flags, or commands are removed or substantially modified (other than bug fixes). And all of this is true of Helm 2.2.0.

We also try very hard to not change publicly accessible Go library definitions inside of the pkg/ directory of our source code. However, due to a multitude of changes, we have made a significant revision to the APIs inside of pkg/kube (the part that contacts Kubernetes).

While the changes we made were much needed, we recognize that some of you may use these parts of Helm as libraries for your own application. We apologize for the inconvenience. And once again, we would like to reiterate that we do our best to avoid changes that would impact Go API users.

For a quick summary of our backward compatibility guidelines for releases between 2.0 and 3.0:

  • Protobuf and gRPC changes MUST be backward compatible.
  • Command line commands, flags, and arguments MUST be backward compatible
  • File formats (such as Chart.yaml, repositories.yaml, and requirements.yaml) MUST be backward compatible
  • Any chart that worked on a previous version of Helm MUST work on a new version of Helm (barring the cases where (a) Kubernetes itself changed, and (b) the chart worked because it exploited a bug)
  • Chart repository functionality MUST be backward compatible
  • Go libraries inside of pkg/ SHOULD remain backward compatible (though code inside of cmd/ may be changed from release to release without notice).

What's Next? 😍

  • Patch releases will begin with Helm 2.2.1, and will be released as needed. These will contain only bug fixes and security fixes.
  • Helm 2.3.0 is the next feature release. Our big goals for 2.3.0 include a plugin manager for Helm plugins and a substantial overhaul of Helm and Tiller's AuthN/AuthZ story.

Changelog πŸ’˜

As a show of appreciation for the women and men (and occasional bots) who contribute to Helm, our release notes now contain the Git name of the user who contributed the PR.

fix(style): add missing comments 44fbfc4 (Matt Butcher)
featt(): add support for test-failure hook 6a062e4 (Michelle Noorali)
fix(kube): prevent recreating pods without a selector 790b90b (Adam Reese)
feat(helm): add cleanup flag to test command 4a57b01 (Vaughn Dice)
fix test chart path change from rebase 4b6b847 (Qin Wang)
feat(helm): change incorrect list to dict in charts.md example for tags and conditions 511cbf5 (Justin Scott)
chore(docs/): document helm test feature e71b07f (Michelle Noorali)
fix error checking from os.stat 0153d27 (Qin Wang)
feat(helm): add local path support for deps in requirements.yaml 39a2d5e (Qin Wang)
feat(helm): add local path support for deps in requirements.yaml d72ff65 (Qin Wang)
fix(helm): add warnings for missing chart dependencies 98310a9 (Steve Wilkerson)
helm(feat): remove space from example condition list 8094acb (Justin Scott)
feat(helm): re-enable log warnings for tags and conditions 17c6ae6 (Justin Scott)
feat(helm): add docs section about tags and conditions f582144 (Justin Scott)
feat(helm): remove logging of tags/condition warnings to pass ci fe864ad (Justin Scott)
feat(helm): fixup if/ele,remove extra string casts, add comments 58c8aca (Justin Scott)
feat(helm): fix condition when no requirements.yaml exists during tag/condition processing 004c5bc (Justin Scott)
feat(helm): Check len of correct slice faae1f6 (Justin Scott)
feat(helm): add conditions and tags 8ef733c (Justin Scott)
docs(related): Add link to croc-hunter video a8c787d (Sean Knox)
feat(kube): support upgrading ThirdPartyResources 67fc1a2 (Adam Reese)
ref(kube): code style cleanup ae96919 (Adam Reese)
feat(kube): use jsonpatch to update ThirdPartyResources 0f461ba (Adam Reese)
feat(kube): support thirdpartyresources 4cdb2ac (Adam Reese)
Fixes #1898: Proposal: move downloader and resolver package to /pkg 17c9e22 (Gergo Huszty)
docs(related): add Drone Helm plugin b543190 (Matt Butcher)
fix(
): Regenerates protobuf files for protobuf 3.2 7bdd36b (Taylor Thomas)
feat(cmd/helm/status): add last test suite run to status output 140caa0 (Vaughn Dice)
fix(helm): fix broken unit test 257f120 (Matt Butcher)
feat(): add --namespace flag to 'helm list' 3a38092 (Larry Rensing)
chore(pkg/tiller): add logs on RunReleaseTesting 4896ea7 (Michelle Noorali)
docs(using_helm): fix outdated helm rollback example usage in doc f745c9c (Tao Zhou)
docs(install): add doc to use helm reset to delete tiller deployment d19b6cd (Tao Zhou)
feat(luca): version 1.0 released (Vic Iglesias)
ref(
): add namespace info to failing test msg 538e829 (Michelle Noorali)
(bugfix/cmd/helm/history): update history table MaxColWidth to match that of list command ff7d339 (Lachlan Evenson)
fix(helm): delete outdated deps 91da555 (Matt Butcher)
ref(hapi): remove never used proto field fd210df (Adam Reese)
move newTillerPortForwarder to pkg/helm/portforwarder 704bc47 (Matthew Fisher)
docs(install_faq): document the Docker media type bug 0b1a0ae (Matt Butcher)
ref(): change test hook to be test-success bf9ae52 (Michelle Noorali)
chore(pkg/releasetesting): add test_suite tests e95a057 (Michelle Noorali)
add PersistentVolumeClaim to the kind sorter list 3f46378 (Matthew Fisher)
feat(README): Adding roadmap location 6cd5520 (Matt Farina)
fix(helm): fix sort order on helm search f018364 (Matt Butcher)
fix(helm): fix 'helm dep up' to fetch by URL adc18e2 (Matt Butcher)
ref(pkg/): refactor helm test logic e132191 (Michelle Noorali)
feat(
): add kube client test 9bd1295 (Vaughn Dice)
feat(): stream helm test messages to client 58c05f8 (Michelle Noorali)
feat(
): add helm test command mvp d46d63a (Michelle Noorali)
feat(tiller): record a message for each lifecycle step 756cb97 (Matt Butcher)
feat(tiller): print tiller version on startup d97f44e (Adam Reese)
docs(CONTRIBUTING): switch to CNCF CLA 0303538 (Matt Butcher)
docs(chart_tips_and_tricks): explain resource-policy. c5d0dc4 (Matt Butcher)
Add reset command to uninstall Tiller 074d746 (Ferran Rodenas)
Add linux/ppc64le to build-cross target f59121f (Manjunath A Kumatagi)
Fix SIGSEGV fault 851ca79 (Manjunath A Kumatagi)
Fix typo 19579c4 (Tony Hsu)
Fix typo 74213a5 (Tony Hsu)
Fix typo 95ee0bc (Tony Hsu)
Fix typo 70692ec (Tony Hsu)
Fix typo 2ce2d3d (Tony Hsu)
Fix typo c1cb259 (Tony Hsu)
Fix typo 34a4850 (Tony Hsu)
docs(related): add related projects 9e6b135 (Matt Butcher)
docs(install): document new upgrade process 70f4f70 (Matt Butcher)
Fix typo 0dfc699 (Tony Hsu)
fix typo d2a8d94 (Tony Hsu)
add InstallReleaseFromChart and UpdateReleaseFromChart dad40fc (Matthew Fisher)
Fix typo 829e663 (Tony Hsu)
Fake tillerHost at version cmd tests cc0f460 (Ferran Rodenas)
fix(helm) add missing manifest header for helm init --dry-run --debug b6b1459 (z00358552)
Adds documentation for --wait and other new command line flags 5b11624 (Taylor Thomas)
fix doc typo a263cfb (Matthew Fisher)
feat(): Add --wait flag 7ef9bb6 (Taylor Thomas)
Add linux/arm64 to cross-compile targets. 0378b4a (rmehra)
ref(kube): misc code cleanup de64da2 (Adam Reese)
fix(Makefile): fix glob overriding packaged tar 385ba90 (Adam Reese)
fix(helm) change name length limit to 63 for helm create b0d4cac (z00358552)
Regenerate docs 5f981ad (Christoph Blecker)
Fix type in help text for list cmd 5b2cf39 (Christoph Blecker)
fix(kube): reap deleted resources during upgrade 9e37009 (Adam Reese)
ref(kube): add Result to abstract a collection of resources b22e6fc (Adam Reese)
Create a Service definition for using Tiller in-cluster d90a3a2 (Ferran Rodenas)
Linter validations for Chart icon property 088c2bd (Ferran Rodenas)
Allow specifying --set multiple times bd4fc39 (Ferran Rodenas)
removed Version from create tests as output schema and values aren't tested 4d5cf66 (Lachlan Evenson)
bugfix(tiller): replace + with - in Chart version to support Kubernetes constraint 2e0f949 (Lachlan Evenson)
Logging real name of the failing hook 0059d5a (JosΓ© Armesto)
feat(helm): add --reset-values flag to 'helm upgrade' c32b2dd (Matt Butcher)
fix(tiller): don't update purged releases 6600fcb (Adam Reese)
fix(tiller): add missing name to status response 0e7781c (Adam Reese)
feat(tiller): add {{.Capabilities}} object cb0a6c7 (Matt Butcher)
"spring" should be "sprig" ab03fad (Christopher Pauley)
use old naming f8a261f (Anton Galitsyn)
create repo.Getter interface 685e730 (Anton Galitsyn)
check the error that WriteFile returns 8a1d43e (Anton Galitsyn)
rename URLAreEqual func e3f39f3 (Anton Galitsyn)
clarifying _ files, adding syntax highlighting d91a4ff (Christopher Pauley)
making precedence explanation less ambiguous 329cd3a (Christopher Pauley)
fix(tests): fix testclient reactions that were not triggering 76b3d1e (Adam Reese)
fix(tiller): s/POD_NAMESPACE/TILLER_NAMESPACE/ b666b3d (Adam Reese)
Align output of helm status resources output 075a9d8 (Maciej Kwiek)
Improve helm status help text 0a9413b (Maciej Kwiek)
Add --upgrade option to init eeaacc4 (Morten Lied Johansen)
ref(
): remove dead code 4418b1a (Adam Reese)
fix(helm): prevent .helmignore rules from applying to '.' 1e3e430 (Matt Butcher)
docs: kubernetes_distros: complete note about socat on Container Linux edbc561 (Brandon Philips)
Installation guide link is wrong in install FAQ a091ca9 (William Martin Stewart)
fix rebase problems a82c19b (Anton Galitsyn)
Get http.Client from referenced repository 89ab755 (Anton Galitsyn)
Construct http.Client for repositories from config, add TLS support b0e7a43 (Anton Galitsyn)
Spelling errors and so on. 34d7585 (dongziming)
chore(): bump to v2.1.3 bd27acd (Matt Boersma)
Update OS X references to macOS d41d3b5 (Christoph Blecker)
Update docs for homebrew formula 11dc26a (Christoph Blecker)
ref(tiller): dry up client/server version checks b82d519 (Adam Reese)
docs(install_faq): document tiller panic for auth failure 6789b43 (Matt Butcher)
feat(tiller): validate objects against kube schema on dry-run d10e918 (Adam Reese)
ref(tiller): minor style refactor dbe1c97 (Matt Butcher)
fix(tests): fix broken tests for upgrade 4398255 (Adam Reese)
chore(tiller): update Sprig to 2.8.0 60db73d (Matt Butcher)
docs(helm): change trunc 24 in base charts 141a401 (Steve Wilkerson)
chore(
): bump to 2.1.2 152cf42 (Matt Boersma)
Add default binary 77b105a (Nicolas Lamirault)
docs(helm): change trunc 24 in base charts a6803d9 (Steve Wilkerson)
fix(upgrade):Check the raw vals during an upgrade properly ce79fa8 (Keerthan Reddy Mala (kmala))
feat(helm): standardize debug output for releases 1c3bada (Adam Reese)
fix(helm): fix rollback documentation a236727 (Matt Butcher)
clear instructions for gh-pages 82e0d00 (Brandon B. Jozsa)
Typo in helm quickstart guide. 0c8cff4 (Steve Wilkerson)
Split packages b71a93e (Nicolas Lamirault)
feat(helm): add release debugging for upgrade 934249a (Adam Reese)
docs(chart_template_guide): link to Go template docs 21d0d6b (Matt Butcher)
feat(): Adds support for timeout flag 774789c (Taylor Thomas)
chore(docs): add how to submit proposals e21777f (Michelle Noorali)
fix(linter): disable checking for empty values 06867b2 (Michelle Noorali)
feat(1480): add --version flag to package command af58b8e (Matt Butcher)
fix(
): Fixes protobuf name b18f7f7 (Taylor Thomas)
ref(helm): only pass required dependencies to subcommands 9aa467e (Adam Reese)
Update Makefile f80f468 (Nicolas Lamirault)
Add ARM target for binaries a6f82d8 (Nicolas Lamirault)
fix(chartutil): improve 'missing name' error 25f7498 (Euan Kemp)
Fix Typo 957fcaa (Eli Mallon)
s/backup up/back up/ 9c44658 (Yota Toyama)
Ignore .idea folder for anyone using Intellij's GO IDE. 4207c81 (Tamal Saha)
Play nicely with roles that don't allow creating namespaces d87cd95 (Marius Grigoriu)
test(cmd): add unit test for chart backed by basic auth d9346e2 (Matthew Fisher)
plugins.md: Spelling fix f94934b (Greg Taylor)
fix(helm): fix persistent flags not being parsed 5961cc4 (Adam Reese)
fix(helm): add tiller-host to plugin environment 8a2516f (Adam Reese)
feat(helm): add short version output c513342 (Adam Reese)
Renaming --recreate to --recreate-pods c2d4580 (Nikolay Mahotkin)
Rename '--restart' option to '--recreate' 24b17f8 (Nikolay Mahotkin)
Rename 'restart' to 'recreate' 1eaec04 (Nikolay Mahotkin)
Update checksum/config annotation a5ba5fa (Long Nguyen)
fix(tller): allow deep merge of global maps 6faf467 (Matt Butcher)
feat(tiller): add .Release.IsInstall b2d762a (Matt Butcher)
feat(*): allow tiller to be installed in an alternate namespace 84928e2 (Adam Reese)
Fixing tests 44d9274 (Nikolay Mahotkin)
feat(tiller): Add .Release.Revision and .IsUpgrade de7c5e5 (Matt Butcher)
feat(tiller): add fromYaml to template functions d8540d7 (Matt Butcher)
fix(helm): suprress info message for 'helm inspect' fc9cb12 (Matt Butcher)
Reformatting changes ec0d104 (Nikolay Mahotkin)
Introducing flag for restarting pods during release upgrade/rollback fdac5e8 (Nikolay Mahotkin)
Adding pod restarting while upgrading release 22b206c (Nikolay Mahotkin)
feat(helm) add command to generate bash autocompletions. 710ff78 (rodcloutier)
Had a word with @technosophos and it seems we no longer need hg check as all other repos can be cloned via git f630d0e (Miyurz)
docs(install_faq): add entries about SSL and proxy e757410 (Matt Butcher)
If not mercurial, clone with git. dont exit if no mercurial is there 2f9c3c2 (Miyurz)
feat(readme): Display the Go Report Card 33403ff (Matt Farina)
Reformatting changes ea6328c (Nikolay Mahotkin)
Introducing flag for restarting pods during release upgrade/rollback 045b158 (Nikolay Mahotkin)
fix(helm): added support for compressed charts containing \ in file paths 3792076 (Rodrigue Cloutier)
Adding pod restarting while upgrading release b5f7d90 (Nikolay Mahotkin)

And if this is what the February 14th release notes are like, just wait for an April 1 release!

Downloads

2.1.3: Better debug output, Sprig 2.8, Deis Workflow fix

@technosophos technosophos released this Dec 22, 2016 · 343 commits to master since this release

We know we said 2.1.2 would be the last release of the year, but we just couldn't help ourselves. We fixed a few more bugs and bumped up the version of Sprig, and decided to cut one more release.

The Helm Core Team would like to wish you all a happy holidays. Our team is made up of many people from several organizations, but for the holiday season we are going to collectively take a holiday to spend time with our friends, loved ones, and other pet GitHub projects. πŸŽ‰

We will resume our regular meetings the first week of January. Slack, as always, is open for ongoing conversation, though core contributors will be offline from December 23 to January 3. We look forward in seeing you all again in 2017!

Notable Changes Since 2.1.2

  • Fix for Deis Workflow installation (we accidentally changed an assumption about the contents of a default values. It's fixed now.).
  • Update Sprig to 2.8.0
  • helm install and helm upgrade both have improvements to their --debug output to help you figure out the real state of your release.
  • A bug in namespace detection has been fixed

Version 2.1.3 is compatible with other 2.1 releases.

Installing and Updating

Helm binaries:

The Quickstart Guide will get you going from there. For upgrade instructions or detailed installation notes, check the install guide. You can also use a script to install on any system with bash.

What Next?

This is the last release for the year. No really... unless we decide to do another one.

  • 2.1.4 is the next bug fix release
  • 2.2.0 is the next feature release, and it is in development.

All Changes Since 2.1.0

chore(tiller): update Sprig to 2.8.0 324bdc8
Play nicely with roles that don't allow creating namespaces 1cbadb4
docs(helm): change trunc 24 in base charts aa8d178
docs(helm): change trunc 24 in base charts 4db2227
fix(upgrade):Check the raw vals during an upgrade properly 9fea982

Downloads

Helm 2.1.2: Deep globals, better debug output

@technosophos technosophos released this Dec 21, 2016 · 343 commits to master since this release

The Helm 2.1.2 release is a patch release. A few small non-critical changes have been made.

Notable Changes Since 2.1.0

  • Upgrades are now easier to preview with helm upgrade --dry-run --debug
  • The output of helm install --dry-run --debug has been improved, too.
  • Globals can now have nested sections. Previously, globals were flat name/value pairs. This release allows deeply nested globals.
global:
  foo:
    bar: baz

Version 2.1.2 is compatible with other 2.1 releases.

Installing and Updating

Helm binaries:

The Quickstart Guide will get you going from there. For upgrade instructions or detailed installation notes, check the install guide. You can also use a script to install on any system with bash.

What Next?

This is the last release for the year.

  • If necessary, a 2.1.3 bug fix release will be generated.
  • 2.2.0 is the next feature release, and it is in development.

All Changes Since 2.1.0

feat(helm): standardize debug output for releases 6ca0098
feat(helm): add release debugging for upgrade 4e629bc
fix(tller): allow deep merge of global maps cc3b12f
fix(linter): disable checking for empty values 440c67f
fix(helm): suprress info message for 'helm inspect' 2d30419

Downloads

Helm 2.1.1: SKIP and use 2.1.2

@technosophos technosophos released this Dec 20, 2016 · 343 commits to master since this release

Use 2.1.2 Instead. This release will function, but it was two commits short of what we intended to release.

The Helm 2.1.1 release is a bug fix release.

Notable Changes Since 2.1.0

  • Globals can now have nested sections. Previously, globals were flat name/value pairs. This release allows deeply nested globals.

Version 2.1.1 is compatible with other 2.1 releases.

Installing and Updating

Helm binaries:

The Quickstart Guide will get you going from there. For upgrade instructions or detailed installation notes, check the install guide. You can also use a script to install on any system with bash.

What Next?

This is the last release for the year.

  • If necessary, a 2.1.2 bug fix release will be generated.
  • 2.2.0 is the next feature release, and it is in development.

All Changes Since 2.1.0

fix(tiller): allow deep merge of global maps cc3b12f
fix(linter): disable checking for empty values 440c67f
fix(helm): suppress info message for 'helm inspect' 2d30419

Downloads

Helm 2.1.0: Kube 1.5, Plugins, and Template Functions!

@technosophos technosophos released this Dec 13, 2016 · 343 commits to master since this release

The Helm 2.1.0 is a feature release. We are excited to include Kubernetes 1.5 support, as well as several new and notable features.

As we close out the 2016 year, we want to again take the opportunity to thank the nearly 100 people who have contributed code to Helm and to the Charts repo. We hope that with your collaboration, we can continue to craft a tool that is broadly useful to the Kubernetes community.

Notable Changes Since 2.0.2

  • Kubernetes 1.5 support is included. Kubernetes 1.4 is still supported.
  • Helm charts can now annotate resources that should not be deleted on helm delete.
  • Extend the Helm client behavior with Helm Plugins. You don't even have to know Go. Write them in whatever language you like.
  • Generate ConfigMaps and Secrets more easily with the improved {{ .Files }} object.
  • Use SemVer 2 ranges in requirements.yaml
  • And finally, get better error messages when chart errors occur.

Version 2.1.0 is not ensured to be compatible with 2.0.2. We strongly recommend upgrading both client and server components.

Installing and Updating

Helm binaries:

The Quickstart Guide will get you going from there. For upgrade instructions or detailed installation notes, check the install guide. You can also use a script to install on any system with bash.

What Next?

  • 2.1.1 will be our next bugfix release. Bugfix releases will be made available as we find and fix issues.
  • 2.2.0 will be our next feature release. We are shooting for a February 2017 release.

The 2.0.x line will not be updated to the Kubernetes 1.5 library. Those wishing to stay on the Kubernetes 1.4 codebase may continue running Helm 2.0.2. That said, we have tested Helm 2.1.0 with Kubernetes 1.4 and have found no issues.

All Changes Since 2.0.2

fix(glide): add assert library 575ed9a
fix(deps): Adding missing test dependencies 4f09658
fix(semver): Ranges can fail with some pre-release numbering 8264d8b
fix(): add support for "DELETING" status 936028f
feat(helm): add newline to fetch --verify output 4dd77e7
feat(
): bump kubernetes to 1.5.0 c9783de
ref(kube): simplify encoding for creating patches 525df8f
test(kube): add test for upgrade fb9ef50
feat(): bump kubernetes to 1.5.0-beta.3 74361b1
ref(kube): use a more specific interface for discovery client 7413320
ref(kube): isolate ensureNamespace and add tests cac9f9c
ref(kube): remove unused fields on client bceea66
fix(
): import grouping 84ae126
ref(tiller): refactor clientset out of environment 7f44c11
feat(): migrate to kubernetes 1.5 ea3be9e
Set Helm deployment to pull IfNotPresent 989e59f
feat(ci): add travis configuration bbe55f4
Include lines functions 1df13df
Add Lines method, remove path utils (Sprig pr) 6760aa1
chore(
): bump go1.7.4 ee54547
update download links to v2.0.2 52f64f4
Fix erroneous import 5d58b77
Document ToYaml function 0474bcb
Add documentation for imported golang.org/pkg/path funcs ec964ff
Add AsSecrets, AsConfig methods for Files object. Move ToYaml to chartutil 9771973
feat(helm): add support for multiple values files 1a1d84c
fix(): correct file permissions on source files 0c6b6d1
feat(tiller): add support for resource-policy keep e3480c7
Fix Go style issues. 8ca1391
fix(tiller): increase the max message size for grpc 1f01bf5
fix(
): fixed tests for Windows f3b205c
fix(helm): add trimSuffix to helper functions c38fb12
fix(helm): give different error if key is not private 58dcef8
fix(helm): fix broken --values flag cba094f
fix(tiller): fix spurious "no release found" errors. a5d96c2
Increase column width when listing releases 7cec48c
feat(tiller): update sprig to 2.7.0 d39c26c
fix(helm): fix prompt error on Windows build f9b3795
fi(helm): add more tests for plugins a5d818d
fix(hel): fix plugin format on tests a9f3de8
fix(ci): do not push canary image on release 052cfe1
Improve formatting of godoc ec020a9
Improve language of glob explanation c311b08
Correct docs heading location d07e5cd
feat(helm): Add Files.Glob method to permit file organization 2de1728
fix(helm): write yaml with non-exec permission e8eed3c
chore(): bump go1.7.3 aa47320
fix(
): misc linter issues 803475c
fix(helm): add missing line ending on list output 6050a4b
fix(helm): handle errors when plugin command is not found dcc2bc5
Remove trailing slash when comparing dependency url with repo url 4bc0f81
Remove trailing slash (if any) from repo url c340c04
feat(helm): add 'helm fetch --prov' to fetch prov info 18248e5
fix(helm): add no-hooks to upgrade ba79100
fix(helm): improve URL comparison logic a59604f
fix(Makefile): build windows amd64 binaries 6b25f85
fix(helm): fix doc string for ErrNotList 2c32689
fix(helm): pass the no-hooks flag during upgrade 5f3d255
feat(helm): add command to generate documentation aca9f86
fix(tiller): validate names before performing operations 02a1cf3
fix(helm): fix windows support with port forward connection in setupConnection 702b6fb
feat(helm): add plugin system backend fad755e
fix(semver): range handling includes prerelease when it should not 51ecada
fix(helm): improve --set parser 6a1aab7
chore(*): remove glide hacks that are no longer required 98ff1b8
feat(helm): support 'helm create --pack=mypack' 784a339
fix(helm): don't pass nil-opt to ReleaseContent bfd6487
feat(kube): add schema validation 2ae8821
Add docs for rolling deployments on config change 335b380
Bump sprig, adds sha256sum template function dce6b64
Remove double explanation of why MariaDB is in the list 8ea2d1b
fix(requirements): accept semver constraints for the versions in the requirements.yaml 6c6530c

Downloads

Fixes for upgrade, rollback, and Sprig functions

@technosophos technosophos released this Dec 6, 2016 · 469 commits to master since this release

The Helm 2.0.2 release is a bug fix release. No new features have been added.

Notable Changes Since 2.0.1

  • A substantial bug with helm upgrade -f has been fixed
  • An updated Sprig library (2.7.0) has been included because it contains a substantial bug fix for quote
  • helm upgrade and helm rollback can both deal with failed releases now
  • gRPC's max message size is now 10M instead of 4M (which helps with large charts)

Version 2.0.2 is compatible with other version 2.0.x releases (client and server versions can be intermixed).

Installing and Updating

Helm binaries:

The Quickstart Guide will get you going from there. For upgrade instructions or detailed installation notes, check the install guide. You can also use a script to install on any system with bash.

What Next?

  • A 2.0.3 milestone exists, and we'll use that to capture any critical issues that come up before 2.1.0
  • The 2.1.0 milestone is getting closer, and we may release early for Kubernetes 1.5 compatibility

All Changes Since 2.0.1

fix(tiller): fix spurious "no release found" errors. 9bcfa1f
fix(tiller): increase the max message size for grpc 98e0b97
fix(helm): give different error if key is not private 3cb2fd7
fix(helm): add trimSuffix to helper functions d8133cf
fix(helm): fix broken --values flag 70256d8
feat(tiller): update sprig to 2.7.0 8f2567e
fix(ci): do not push canary image on release 7d79406

Downloads

Maintenance Release (Upgrade recommended)

@technosophos technosophos released this Dec 1, 2016 · 469 commits to master since this release

The Helm 2.0.1 release is a bug fix release. No new features have been added.

Notable Changes Since 2.0.0

  • Thanks to community contributions, we now have Windows builds of helm.
  • An important bug in helm delete has been fixed. For this reason, we recommend updating.
  • The parser for --set has been fixed, and now handles backslash escaping of characters like . and =.

Version 2.0.1 is compatible with version 2.0.0 (client and server versions can be intermixed).

Installing and Updating

Helm binaries:

The Quickstart Guide will get you going from there. For upgrade instructions or detailed installation notes, check the install guide. You can also use a script to install on any system with bash.

What Next?

  • A 2.0.2 release is planned, and this release will contain only bug fixes.
  • New features are being added for a 2.1.0 release. Canary images are built from this branch, and are considered unstable

All Changes Since 2.0.0

fix(helm): add no-hooks to upgrade 352fea9
fix(helm): pass the no-hooks flag during upgrade 189bc43
fix(helm): improve URL comparison logic fa462a6
fix(Makefile): build windows amd64 binaries 8fd3f09
fix(tiller): validate names before performing operations a435604
fix(helm): improve --set parser 1249ffd
fix(helm): fix windows support with port forward connection in setupConnection 7853f52
fix(helm): don't pass nil-opt to ReleaseContent a29b225

Downloads

Helm 2.0.0 Final

@technosophos technosophos released this Nov 16, 2016 · 469 commits to master since this release

We first introduced Helm at KubeCon 2015. After a full year of development, we’re ecstatic to be releasing Helm 2.0.0. Helm is a the package manager for Kubernetes, designed to help teams collaborate on packaging, releasing, and managing applications in Kubernetes. We are excited to announce that this version of Helm has reached feature completion, and is stable for production use. πŸŽ†

In one year, Helm has over 2,200 commits from almost 70 contributors. Numbers like that illustrate why we ❀️ the Kubernetes community. Thank you all for filing issues, chatting in Slack, submitting PRs, and contributing to the welcoming atmosphere of this project.

As we launch this release, the Helm chart repository has over two dozen charts, and we're eager to expand that catalog. Contributing charts is one of the many ways you can join in. Here are some other ways:

Notable Changes Since 2.0.0-RC.2

Since RC.2, only minor changes have been made. Of those, a few are notable:

  • The limit on release name length has gone from 14 characters to 53 characters. For Kubernetes 1.3, users may want to manually set release names to avoid auto-generated names that are too long.
  • Release upgrades now correctly remove fields deleted on manifests.
  • Log entries for Tiller now show the source file from which the log message was generated.
  • With helm install --dry-run --debug, YAML parse errors will now display the YAML data.

Installing and Updating

Helm binaries:

The Quickstart Guide will get you going from there. For detailed instructions, check the install guide. You can also use a script to install on any system with bash.

What Next?

The 2.0.0 will be followed by a series of patch releases (2.0.x). We are also beginning on the next feature release (2.1.0). In GitHub, this is represented by the branching of the repository:

---v2.0.0 --- (master) --- v2.1.x
        \
         \--- (v2.0.x) --- v2.0.1
  • The 2.0.x branch will contain patches to the 2.0.0 release. The next release on that branch will be 2.0.1. No new features will be introduced on the 2.0.x branch, and the API will remain unchanged.
  • The master branch will house continued feature development. The next release on that branch will be 2.1.0. New features will be added, but no features will be removed.

All Changes Since 2.0.0-RC.2

fix(tiller): allow release name to be up to 53 chars 9effe7a
fix(kube): fix incomplete patches generated on update df12386
docs(yaml_techniques): add YAML techniques document 3fb2feb
use openssl instead of shasum 1f17788
fix(helm): respect dryRun opt in DeleteRelease 8a13be2
feat(tiller): add source file to log entries 8740d3e
feat(gometalinter): Move to versioned releases d2fa039
fix(tls): download helm and charts over https da73150
fix(tiller): return yaml parsing errors e2ab407
fix(tiller): show failed YAML 6eabe28
feat(charts): Move bucket to domain from path 7a79661
fix(helm): helm create will not overwrite existing files 0a163a2
fix(helm): replace repo entry instead of duplicating c616bb5
docs(tiller): add docblocks to public methods 8f9b9db
docs(install_faq): add more info on socat on CoreOS 13404eb
fix(*): fix new linter errors d59f66f
fix(scripts): increase deadline for linter cf965e2
docs(install): fix deployment name in tiller delete command 9c74dae
fix(1516): use correct value reference in boilerplate NOTES.txt b3d45ae
docs(chart_template_guide): fix spacing 8857d12

Downloads

Better auth, better docs, better errors

@technosophos technosophos released this Nov 4, 2016 · 509 commits to master since this release

Helm 2.0.0-rc.2 is the second release candidate. As soon as we feel that the code is solid, we will release the final v2.0.0 version.

Interested in getting involved? Here are the easiest ways?

Until 2.0.0...

From here through the 2.0.0 release:

  • All APIs are frozen, including Go APIs, protobuf files, and the template language
  • All CLI nouns, verbs, and flags are frozen
  • No features will be added

Documentation may still be changed, and bugs may be resolved. Internal refactoring may be done so long as it does not change the public APIs.

Notable Changes

  • Fixed authentication when running in-cluster helm
  • Improved error handling for helm delete
  • Added a new "Chart Template Developer's Guide" to docs

Installing and Updating

Helm binaries:

The Quickstart Guide will get you going from there. For detailed instructions, check the install guide. You can also use a script to install on any system with bash.

All Changes

docs(chart_tempalte_primer): add template primer d5346b1
fix(tiller): improve deletion failure handling 3830736
ref(ci): cleanup ci deploy 7f4fd4e
fix(kube): add default client config to the loading rules 1920761
docs(code-of-conduct): redirect to official CNCF CoC 993b9a6

Downloads

Almost There!

@technosophos technosophos released this Nov 2, 2016 · 520 commits to master since this release

Helm v2.0.0-rc.1 is the first release candidate for the Helm 2.0.0 release. The RC phase is simply our last effort to ensure that Helm is operating as intended. As soon as we feel that the code is solid, we will release the final v2.0.0 version.

As usual, the Helm community has done a stellar job contributing issues, documentation, patches, and support. πŸ‘ Feel free to join in! We're a growing community and value new contributions.

Until 2.0.0...

From here through the 2.0.0 release:

  • All APIs are frozen, including Go APIs, protobuf files, and the template language
  • All CLI nouns, verbs, and flags are frozen
  • No features will be added

Documentation may still be changed, and bugs may be resolved. Internal refactoring may be done so long as it does not change the public APIs.

Notable Changes

  • Kubernetes 3rd Party API objects are now enabled (had been disabled for testing)
  • Kubernetes default configuration is initialized on startup (for Kubeadm)
  • Password-locked GPG keys are now supported via a password prompt
  • helm rollback now works across a helm install --replace
  • Many bugs were fixed

Installing and Updating

Helm binaries:

The Quickstart Guide will get you going from there. For detailed instructions, check the install guide. You can also use a script to install on any system with bash.

All Changes

feat Separate tiller into pkg and cmd so we can use tiller as a library. c0850ef
fix: Dont use privileged port in port-forward of default chart 4179282
Fix labels in NOTES.txt 5af08fa
Use chart name for container name 8527f2f
Use internal port for health check 156d706
docs(install_faq): document dnsmasq fix for kubeadm 1498461
fix(linter): remove spurious namespace error 58164e0
fix(1488): suppress gRPC logs and errors 32354be
ref(kube): add info match helper functions ab12c46
fix(pkg/chartutil): add error if chart yaml not in directory 7a054e0
ref(kube): add newBuilder function to dry up builder calls afb24d0
docs(install): add frequently asked questions d92e030
docs(charts_tips_and_tricks): SAP and Deis examples 91ff73b
fix(helm): fix tests if tmp directory is on another block device 057e4ef
fix(tiller): allow 3rd party APIs f27791c
docs(kubernetes_distros): add notes on kube distros e450754
fix(helm): add kubernetes defaults to context d2648ec
docs(chart_repository): update the repo docs 67f894b
fix(helm): fail when helm deps are not fetched 5dfbf7e
docs(install): document installer script 1e21363
fix(helm): read passphrase from prompt 9ae97c3
Remove *** from default notes 665615f
Simplify final logic block in create 2b2e1d5
feat(998): append to history on install --replace 5262e1e
docs(provenance): explain using Keybase.io 8530a8d
Fix formatting 06d9ccd
Add tests for new files in create cd34492
Add resources and probes 8d86765
Add deployment, service and NOTES to create 4120e67
chore(README): update install section for Beta.2 c324e1a
docs(
) fix typos in docs eba74be

Downloads