From 1eaec045b28f0834cb0c9463075a222c82661bc2 Mon Sep 17 00:00:00 2001 From: Nikolay Mahotkin <nikolay.makhotkin@gmail.com> Date: Fri, 16 Dec 2016 22:13:49 +0300 Subject: [PATCH] Rename 'restart' to 'recreate' --- _proto/hapi/services/tiller.proto | 4 ++-- cmd/helm/rollback.go | 2 +- cmd/helm/upgrade.go | 2 +- pkg/helm/client.go | 2 +- pkg/helm/option.go | 14 +++++++------- pkg/kube/client.go | 18 +++++++++--------- pkg/tiller/environment/environment.go | 4 ++-- pkg/tiller/environment/environment_test.go | 2 +- pkg/tiller/release_server.go | 4 ++-- pkg/tiller/release_server_test.go | 2 +- 10 files changed, 27 insertions(+), 27 deletions(-) diff --git a/_proto/hapi/services/tiller.proto b/_proto/hapi/services/tiller.proto index 1843c1332..a1e8ed25a 100644 --- a/_proto/hapi/services/tiller.proto +++ b/_proto/hapi/services/tiller.proto @@ -189,7 +189,7 @@ message UpdateReleaseRequest { // DisableHooks causes the server to skip running any hooks for the upgrade. bool disable_hooks = 5; // Performs pods restart for resources if applicable - bool restart = 6; + bool recreate = 6; } // UpdateReleaseResponse is the response to an update request. @@ -207,7 +207,7 @@ message RollbackReleaseRequest { // Version is the version of the release to deploy. int32 version = 4; // Performs pods restart for resources if applicable - bool restart = 5; + bool recreate = 5; } // RollbackReleaseResponse is the response to an update request. diff --git a/cmd/helm/rollback.go b/cmd/helm/rollback.go index 151cc94ef..fd41e4d76 100644 --- a/cmd/helm/rollback.go +++ b/cmd/helm/rollback.go @@ -82,7 +82,7 @@ func (r *rollbackCmd) run() error { _, err := r.client.RollbackRelease( r.name, helm.RollbackDryRun(r.dryRun), - helm.RollbackRestart(r.restart), + helm.RollbackRecreate(r.restart), helm.RollbackDisableHooks(r.disableHooks), helm.RollbackVersion(r.revision), ) diff --git a/cmd/helm/upgrade.go b/cmd/helm/upgrade.go index d8627e423..b279b8fd2 100644 --- a/cmd/helm/upgrade.go +++ b/cmd/helm/upgrade.go @@ -151,7 +151,7 @@ func (u *upgradeCmd) run() error { chartPath, helm.UpdateValueOverrides(rawVals), helm.UpgradeDryRun(u.dryRun), - helm.UpgradeRestart(u.restart), + helm.UpgradeRecreate(u.restart), helm.UpgradeDisableHooks(u.disableHooks)) if err != nil { return fmt.Errorf("UPGRADE FAILED: %v", prettyError(err)) diff --git a/pkg/helm/client.go b/pkg/helm/client.go index bb1793bb5..eef5c13e9 100644 --- a/pkg/helm/client.go +++ b/pkg/helm/client.go @@ -133,7 +133,7 @@ func (h *Client) UpdateRelease(rlsName string, chstr string, opts ...UpdateOptio req.DryRun = h.opts.dryRun req.Name = rlsName req.DisableHooks = h.opts.disableHooks - req.Restart = h.opts.restart + req.Restart = h.opts.recreate ctx := NewContext() if h.opts.before != nil { diff --git a/pkg/helm/option.go b/pkg/helm/option.go index f8c7b198c..24cbfb141 100644 --- a/pkg/helm/option.go +++ b/pkg/helm/option.go @@ -41,7 +41,7 @@ type options struct { // if set, re-use an existing name reuseName bool // if set, performs pod restart during upgrade/rollback - restart bool + recreate bool // if set, skip running hooks disableHooks bool // name of release @@ -214,10 +214,10 @@ func RollbackDryRun(dry bool) RollbackOption { } } -// RollbackDryRun will (if true) execute a rollback as a dry run. -func RollbackRestart(restart bool) RollbackOption { +// RollbackRecreate will (if true) recreate pods after rollback. +func RollbackRecreate(recreate bool) RollbackOption { return func(opts *options) { - opts.restart = restart + opts.recreate = recreate } } @@ -242,10 +242,10 @@ func UpgradeDryRun(dry bool) UpdateOption { } } -// UpgradeDryRun will (if true) execute an upgrade as a dry run. -func UpgradeRestart(restart bool) UpdateOption { +// UpgradeRecreate will (if true) recreate pods after upgrade. +func UpgradeRecreate(recreate bool) UpdateOption { return func(opts *options) { - opts.restart = restart + opts.recreate = recreate } } diff --git a/pkg/kube/client.go b/pkg/kube/client.go index c8bc7c7fb..cc4762ac2 100644 --- a/pkg/kube/client.go +++ b/pkg/kube/client.go @@ -164,7 +164,7 @@ func (c *Client) Get(namespace string, reader io.Reader) (string, error) { // not present in the target configuration // // Namespace will set the namespaces -func (c *Client) Update(namespace string, currentReader, targetReader io.Reader, restart bool) error { +func (c *Client) Update(namespace string, currentReader, targetReader io.Reader, recreate bool) error { currentInfos, err := c.newBuilder(namespace, currentReader).Do().Infos() if err != nil { return fmt.Errorf("failed decoding reader into objects: %s", err) @@ -205,7 +205,7 @@ func (c *Client) Update(namespace string, currentReader, targetReader io.Reader, return err } - if err := updateResource(c, info, currentObj, restart); err != nil { + if err := updateResource(c, info, currentObj, recreate); err != nil { if alreadyExistErr, ok := err.(ErrAlreadyExists); ok { log.Printf(alreadyExistErr.errorMsg) } else { @@ -301,7 +301,7 @@ func deleteResource(info *resource.Info) error { return resource.NewHelper(info.Client, info.Mapping).Delete(info.Namespace, info.Name) } -func updateResource(c *Client, target *resource.Info, currentObj runtime.Object, restart bool) error { +func updateResource(c *Client, target *resource.Info, currentObj runtime.Object, recreate bool) error { encoder := api.Codecs.LegacyCodec(registered.EnabledVersions()...) original, err := runtime.Encode(encoder, currentObj) if err != nil { @@ -330,30 +330,30 @@ func updateResource(c *Client, target *resource.Info, currentObj runtime.Object, return err } - if restart { + if recreate { kind := target.Mapping.GroupVersionKind.Kind client, _ := c.ClientSet() switch kind { case "ReplicationController": rc := currentObj.(*v1.ReplicationController) - err = restartPods(client, target.Namespace, rc.Spec.Selector) + err = recreatePods(client, target.Namespace, rc.Spec.Selector) case "DaemonSet": daemonSet := currentObj.(*v1beta1.DaemonSet) - err = restartPods(client, target.Namespace, daemonSet.Spec.Selector.MatchLabels) + err = recreatePods(client, target.Namespace, daemonSet.Spec.Selector.MatchLabels) case "StatefulSet": petSet := currentObj.(*apps.StatefulSet) - err = restartPods(client, target.Namespace, petSet.Spec.Selector.MatchLabels) + err = recreatePods(client, target.Namespace, petSet.Spec.Selector.MatchLabels) case "ReplicaSet": replicaSet := currentObj.(*v1beta1.ReplicaSet) - err = restartPods(client, target.Namespace, replicaSet.Spec.Selector.MatchLabels) + err = recreatePods(client, target.Namespace, replicaSet.Spec.Selector.MatchLabels) } } return err } -func restartPods(client *internalclientset.Clientset, namespace string, selector map[string]string) error { +func recreatePods(client *internalclientset.Clientset, namespace string, selector map[string]string) error { pods, err := client.Pods(namespace).List(api.ListOptions{ FieldSelector: fields.Everything(), LabelSelector: labels.Set(selector).AsSelector(), diff --git a/pkg/tiller/environment/environment.go b/pkg/tiller/environment/environment.go index 6cd20d786..1bddb1871 100644 --- a/pkg/tiller/environment/environment.go +++ b/pkg/tiller/environment/environment.go @@ -131,7 +131,7 @@ type KubeClient interface { // // reader must contain a YAML stream (one or more YAML documents separated // by "\n---\n"). - Update(namespace string, originalReader, modifiedReader io.Reader, restart bool) error + Update(namespace string, originalReader, modifiedReader io.Reader, recreate bool) error } // PrintingKubeClient implements KubeClient, but simply prints the reader to @@ -167,7 +167,7 @@ func (p *PrintingKubeClient) WatchUntilReady(ns string, r io.Reader) error { } // Update implements KubeClient Update. -func (p *PrintingKubeClient) Update(ns string, currentReader, modifiedReader io.Reader, restart bool) error { +func (p *PrintingKubeClient) Update(ns string, currentReader, modifiedReader io.Reader, recreate bool) error { _, err := io.Copy(p.Out, modifiedReader) return err } diff --git a/pkg/tiller/environment/environment_test.go b/pkg/tiller/environment/environment_test.go index 3e5a7e5ee..523efda3b 100644 --- a/pkg/tiller/environment/environment_test.go +++ b/pkg/tiller/environment/environment_test.go @@ -44,7 +44,7 @@ func (k *mockKubeClient) Get(ns string, r io.Reader) (string, error) { func (k *mockKubeClient) Delete(ns string, r io.Reader) error { return nil } -func (k *mockKubeClient) Update(ns string, currentReader, modifiedReader io.Reader, restart bool) error { +func (k *mockKubeClient) Update(ns string, currentReader, modifiedReader io.Reader, recreate bool) error { return nil } func (k *mockKubeClient) WatchUntilReady(ns string, r io.Reader) error { diff --git a/pkg/tiller/release_server.go b/pkg/tiller/release_server.go index 62d8a3c53..605c2fcac 100644 --- a/pkg/tiller/release_server.go +++ b/pkg/tiller/release_server.go @@ -496,11 +496,11 @@ func (s *ReleaseServer) performRollback(currentRelease, targetRelease *release.R return res, nil } -func (s *ReleaseServer) performKubeUpdate(currentRelease, targetRelease *release.Release, restart bool) error { +func (s *ReleaseServer) performKubeUpdate(currentRelease, targetRelease *release.Release, recreate bool) error { kubeCli := s.env.KubeClient current := bytes.NewBufferString(currentRelease.Manifest) target := bytes.NewBufferString(targetRelease.Manifest) - return kubeCli.Update(targetRelease.Namespace, current, target, restart) + return kubeCli.Update(targetRelease.Namespace, current, target, recreate) } // prepareRollback finds the previous release and prepares a new release object with diff --git a/pkg/tiller/release_server_test.go b/pkg/tiller/release_server_test.go index 5db9b6e3e..b2b4b81d5 100644 --- a/pkg/tiller/release_server_test.go +++ b/pkg/tiller/release_server_test.go @@ -1361,7 +1361,7 @@ type updateFailingKubeClient struct { environment.PrintingKubeClient } -func (u *updateFailingKubeClient) Update(namespace string, originalReader, modifiedReader io.Reader, restart bool) error { +func (u *updateFailingKubeClient) Update(namespace string, originalReader, modifiedReader io.Reader, recreate bool) error { return errors.New("Failed update in kube client") } -- GitLab