helm: rollback of a deleted release fails in helm v2.8.2

Problem: In version v2.8.2, when a release is deleted (not purged) can’t be rolled back and gives the following error:

Error: "release-name" has no deployed releases

Expected Behaviour: To successfully roll back the release. This works fine on v2.8.1

Environment:

$ helm version
Client: &version.Version{SemVer:"v2.8.2", GitCommit:"a80231648a1473929271764b920a8e346f6de844", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.8.2", GitCommit:"a80231648a1473929271764b920a8e346f6de844", GitTreeState:"clean"}

$ kubectl version 
Client Version: version.Info{Major:"1", Minor:"7", GitVersion:"v1.7.6", GitCommit:"4bc5e7f9a6c25dc4c03d4d656f2cefd21540e28c", GitTreeState:"clean", BuildDate:"2017-09-14T06:55:55Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"8+", GitVersion:"v1.8.8-gke.0", GitCommit:"6e5b33a290a99c067003632e0fd6be0ead48b233", GitTreeState:"clean", BuildDate:"2018-02-16T18:26:58Z", GoVersion:"go1.8.3b4", Compiler:"gc", Platform:"linux/amd64"}

Reproduce:

helm install stable/jenkins --set Master.ServiceType=NodePort
...
helm list
NAME               	REVISION	UPDATED                 	STATUS  	CHART         	NAMESPACE
lolling-labradoodle	1       	Tue Mar 20 17:30:44 2018	DEPLOYED	jenkins-0.14.2	default  

helm delete lolling-labradoodle
release "lolling-labradoodle" deleted

helm list --deleted
NAME               	REVISION	UPDATED                 	STATUS 	CHART         	NAMESPACE
lolling-labradoodle	1       	Tue Mar 20 17:30:44 2018	DELETED	jenkins-0.14.2	default  

helm history lolling-labradoodle
REVISION	UPDATED                 	STATUS 	CHART         	DESCRIPTION      
1       	Tue Mar 20 17:30:44 2018	DELETED	jenkins-0.14.2	Deletion complete

helm rollback lolling-labradoodle 1
Error: "lolling-labradoodle" has no deployed releases

Tiller Logs:

[tiller] 2018/03/20 16:31:14 uninstall: Deleting lolling-labradoodle
[tiller] 2018/03/20 16:31:14 executing 1 pre-delete hooks for lolling-labradoodle
[tiller] 2018/03/20 16:31:14 hooks complete for pre-delete lolling-labradoodle
[storage] 2018/03/20 16:31:14 updating release "lolling-labradoodle.v1"
[kube] 2018/03/20 16:31:14 Starting delete for "lolling-labradoodle-jenkins-agent" Service
[kube] 2018/03/20 16:31:14 Starting delete for "lolling-labradoodle-jenkins" Service
[kube] 2018/03/20 16:31:14 Starting delete for "lolling-labradoodle-jenkins" Deployment
[kube] 2018/03/20 16:31:14 Using reaper for deleting "lolling-labradoodle-jenkins"
[kube] 2018/03/20 16:31:17 Starting delete for "lolling-labradoodle-jenkins" PersistentVolumeClaim
[kube] 2018/03/20 16:31:17 Starting delete for "lolling-labradoodle-jenkins" ConfigMap
[kube] 2018/03/20 16:31:17 Starting delete for "lolling-labradoodle-jenkins-tests" ConfigMap
[kube] 2018/03/20 16:31:17 Starting delete for "lolling-labradoodle-jenkins" Secret
[tiller] 2018/03/20 16:31:17 executing 1 post-delete hooks for lolling-labradoodle
[tiller] 2018/03/20 16:31:17 hooks complete for post-delete lolling-labradoodle
[storage] 2018/03/20 16:31:17 updating release "lolling-labradoodle.v1"
[storage] 2018/03/20 16:31:26 listing all releases with filter
[tiller] 2018/03/20 16:31:32 getting history for release lolling-labradoodle
[storage] 2018/03/20 16:31:32 getting release history for "lolling-labradoodle"
[tiller] 2018/03/20 16:31:41 preparing rollback of lolling-labradoodle
[storage] 2018/03/20 16:31:41 getting last revision of "lolling-labradoodle"
[storage] 2018/03/20 16:31:41 getting release history for "lolling-labradoodle"
[tiller] 2018/03/20 16:31:41 rolling back lolling-labradoodle (current: v1, target: v1)
[storage] 2018/03/20 16:31:41 getting release "lolling-labradoodle.v1"
[tiller] 2018/03/20 16:31:41 creating rolled back release for lolling-labradoodle
[storage] 2018/03/20 16:31:41 creating release "lolling-labradoodle.v2"
[tiller] 2018/03/20 16:31:41 performing rollback of lolling-labradoodle
[tiller] 2018/03/20 16:31:41 executing 1 pre-rollback hooks for lolling-labradoodle
[tiller] 2018/03/20 16:31:41 hooks complete for pre-rollback lolling-labradoodle
[kube] 2018/03/20 16:31:41 building resources from updated manifest
[kube] 2018/03/20 16:31:41 checking 7 resources for changes
[kube] 2018/03/20 16:31:41 Created a new Secret called "lolling-labradoodle-jenkins"
[kube] 2018/03/20 16:31:41 Created a new ConfigMap called "lolling-labradoodle-jenkins"
[kube] 2018/03/20 16:31:41 Created a new ConfigMap called "lolling-labradoodle-jenkins-tests"
[kube] 2018/03/20 16:31:41 Created a new PersistentVolumeClaim called "lolling-labradoodle-jenkins"
[kube] 2018/03/20 16:31:42 Created a new Service called "lolling-labradoodle-jenkins-agent"
[kube] 2018/03/20 16:31:42 Created a new Service called "lolling-labradoodle-jenkins"
[kube] 2018/03/20 16:31:42 Created a new Deployment called "lolling-labradoodle-jenkins"
[tiller] 2018/03/20 16:31:42 executing 1 post-rollback hooks for lolling-labradoodle
[tiller] 2018/03/20 16:31:42 hooks complete for post-rollback lolling-labradoodle
[storage] 2018/03/20 16:31:42 getting deployed releases from "lolling-labradoodle" history

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Reactions: 4
  • Comments: 15 (6 by maintainers)

Commits related to this issue

Most upvoted comments

I see the same issue in 2.10.0 also.

+1 Rollback works on existing deployments, fails on any deleted ones.

Same for 2.11.0

closed via #4820