pull/2631/merge
Igor Bazhitov 8 years ago committed by GitHub
commit cc3503679e

@ -50,4 +50,8 @@ message Release {
// Namespace is the kubernetes namespace of the release. // Namespace is the kubernetes namespace of the release.
string namespace = 8; string namespace = 8;
// Annotations is an unstructured key value map stored with a release that
// may be set by external tools to store and retrieve arbitrary metadata.
map<string,string> annotations = 9;
} }

@ -209,6 +209,9 @@ message UpdateReleaseRequest {
bool reuse_values = 10; bool reuse_values = 10;
// Force resource update through delete/recreate if needed. // Force resource update through delete/recreate if needed.
bool force = 11; bool force = 11;
// Annotations is an unstructured key value map stored with a release that
// may be set by external tools to store and retrieve arbitrary metadata.
map<string,string> annotations = 12;
} }
// UpdateReleaseResponse is the response to an update request. // UpdateReleaseResponse is the response to an update request.
@ -271,6 +274,9 @@ message InstallReleaseRequest {
// wait, if true, will wait until all Pods, PVCs, and Services are in a ready state // wait, if true, will wait until all Pods, PVCs, and Services are in a ready state
// before marking the release as successful. It will wait for as long as timeout // before marking the release as successful. It will wait for as long as timeout
bool wait = 9; bool wait = 9;
// Annotations is an unstructured key value map stored with a release that
// may be set by external tools to store and retrieve arbitrary metadata.
map<string,string> annotations = 10;
} }
// InstallReleaseResponse is the response from a release installation. // InstallReleaseResponse is the response from a release installation.

@ -118,6 +118,7 @@ type installCmd struct {
wait bool wait bool
repoURL string repoURL string
devel bool devel bool
annotations []string
certFile string certFile string
keyFile string keyFile string
@ -193,6 +194,7 @@ func newInstallCmd(c helm.Interface, out io.Writer) *cobra.Command {
f.StringVar(&inst.keyFile, "key-file", "", "identify HTTPS client using this SSL key file") f.StringVar(&inst.keyFile, "key-file", "", "identify HTTPS client using this SSL key file")
f.StringVar(&inst.caFile, "ca-file", "", "verify certificates of HTTPS-enabled servers using this CA bundle") f.StringVar(&inst.caFile, "ca-file", "", "verify certificates of HTTPS-enabled servers using this CA bundle")
f.BoolVar(&inst.devel, "devel", false, "use development versions, too. Equivalent to version '>0.0.0-a'. If --version is set, this is ignored.") f.BoolVar(&inst.devel, "devel", false, "use development versions, too. Equivalent to version '>0.0.0-a'. If --version is set, this is ignored.")
f.StringArrayVar(&inst.annotations, "annotations", []string{}, "set release annotations (can specify multiple or separate values with commas: key1=val1,key2=val2)")
return cmd return cmd
} }
@ -209,6 +211,11 @@ func (i *installCmd) run() error {
return err return err
} }
annotations, err := parseAnnotations(i.annotations)
if err != nil {
return err
}
// If template is specified, try to run the template. // If template is specified, try to run the template.
if i.nameTemplate != "" { if i.nameTemplate != "" {
i.name, err = generateName(i.nameTemplate) i.name, err = generateName(i.nameTemplate)
@ -245,7 +252,8 @@ func (i *installCmd) run() error {
helm.InstallReuseName(i.replace), helm.InstallReuseName(i.replace),
helm.InstallDisableHooks(i.disableHooks), helm.InstallDisableHooks(i.disableHooks),
helm.InstallTimeout(i.timeout), helm.InstallTimeout(i.timeout),
helm.InstallWait(i.wait)) helm.InstallWait(i.wait),
helm.InstallAnnotations(annotations))
if err != nil { if err != nil {
return prettyError(err) return prettyError(err)
} }
@ -469,3 +477,17 @@ func checkDependencies(ch *chart.Chart, reqs *chartutil.Requirements) error {
} }
return nil return nil
} }
func parseAnnotations(input []string) (map[string]string, error) {
annotations := map[string]string{}
for _, a := range input {
for _, s := range strings.Split(a, ",") {
v := strings.Split(s, "=")
if len(v) < 2 || len(v[0]) == 0 {
return nil, fmt.Errorf("invalid annotations format: '%s', should be <key>=[value]", s)
}
annotations[v[0]] = v[1]
}
}
return annotations, nil
}

@ -42,6 +42,10 @@ HOOKS:
{{- end }} {{- end }}
MANIFEST: MANIFEST:
{{.Release.Manifest}} {{.Release.Manifest}}
ANNOTATIONS:
{{- range $k, $v := .Release.Annotations }}
{{$k}}={{$v}}
{{- end }}
` `
func printRelease(out io.Writer, rel *release.Release) error { func printRelease(out io.Writer, rel *release.Release) error {

@ -74,6 +74,7 @@ type upgradeCmd struct {
wait bool wait bool
repoURL string repoURL string
devel bool devel bool
annotations []string
certFile string certFile string
keyFile string keyFile string
@ -132,6 +133,7 @@ func newUpgradeCmd(client helm.Interface, out io.Writer) *cobra.Command {
f.StringVar(&upgrade.keyFile, "key-file", "", "identify HTTPS client using this SSL key file") f.StringVar(&upgrade.keyFile, "key-file", "", "identify HTTPS client using this SSL key file")
f.StringVar(&upgrade.caFile, "ca-file", "", "verify certificates of HTTPS-enabled servers using this CA bundle") f.StringVar(&upgrade.caFile, "ca-file", "", "verify certificates of HTTPS-enabled servers using this CA bundle")
f.BoolVar(&upgrade.devel, "devel", false, "use development versions, too. Equivalent to version '>0.0.0-a'. If --version is set, this is ignored.") f.BoolVar(&upgrade.devel, "devel", false, "use development versions, too. Equivalent to version '>0.0.0-a'. If --version is set, this is ignored.")
f.StringArrayVar(&upgrade.annotations, "annotations", []string{}, "set release annotations (can specify multiple or separate values with commas: key1=val1,key2=val2)")
f.MarkDeprecated("disable-hooks", "use --no-hooks instead") f.MarkDeprecated("disable-hooks", "use --no-hooks instead")
@ -168,6 +170,7 @@ func (u *upgradeCmd) run() error {
namespace: u.namespace, namespace: u.namespace,
timeout: u.timeout, timeout: u.timeout,
wait: u.wait, wait: u.wait,
annotations: u.annotations,
} }
return ic.run() return ic.run()
} }
@ -178,6 +181,11 @@ func (u *upgradeCmd) run() error {
return err return err
} }
annotations, err := parseAnnotations(u.annotations)
if err != nil {
return err
}
// Check chart requirements to make sure all dependencies are present in /charts // Check chart requirements to make sure all dependencies are present in /charts
if ch, err := chartutil.Load(chartPath); err == nil { if ch, err := chartutil.Load(chartPath); err == nil {
if req, err := chartutil.LoadRequirements(ch); err == nil { if req, err := chartutil.LoadRequirements(ch); err == nil {
@ -202,7 +210,8 @@ func (u *upgradeCmd) run() error {
helm.UpgradeTimeout(u.timeout), helm.UpgradeTimeout(u.timeout),
helm.ResetValues(u.resetValues), helm.ResetValues(u.resetValues),
helm.ReuseValues(u.reuseValues), helm.ReuseValues(u.reuseValues),
helm.UpgradeWait(u.wait)) helm.UpgradeWait(u.wait),
helm.UpgradeAnnotations(annotations))
if err != nil { if err != nil {
return fmt.Errorf("UPGRADE FAILED: %v", prettyError(err)) return fmt.Errorf("UPGRADE FAILED: %v", prettyError(err))
} }

@ -68,29 +68,30 @@ helm install [CHART]
### Options ### Options
``` ```
--ca-file string verify certificates of HTTPS-enabled servers using this CA bundle --annotations stringArray set release annotations (can specify multiple or separate values with commas: key1=val1,key2=val2)
--cert-file string identify HTTPS client using this SSL certificate file --ca-file string verify certificates of HTTPS-enabled servers using this CA bundle
--devel use development versions, too. Equivalent to version '>0.0.0-a'. If --version is set, this is ignored. --cert-file string identify HTTPS client using this SSL certificate file
--dry-run simulate an install --devel use development versions, too. Equivalent to version '>0.0.0-a'. If --version is set, this is ignored.
--key-file string identify HTTPS client using this SSL key file --dry-run simulate an install
--keyring string location of public keys used for verification (default "~/.gnupg/pubring.gpg") --key-file string identify HTTPS client using this SSL key file
-n, --name string release name. If unspecified, it will autogenerate one for you --keyring string location of public keys used for verification (default "~/.gnupg/pubring.gpg")
--name-template string specify template used to name the release -n, --name string release name. If unspecified, it will autogenerate one for you
--namespace string namespace to install the release into --name-template string specify template used to name the release
--no-hooks prevent hooks from running during install --namespace string namespace to install the release into
--replace re-use the given name, even if that name is already used. This is unsafe in production --no-hooks prevent hooks from running during install
--repo string chart repository url where to locate the requested chart --replace re-use the given name, even if that name is already used. This is unsafe in production
--set stringArray set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2) --repo string chart repository url where to locate the requested chart
--timeout int time in seconds to wait for any individual Kubernetes operation (like Jobs for hooks) (default 300) --set stringArray set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
--tls enable TLS for request --timeout int time in seconds to wait for any individual Kubernetes operation (like Jobs for hooks) (default 300)
--tls-ca-cert string path to TLS CA certificate file (default "$HELM_HOME/ca.pem") --tls enable TLS for request
--tls-cert string path to TLS certificate file (default "$HELM_HOME/cert.pem") --tls-ca-cert string path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
--tls-key string path to TLS key file (default "$HELM_HOME/key.pem") --tls-cert string path to TLS certificate file (default "$HELM_HOME/cert.pem")
--tls-verify enable TLS for request and verify remote --tls-key string path to TLS key file (default "$HELM_HOME/key.pem")
-f, --values valueFiles specify values in a YAML file (can specify multiple) (default []) --tls-verify enable TLS for request and verify remote
--verify verify the package before installing it -f, --values valueFiles specify values in a YAML file (can specify multiple) (default [])
--version string specify the exact chart version to install. If this is not specified, the latest version is installed --verify verify the package before installing it
--wait if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful. It will wait for as long as --timeout --version string specify the exact chart version to install. If this is not specified, the latest version is installed
--wait if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful. It will wait for as long as --timeout
``` ```
### Options inherited from parent commands ### Options inherited from parent commands
@ -106,4 +107,4 @@ helm install [CHART]
### SEE ALSO ### SEE ALSO
* [helm](helm.md) - The Helm package manager for Kubernetes. * [helm](helm.md) - The Helm package manager for Kubernetes.
###### Auto generated by spf13/cobra on 23-Jun-2017 ###### Auto generated by spf13/cobra on 12-Jul-2017

@ -36,31 +36,32 @@ helm upgrade [RELEASE] [CHART]
### Options ### Options
``` ```
--ca-file string verify certificates of HTTPS-enabled servers using this CA bundle --annotations stringArray set release annotations (can specify multiple or separate values with commas: key1=val1,key2=val2)
--cert-file string identify HTTPS client using this SSL certificate file --ca-file string verify certificates of HTTPS-enabled servers using this CA bundle
--devel use development versions, too. Equivalent to version '>0.0.0-a'. If --version is set, this is ignored. --cert-file string identify HTTPS client using this SSL certificate file
--dry-run simulate an upgrade --devel use development versions, too. Equivalent to version '>0.0.0-a'. If --version is set, this is ignored.
--force force resource update through delete/recreate if needed --dry-run simulate an upgrade
-i, --install if a release by this name doesn't already exist, run an install --force force resource update through delete/recreate if needed
--key-file string identify HTTPS client using this SSL key file -i, --install if a release by this name doesn't already exist, run an install
--keyring string path to the keyring that contains public signing keys (default "~/.gnupg/pubring.gpg") --key-file string identify HTTPS client using this SSL key file
--namespace string namespace to install the release into (only used if --install is set) (default "default") --keyring string path to the keyring that contains public signing keys (default "~/.gnupg/pubring.gpg")
--no-hooks disable pre/post upgrade hooks --namespace string namespace to install the release into (only used if --install is set) (default "default")
--recreate-pods performs pods restart for the resource if applicable --no-hooks disable pre/post upgrade hooks
--repo string chart repository url where to locate the requested chart --recreate-pods performs pods restart for the resource if applicable
--reset-values when upgrading, reset the values to the ones built into the chart --repo string chart repository url where to locate the requested chart
--reuse-values when upgrading, reuse the last release's values, and merge in any new values. If '--reset-values' is specified, this is ignored. --reset-values when upgrading, reset the values to the ones built into the chart
--set stringArray set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2) --reuse-values when upgrading, reuse the last release's values, and merge in any new values. If '--reset-values' is specified, this is ignored.
--timeout int time in seconds to wait for any individual Kubernetes operation (like Jobs for hooks) (default 300) --set stringArray set values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2)
--tls enable TLS for request --timeout int time in seconds to wait for any individual Kubernetes operation (like Jobs for hooks) (default 300)
--tls-ca-cert string path to TLS CA certificate file (default "$HELM_HOME/ca.pem") --tls enable TLS for request
--tls-cert string path to TLS certificate file (default "$HELM_HOME/cert.pem") --tls-ca-cert string path to TLS CA certificate file (default "$HELM_HOME/ca.pem")
--tls-key string path to TLS key file (default "$HELM_HOME/key.pem") --tls-cert string path to TLS certificate file (default "$HELM_HOME/cert.pem")
--tls-verify enable TLS for request and verify remote --tls-key string path to TLS key file (default "$HELM_HOME/key.pem")
-f, --values valueFiles specify values in a YAML file (can specify multiple) (default []) --tls-verify enable TLS for request and verify remote
--verify verify the provenance of the chart before upgrading -f, --values valueFiles specify values in a YAML file (can specify multiple) (default [])
--version string specify the exact chart version to use. If this is not specified, the latest version is used --verify verify the provenance of the chart before upgrading
--wait if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful. It will wait for as long as --timeout --version string specify the exact chart version to use. If this is not specified, the latest version is used
--wait if set, will wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful. It will wait for as long as --timeout
``` ```
### Options inherited from parent commands ### Options inherited from parent commands
@ -76,4 +77,4 @@ helm upgrade [RELEASE] [CHART]
### SEE ALSO ### SEE ALSO
* [helm](helm.md) - The Helm package manager for Kubernetes. * [helm](helm.md) - The Helm package manager for Kubernetes.
###### Auto generated by spf13/cobra on 23-Jun-2017 ###### Auto generated by spf13/cobra on 12-Jul-2017

@ -393,6 +393,20 @@ func StatusReleaseVersion(version int32) StatusOption {
} }
} }
// InstallAnnotations attaches annotations to the release
func InstallAnnotations(annotations map[string]string) InstallOption {
return func(opts *options) {
opts.instReq.Annotations = annotations
}
}
// UpgradeAnnotations attaches annotations to the release
func UpgradeAnnotations(annotations map[string]string) UpdateOption {
return func(opts *options) {
opts.updateReq.Annotations = annotations
}
}
// DeleteOption allows setting optional attributes when // DeleteOption allows setting optional attributes when
// performing a UninstallRelease tiller rpc. // performing a UninstallRelease tiller rpc.
type DeleteOption func(*options) type DeleteOption func(*options)

@ -34,6 +34,9 @@ type Release struct {
Version int32 `protobuf:"varint,7,opt,name=version" json:"version,omitempty"` Version int32 `protobuf:"varint,7,opt,name=version" json:"version,omitempty"`
// Namespace is the kubernetes namespace of the release. // Namespace is the kubernetes namespace of the release.
Namespace string `protobuf:"bytes,8,opt,name=namespace" json:"namespace,omitempty"` Namespace string `protobuf:"bytes,8,opt,name=namespace" json:"namespace,omitempty"`
// Annotations is an unstructured key value map stored with a release that
// may be set by external tools to store and retrieve arbitrary metadata.
Annotations map[string]string `protobuf:"bytes,9,rep,name=annotations" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
} }
func (m *Release) Reset() { *m = Release{} } func (m *Release) Reset() { *m = Release{} }
@ -97,6 +100,13 @@ func (m *Release) GetNamespace() string {
return "" return ""
} }
func (m *Release) GetAnnotations() map[string]string {
if m != nil {
return m.Annotations
}
return nil
}
func init() { func init() {
proto.RegisterType((*Release)(nil), "hapi.release.Release") proto.RegisterType((*Release)(nil), "hapi.release.Release")
} }
@ -104,21 +114,26 @@ func init() {
func init() { proto.RegisterFile("hapi/release/release.proto", fileDescriptor2) } func init() { proto.RegisterFile("hapi/release/release.proto", fileDescriptor2) }
var fileDescriptor2 = []byte{ var fileDescriptor2 = []byte{
// 256 bytes of a gzipped FileDescriptorProto // 322 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x90, 0xbf, 0x4e, 0xc3, 0x40, 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x91, 0x4f, 0x4f, 0xf2, 0x40,
0x0c, 0xc6, 0x95, 0x36, 0x7f, 0x1a, 0xc3, 0x82, 0x07, 0xb0, 0x22, 0x86, 0x88, 0x01, 0x22, 0x86, 0x10, 0xc6, 0x53, 0x4a, 0x29, 0x1d, 0xde, 0x03, 0xef, 0xc4, 0xe8, 0xa6, 0xf1, 0xd0, 0x78, 0xc0,
0x54, 0x82, 0x37, 0x80, 0x05, 0xd6, 0x1b, 0xd9, 0x8e, 0xe8, 0x42, 0x4e, 0xa5, 0xe7, 0x28, 0x17, 0xc6, 0x43, 0x49, 0xf4, 0x62, 0x3c, 0x98, 0xa8, 0x31, 0xc1, 0xeb, 0x1e, 0xbd, 0xad, 0x64, 0x2b,
0xf1, 0x2c, 0x3c, 0x2e, 0xba, 0x3f, 0x85, 0x94, 0x2e, 0x4e, 0xec, 0xdf, 0xa7, 0xcf, 0xdf, 0x19, 0x0d, 0xb0, 0x43, 0xba, 0x2b, 0x09, 0x5f, 0xc7, 0x4f, 0x6a, 0xf6, 0x0f, 0x52, 0xf0, 0xb2, 0xdd,
0xaa, 0x41, 0x8e, 0x7a, 0x3b, 0xa9, 0x4f, 0x25, 0xad, 0x3a, 0x7c, 0xdb, 0x71, 0xe2, 0x99, 0xf1, 0x99, 0xe7, 0xd7, 0x79, 0xa6, 0x4f, 0x21, 0x5f, 0x88, 0x4d, 0x33, 0x6d, 0xe5, 0x4a, 0x0a, 0x2d,
0xdc, 0xb1, 0x36, 0xce, 0xaa, 0xab, 0x23, 0xe5, 0xc0, 0xbc, 0x0b, 0xb2, 0x7f, 0x40, 0x9b, 0x9e, 0xf7, 0xcf, 0x6a, 0xd3, 0x92, 0x21, 0xfc, 0x67, 0xb5, 0x2a, 0xf4, 0xf2, 0x8b, 0x23, 0x72, 0x41,
0x8f, 0x40, 0x37, 0xc8, 0x69, 0xde, 0x76, 0x6c, 0x7a, 0xfd, 0x11, 0xc1, 0xe5, 0x12, 0xb8, 0x1a, 0xb4, 0xf4, 0xd8, 0x89, 0xd0, 0xa8, 0x9a, 0x8e, 0x84, 0xf9, 0x42, 0xb4, 0x66, 0x3a, 0x27, 0x55,
0xe6, 0x37, 0xdf, 0x2b, 0x28, 0x44, 0xf0, 0x41, 0x84, 0xd4, 0xc8, 0xbd, 0xa2, 0xa4, 0x4e, 0x9a, 0x37, 0x9f, 0x41, 0x38, 0xef, 0x0a, 0xf6, 0xf4, 0xfd, 0xab, 0xef, 0x18, 0x52, 0xee, 0xe7, 0x20,
0x52, 0xf8, 0x7f, 0xbc, 0x85, 0xd4, 0xd9, 0xd3, 0xaa, 0x4e, 0x9a, 0xb3, 0x07, 0x6c, 0x97, 0xf9, 0x42, 0x5f, 0x89, 0xb5, 0x64, 0x51, 0x11, 0x95, 0x19, 0x77, 0x77, 0x9c, 0x40, 0xdf, 0x8e, 0x67,
0xda, 0x57, 0xd3, 0xb3, 0xf0, 0x1c, 0xef, 0x20, 0xf3, 0xb6, 0xb4, 0xf6, 0xc2, 0x8b, 0x20, 0x0c, 0xbd, 0x22, 0x2a, 0x47, 0xb7, 0x58, 0x75, 0xf7, 0xab, 0xde, 0x54, 0x4d, 0xdc, 0xe9, 0x78, 0x0d,
0x9b, 0x9e, 0x5d, 0x15, 0x81, 0xe3, 0x3d, 0xe4, 0x21, 0x18, 0xa5, 0x4b, 0xcb, 0xa8, 0xf4, 0x44, 0x89, 0x1b, 0xcb, 0x62, 0x07, 0xfe, 0xf7, 0xa0, 0x77, 0x7a, 0xb1, 0x27, 0xf7, 0x3a, 0xde, 0xc0,
0x44, 0x05, 0x56, 0xb0, 0xd9, 0x4b, 0xa3, 0x7b, 0x65, 0x67, 0xca, 0x7c, 0xa8, 0xdf, 0x1e, 0x1b, 0xc0, 0x2f, 0xc6, 0xfa, 0xdd, 0x91, 0x81, 0x74, 0x0a, 0x0f, 0x04, 0xe6, 0x30, 0x5c, 0x0b, 0xd5,
0xc8, 0xdc, 0x41, 0x2c, 0xe5, 0xf5, 0xfa, 0x34, 0xd9, 0x0b, 0xf3, 0x4e, 0x04, 0x01, 0x12, 0x14, 0xd4, 0x52, 0x1b, 0x96, 0xb8, 0xa5, 0x7e, 0x6b, 0x2c, 0x21, 0xb1, 0x81, 0x68, 0x36, 0x28, 0xe2,
0x5f, 0x6a, 0xb2, 0x9a, 0x0d, 0x15, 0x75, 0xd2, 0x64, 0xe2, 0xd0, 0xe2, 0x35, 0x94, 0xee, 0x91, 0xbf, 0x9b, 0xcd, 0x88, 0x96, 0xdc, 0x03, 0xc8, 0x20, 0xdd, 0xca, 0x56, 0x37, 0xa4, 0x58, 0x5a,
0x76, 0x94, 0x9d, 0xa2, 0x8d, 0x5f, 0xf0, 0x37, 0x78, 0x2a, 0xdf, 0x8a, 0x68, 0xf7, 0x9e, 0xfb, 0x44, 0x65, 0xc2, 0xf7, 0x25, 0x5e, 0x42, 0x66, 0x3f, 0x52, 0x6f, 0xc4, 0x5c, 0xb2, 0xa1, 0x33,
0x63, 0x3d, 0xfe, 0x04, 0x00, 0x00, 0xff, 0xff, 0xc8, 0x8f, 0xec, 0x97, 0xbb, 0x01, 0x00, 0x00, 0x38, 0x34, 0x70, 0x06, 0x23, 0xa1, 0x14, 0x19, 0x61, 0x1a, 0x52, 0x9a, 0x65, 0xce, 0x67, 0x72,
0xec, 0x13, 0xa2, 0xab, 0x9e, 0x0e, 0xe0, 0xab, 0x32, 0xed, 0x8e, 0x77, 0x5f, 0xcd, 0x1f, 0x61,
0x7c, 0x0a, 0xe0, 0x18, 0xe2, 0xa5, 0xdc, 0x85, 0xac, 0xed, 0x15, 0xcf, 0x20, 0xd9, 0x8a, 0xd5,
0x97, 0x74, 0x59, 0x67, 0xdc, 0x17, 0x0f, 0xbd, 0xfb, 0xe8, 0x39, 0x7b, 0x4f, 0x83, 0xe1, 0xc7,
0xc0, 0xfd, 0xb6, 0xbb, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x5d, 0x29, 0xd2, 0x2f, 0x45, 0x02,
0x00, 0x00,
} }

@ -376,6 +376,9 @@ type UpdateReleaseRequest struct {
ReuseValues bool `protobuf:"varint,10,opt,name=reuse_values,json=reuseValues" json:"reuse_values,omitempty"` ReuseValues bool `protobuf:"varint,10,opt,name=reuse_values,json=reuseValues" json:"reuse_values,omitempty"`
// Force resource update through delete/recreate if needed. // Force resource update through delete/recreate if needed.
Force bool `protobuf:"varint,11,opt,name=force" json:"force,omitempty"` Force bool `protobuf:"varint,11,opt,name=force" json:"force,omitempty"`
// Annotations is an unstructured key value map stored with a release that
// may be set by external tools to store and retrieve arbitrary metadata.
Annotations map[string]string `protobuf:"bytes,12,rep,name=annotations" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
} }
func (m *UpdateReleaseRequest) Reset() { *m = UpdateReleaseRequest{} } func (m *UpdateReleaseRequest) Reset() { *m = UpdateReleaseRequest{} }
@ -460,6 +463,13 @@ func (m *UpdateReleaseRequest) GetForce() bool {
return false return false
} }
func (m *UpdateReleaseRequest) GetAnnotations() map[string]string {
if m != nil {
return m.Annotations
}
return nil
}
// UpdateReleaseResponse is the response to an update request. // UpdateReleaseResponse is the response to an update request.
type UpdateReleaseResponse struct { type UpdateReleaseResponse struct {
Release *hapi_release5.Release `protobuf:"bytes,1,opt,name=release" json:"release,omitempty"` Release *hapi_release5.Release `protobuf:"bytes,1,opt,name=release" json:"release,omitempty"`
@ -600,6 +610,9 @@ type InstallReleaseRequest struct {
// wait, if true, will wait until all Pods, PVCs, and Services are in a ready state // wait, if true, will wait until all Pods, PVCs, and Services are in a ready state
// before marking the release as successful. It will wait for as long as timeout // before marking the release as successful. It will wait for as long as timeout
Wait bool `protobuf:"varint,9,opt,name=wait" json:"wait,omitempty"` Wait bool `protobuf:"varint,9,opt,name=wait" json:"wait,omitempty"`
// Annotations is an unstructured key value map stored with a release that
// may be set by external tools to store and retrieve arbitrary metadata.
Annotations map[string]string `protobuf:"bytes,10,rep,name=annotations" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
} }
func (m *InstallReleaseRequest) Reset() { *m = InstallReleaseRequest{} } func (m *InstallReleaseRequest) Reset() { *m = InstallReleaseRequest{} }
@ -670,6 +683,13 @@ func (m *InstallReleaseRequest) GetWait() bool {
return false return false
} }
func (m *InstallReleaseRequest) GetAnnotations() map[string]string {
if m != nil {
return m.Annotations
}
return nil
}
// InstallReleaseResponse is the response from a release installation. // InstallReleaseResponse is the response from a release installation.
type InstallReleaseResponse struct { type InstallReleaseResponse struct {
Release *hapi_release5.Release `protobuf:"bytes,1,opt,name=release" json:"release,omitempty"` Release *hapi_release5.Release `protobuf:"bytes,1,opt,name=release" json:"release,omitempty"`
@ -1368,82 +1388,86 @@ var _ReleaseService_serviceDesc = grpc.ServiceDesc{
func init() { proto.RegisterFile("hapi/services/tiller.proto", fileDescriptor0) } func init() { proto.RegisterFile("hapi/services/tiller.proto", fileDescriptor0) }
var fileDescriptor0 = []byte{ var fileDescriptor0 = []byte{
// 1217 bytes of a gzipped FileDescriptorProto // 1292 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x57, 0xdd, 0x6e, 0xe3, 0xc4, 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x58, 0x5b, 0x73, 0xdb, 0x44,
0x17, 0xaf, 0xf3, 0x9d, 0x93, 0x36, 0xff, 0x74, 0x9a, 0xb6, 0xae, 0xff, 0x0b, 0x2a, 0x46, 0xb0, 0x14, 0x8e, 0x2c, 0x5f, 0x8f, 0xd3, 0xe0, 0x6e, 0xdd, 0x44, 0x15, 0x85, 0x09, 0x62, 0xa0, 0x6e,
0xd9, 0x85, 0x4d, 0x21, 0x70, 0x83, 0x84, 0x90, 0xba, 0xdd, 0xa8, 0x2d, 0x94, 0xae, 0xe4, 0x6c, 0x4b, 0x1d, 0x30, 0x3c, 0x70, 0xe9, 0x74, 0x26, 0x4d, 0x3d, 0x49, 0x21, 0xa4, 0x33, 0x72, 0x5b,
0x17, 0x09, 0x01, 0x91, 0x9b, 0x4c, 0x5a, 0xb3, 0x8e, 0x27, 0x78, 0xc6, 0x65, 0x7b, 0xcb, 0x1d, 0x66, 0x18, 0x5a, 0x8f, 0x62, 0xaf, 0x53, 0x51, 0x59, 0x6b, 0xb4, 0xab, 0x50, 0xbf, 0xf2, 0xc6,
0x8f, 0xc2, 0x5b, 0xf0, 0x1e, 0x5c, 0xc2, 0x83, 0x20, 0xcf, 0x87, 0xeb, 0x49, 0xed, 0xd6, 0xf4, 0xbf, 0xe2, 0x95, 0xdf, 0xc0, 0x2b, 0x3f, 0x84, 0xd1, 0x5e, 0x14, 0xad, 0x22, 0xa7, 0x6a, 0x66,
0x26, 0x9e, 0x99, 0xf3, 0xfd, 0x3b, 0x67, 0xce, 0x9c, 0x80, 0x75, 0xe9, 0x2e, 0xbc, 0x3d, 0x8a, 0x78, 0xb1, 0xb4, 0x7b, 0xee, 0xe7, 0x3b, 0xe7, 0xe8, 0x8c, 0xc1, 0x7e, 0xe5, 0x2d, 0xfc, 0x1d,
0xc3, 0x2b, 0x6f, 0x82, 0xe9, 0x1e, 0xf3, 0x7c, 0x1f, 0x87, 0xfd, 0x45, 0x48, 0x18, 0x41, 0xdd, 0x8a, 0xa3, 0x53, 0x7f, 0x82, 0xe9, 0x0e, 0xf3, 0x83, 0x00, 0x47, 0xfd, 0x45, 0x44, 0x18, 0x41,
0x98, 0xd6, 0x57, 0xb4, 0xbe, 0xa0, 0x59, 0x5b, 0x5c, 0x62, 0x72, 0xe9, 0x86, 0x4c, 0xfc, 0x0a, 0xdd, 0x84, 0xd6, 0x57, 0xb4, 0xbe, 0xa0, 0xd9, 0x9b, 0x5c, 0x62, 0xf2, 0xca, 0x8b, 0x98, 0xf8,
0x6e, 0x6b, 0x3b, 0x7d, 0x4e, 0x82, 0x99, 0x77, 0x21, 0x09, 0xc2, 0x44, 0x88, 0x7d, 0xec, 0x52, 0x15, 0xdc, 0xf6, 0x56, 0xf6, 0x9e, 0x84, 0x33, 0xff, 0x44, 0x12, 0x84, 0x89, 0x08, 0x07, 0xd8,
0xac, 0xbe, 0x9a, 0x90, 0xa2, 0x79, 0xc1, 0x8c, 0x48, 0xc2, 0xff, 0x35, 0x02, 0xc3, 0x94, 0x8d, 0xa3, 0x58, 0x3d, 0x35, 0x21, 0x45, 0xf3, 0xc3, 0x19, 0x91, 0x84, 0xf7, 0x35, 0x02, 0xc3, 0x94,
0xc3, 0x28, 0x90, 0xc4, 0x1d, 0x8d, 0x48, 0x99, 0xcb, 0x22, 0xaa, 0x19, 0xbb, 0xc2, 0x21, 0xf5, 0x8d, 0xa3, 0x38, 0x94, 0xc4, 0x1b, 0x1a, 0x91, 0x32, 0x8f, 0xc5, 0x54, 0x33, 0x76, 0x8a, 0x23,
0x48, 0xa0, 0xbe, 0x82, 0x66, 0xff, 0x59, 0x82, 0x8d, 0x13, 0x8f, 0x32, 0x47, 0x08, 0x52, 0x07, 0xea, 0x93, 0x50, 0x3d, 0x05, 0xcd, 0xf9, 0xab, 0x02, 0xd7, 0x0e, 0x7d, 0xca, 0x5c, 0x21, 0x48,
0xff, 0x12, 0x61, 0xca, 0x50, 0x17, 0xaa, 0xbe, 0x37, 0xf7, 0x98, 0x69, 0xec, 0x1a, 0xbd, 0xb2, 0x5d, 0xfc, 0x5b, 0x8c, 0x29, 0x43, 0x5d, 0xa8, 0x05, 0xfe, 0xdc, 0x67, 0x96, 0xb1, 0x6d, 0xf4,
0x23, 0x36, 0x68, 0x0b, 0x6a, 0x64, 0x36, 0xa3, 0x98, 0x99, 0xa5, 0x5d, 0xa3, 0xd7, 0x74, 0xe4, 0x4c, 0x57, 0x1c, 0xd0, 0x26, 0xd4, 0xc9, 0x6c, 0x46, 0x31, 0xb3, 0x2a, 0xdb, 0x46, 0xaf, 0xe5,
0x0e, 0x7d, 0x05, 0x75, 0x4a, 0x42, 0x36, 0x3e, 0xbf, 0x36, 0xcb, 0xbb, 0x46, 0xaf, 0x3d, 0xf8, 0xca, 0x13, 0x7a, 0x00, 0x0d, 0x4a, 0x22, 0x36, 0x3e, 0x5e, 0x5a, 0xe6, 0xb6, 0xd1, 0xdb, 0x18,
0xa0, 0x9f, 0x85, 0x53, 0x3f, 0xb6, 0x34, 0x22, 0x21, 0xeb, 0xc7, 0x3f, 0xcf, 0xaf, 0x9d, 0x1a, 0x7c, 0xd2, 0x2f, 0xca, 0x53, 0x3f, 0xb1, 0x34, 0x22, 0x11, 0xeb, 0x27, 0x3f, 0x0f, 0x97, 0x6e,
0xe5, 0xdf, 0x58, 0xef, 0xcc, 0xf3, 0x19, 0x0e, 0xcd, 0x8a, 0xd0, 0x2b, 0x76, 0xe8, 0x10, 0x80, 0x9d, 0xf2, 0x67, 0xa2, 0x77, 0xe6, 0x07, 0x0c, 0x47, 0x56, 0x55, 0xe8, 0x15, 0x27, 0xb4, 0x0f,
0xeb, 0x25, 0xe1, 0x14, 0x87, 0x66, 0x95, 0xab, 0xee, 0x15, 0x50, 0xfd, 0x32, 0xe6, 0x77, 0x9a, 0xc0, 0xf5, 0x92, 0x68, 0x8a, 0x23, 0xab, 0xc6, 0x55, 0xf7, 0x4a, 0xa8, 0x7e, 0x92, 0xf0, 0xbb,
0x54, 0x2d, 0xd1, 0x97, 0xb0, 0x2a, 0x20, 0x19, 0x4f, 0xc8, 0x14, 0x53, 0xb3, 0xb6, 0x5b, 0xee, 0x2d, 0xaa, 0x5e, 0xd1, 0x7d, 0x58, 0x17, 0x29, 0x19, 0x4f, 0xc8, 0x14, 0x53, 0xab, 0xbe, 0x6d,
0xb5, 0x07, 0x3b, 0x42, 0x95, 0x82, 0x7f, 0x24, 0x40, 0x3b, 0x20, 0x53, 0xec, 0xb4, 0x04, 0x7b, 0xf6, 0x36, 0x06, 0x37, 0x84, 0x2a, 0x95, 0xfe, 0x91, 0x48, 0xda, 0x1e, 0x99, 0x62, 0xb7, 0x2d,
0xbc, 0xa6, 0xe8, 0x11, 0x34, 0x03, 0x77, 0x8e, 0xe9, 0xc2, 0x9d, 0x60, 0xb3, 0xce, 0x3d, 0xbc, 0xd8, 0x93, 0x77, 0x8a, 0x6e, 0x42, 0x2b, 0xf4, 0xe6, 0x98, 0x2e, 0xbc, 0x09, 0xb6, 0x1a, 0xdc,
0x39, 0xb0, 0x7f, 0x82, 0x86, 0x32, 0x6e, 0x0f, 0xa0, 0x26, 0x42, 0x43, 0x2d, 0xa8, 0x9f, 0x9d, 0xc3, 0xb3, 0x0b, 0xe7, 0x25, 0x34, 0x95, 0x71, 0x67, 0x00, 0x75, 0x11, 0x1a, 0x6a, 0x43, 0xe3,
0x7e, 0x73, 0xfa, 0xf2, 0xbb, 0xd3, 0xce, 0x0a, 0x6a, 0x40, 0xe5, 0x74, 0xff, 0xdb, 0x61, 0xc7, 0xd9, 0xd1, 0x0f, 0x47, 0x4f, 0x7e, 0x3a, 0xea, 0xac, 0xa1, 0x26, 0x54, 0x8f, 0x76, 0x7f, 0x1c,
0x40, 0xeb, 0xb0, 0x76, 0xb2, 0x3f, 0x7a, 0x35, 0x76, 0x86, 0x27, 0xc3, 0xfd, 0xd1, 0xf0, 0x45, 0x76, 0x0c, 0x74, 0x15, 0xae, 0x1c, 0xee, 0x8e, 0x9e, 0x8e, 0xdd, 0xe1, 0xe1, 0x70, 0x77, 0x34,
0xa7, 0x64, 0xbf, 0x0b, 0xcd, 0xc4, 0x67, 0x54, 0x87, 0xf2, 0xfe, 0xe8, 0x40, 0x88, 0xbc, 0x18, 0x7c, 0xd4, 0xa9, 0x38, 0x1f, 0x42, 0x2b, 0xf5, 0x19, 0x35, 0xc0, 0xdc, 0x1d, 0xed, 0x09, 0x91,
0x8e, 0x0e, 0x3a, 0x86, 0xfd, 0xbb, 0x01, 0x5d, 0x3d, 0x45, 0x74, 0x41, 0x02, 0x8a, 0xe3, 0x1c, 0x47, 0xc3, 0xd1, 0x5e, 0xc7, 0x70, 0xfe, 0x34, 0xa0, 0xab, 0x43, 0x44, 0x17, 0x24, 0xa4, 0x38,
0x4d, 0x48, 0x14, 0x24, 0x39, 0xe2, 0x1b, 0x84, 0xa0, 0x12, 0xe0, 0xb7, 0x2a, 0x43, 0x7c, 0x1d, 0xc1, 0x68, 0x42, 0xe2, 0x30, 0xc5, 0x88, 0x1f, 0x10, 0x82, 0x6a, 0x88, 0xdf, 0x28, 0x84, 0xf8,
0x73, 0x32, 0xc2, 0x5c, 0x9f, 0x67, 0xa7, 0xec, 0x88, 0x0d, 0xfa, 0x14, 0x1a, 0x32, 0x74, 0x6a, 0x7b, 0xc2, 0xc9, 0x08, 0xf3, 0x02, 0x8e, 0x8e, 0xe9, 0x8a, 0x03, 0xfa, 0x02, 0x9a, 0x32, 0x74,
0x56, 0x76, 0xcb, 0xbd, 0xd6, 0x60, 0x53, 0x07, 0x44, 0x5a, 0x74, 0x12, 0x36, 0xfb, 0x10, 0xb6, 0x6a, 0x55, 0xb7, 0xcd, 0x5e, 0x7b, 0x70, 0x5d, 0x4f, 0x88, 0xb4, 0xe8, 0xa6, 0x6c, 0xce, 0x3e,
0x0f, 0xb1, 0xf2, 0x44, 0xe0, 0xa5, 0x2a, 0x26, 0xb6, 0xeb, 0xce, 0x31, 0x77, 0x26, 0xb6, 0xeb, 0x6c, 0xed, 0x63, 0xe5, 0x89, 0xc8, 0x97, 0xaa, 0x98, 0xc4, 0xae, 0x37, 0xc7, 0xdc, 0x99, 0xc4,
0xce, 0x31, 0x32, 0xa1, 0x2e, 0xcb, 0x8d, 0xbb, 0x53, 0x75, 0xd4, 0xd6, 0x66, 0x60, 0xde, 0x56, 0xae, 0x37, 0xc7, 0xc8, 0x82, 0x86, 0x2c, 0x37, 0xee, 0x4e, 0xcd, 0x55, 0x47, 0x87, 0x81, 0x75,
0x24, 0xe3, 0xca, 0xd2, 0xf4, 0x21, 0x54, 0xe2, 0x9b, 0xc0, 0xd5, 0xb4, 0x06, 0x48, 0xf7, 0xf3, 0x5e, 0x91, 0x8c, 0xab, 0x48, 0xd3, 0xa7, 0x50, 0x4d, 0x3a, 0x81, 0xab, 0x69, 0x0f, 0x90, 0xee,
0x38, 0x98, 0x11, 0x87, 0xd3, 0xf5, 0x54, 0x95, 0x97, 0x53, 0x75, 0x94, 0xb6, 0x7a, 0x40, 0x02, 0xe7, 0xe3, 0x70, 0x46, 0x5c, 0x4e, 0xd7, 0xa1, 0x32, 0xf3, 0x50, 0x1d, 0x64, 0xad, 0xee, 0x91,
0x86, 0x03, 0xf6, 0x30, 0xff, 0x4f, 0x60, 0x27, 0x43, 0x93, 0x0c, 0x60, 0x0f, 0xea, 0xd2, 0x35, 0x90, 0xe1, 0x90, 0x5d, 0xce, 0xff, 0x43, 0xb8, 0x51, 0xa0, 0x49, 0x06, 0xb0, 0x03, 0x0d, 0xe9,
0xae, 0x2d, 0x17, 0x57, 0xc5, 0x65, 0xff, 0x5d, 0x82, 0xee, 0xd9, 0x62, 0xea, 0x32, 0xac, 0x48, 0x1a, 0xd7, 0xb6, 0x32, 0xaf, 0x8a, 0xcb, 0xf9, 0xa3, 0x0a, 0xdd, 0x67, 0x8b, 0xa9, 0xc7, 0xb0,
0x77, 0x38, 0xf5, 0x18, 0xaa, 0xbc, 0xa3, 0x48, 0x2c, 0xd6, 0x85, 0x6e, 0xd1, 0x76, 0x0e, 0xe2, 0x22, 0x5d, 0xe0, 0xd4, 0x2d, 0xa8, 0xf1, 0x89, 0x22, 0x73, 0x71, 0x55, 0xe8, 0x16, 0x63, 0x67,
0x5f, 0x47, 0xd0, 0xd1, 0x53, 0xa8, 0x5d, 0xb9, 0x7e, 0x84, 0x29, 0x07, 0x22, 0x41, 0x4d, 0x72, 0x2f, 0xf9, 0x75, 0x05, 0x1d, 0xdd, 0x81, 0xfa, 0xa9, 0x17, 0xc4, 0x98, 0xf2, 0x44, 0xa4, 0x59,
0xf2, 0x76, 0xe4, 0x48, 0x0e, 0xb4, 0x0d, 0xf5, 0x69, 0x78, 0x1d, 0xf7, 0x13, 0x7e, 0x05, 0x1b, 0x93, 0x9c, 0x7c, 0x1c, 0xb9, 0x92, 0x03, 0x6d, 0x41, 0x63, 0x1a, 0x2d, 0x93, 0x79, 0xc2, 0x5b,
0x4e, 0x6d, 0x1a, 0x5e, 0x3b, 0x51, 0x80, 0xde, 0x87, 0xb5, 0xa9, 0x47, 0xdd, 0x73, 0x1f, 0x8f, 0xb0, 0xe9, 0xd6, 0xa7, 0xd1, 0xd2, 0x8d, 0x43, 0xf4, 0x31, 0x5c, 0x99, 0xfa, 0xd4, 0x3b, 0x0e,
0x2f, 0x09, 0x79, 0x43, 0xf9, 0x2d, 0x6c, 0x38, 0xab, 0xf2, 0xf0, 0x28, 0x3e, 0x43, 0x56, 0x5c, 0xf0, 0xf8, 0x15, 0x21, 0xaf, 0x29, 0xef, 0xc2, 0xa6, 0xbb, 0x2e, 0x2f, 0x0f, 0x92, 0x3b, 0x64,
0x49, 0x93, 0x10, 0xbb, 0x0c, 0x9b, 0x35, 0x4e, 0x4f, 0xf6, 0x31, 0x86, 0xcc, 0x9b, 0x63, 0x12, 0x27, 0x95, 0x34, 0x89, 0xb0, 0xc7, 0xb0, 0x55, 0xe7, 0xf4, 0xf4, 0x9c, 0xe4, 0x90, 0xf9, 0x73,
0x31, 0x7e, 0x75, 0xca, 0x8e, 0xda, 0xa2, 0xf7, 0x60, 0x35, 0xc4, 0x14, 0xb3, 0xb1, 0xf4, 0xb2, 0x4c, 0x62, 0xc6, 0x5b, 0xc7, 0x74, 0xd5, 0x11, 0x7d, 0x04, 0xeb, 0x11, 0xa6, 0x98, 0x8d, 0xa5,
0xc1, 0x25, 0x5b, 0xfc, 0xec, 0xb5, 0x70, 0x0b, 0x41, 0xe5, 0x57, 0xd7, 0x63, 0x66, 0x93, 0x93, 0x97, 0x4d, 0x2e, 0xd9, 0xe6, 0x77, 0xcf, 0x85, 0x5b, 0x08, 0xaa, 0xbf, 0x7b, 0x3e, 0xb3, 0x5a,
0xf8, 0x5a, 0x88, 0x45, 0x14, 0x2b, 0x31, 0x50, 0x62, 0x11, 0xc5, 0x52, 0xac, 0x0b, 0xd5, 0x19, 0x9c, 0xc4, 0xdf, 0x85, 0x58, 0x4c, 0xb1, 0x12, 0x03, 0x25, 0x16, 0x53, 0x2c, 0xc5, 0xba, 0x50,
0x09, 0x27, 0xd8, 0x6c, 0x71, 0x9a, 0xd8, 0xd8, 0x47, 0xb0, 0xb9, 0x04, 0xf2, 0x43, 0xf3, 0xf5, 0x9b, 0x91, 0x68, 0x82, 0xad, 0x36, 0xa7, 0x89, 0x03, 0x7a, 0x01, 0x6d, 0x2f, 0x0c, 0x09, 0xf3,
0x8f, 0x01, 0x5b, 0x0e, 0xf1, 0xfd, 0x73, 0x77, 0xf2, 0xa6, 0x40, 0xc6, 0x52, 0xe0, 0x96, 0xee, 0x98, 0x4f, 0x42, 0x6a, 0xad, 0xf3, 0x92, 0xff, 0xae, 0x78, 0x9c, 0x14, 0xa1, 0xd1, 0xdf, 0x3d,
0x06, 0xb7, 0x9c, 0x01, 0x6e, 0xaa, 0x08, 0x2b, 0x5a, 0x11, 0x6a, 0xb0, 0x57, 0xf3, 0x61, 0xaf, 0x93, 0x1e, 0x86, 0x2c, 0x5a, 0xba, 0x59, 0x7d, 0xf6, 0x03, 0xe8, 0xe4, 0x19, 0x50, 0x07, 0xcc,
0xe9, 0xb0, 0x2b, 0x4c, 0xeb, 0x29, 0x4c, 0x13, 0xc0, 0x1a, 0x69, 0xc0, 0xbe, 0x86, 0xed, 0x5b, 0xd7, 0x78, 0x29, 0xe1, 0x4b, 0x5e, 0x13, 0xd7, 0xb8, 0xdf, 0xb2, 0x3f, 0xc5, 0xe1, 0xdb, 0xca,
0x51, 0x3e, 0x14, 0xb2, 0x3f, 0x4a, 0xb0, 0x79, 0x1c, 0x50, 0xe6, 0xfa, 0xfe, 0x12, 0x62, 0x49, 0xd7, 0x86, 0x73, 0x00, 0xd7, 0x73, 0x56, 0x2f, 0x5b, 0x4e, 0xff, 0x1a, 0xb0, 0xe9, 0x92, 0x20,
0x3d, 0x1b, 0x85, 0xeb, 0xb9, 0xf4, 0x5f, 0xea, 0xb9, 0xac, 0x41, 0xae, 0xf2, 0x53, 0x49, 0xe5, 0x38, 0xf6, 0x26, 0xaf, 0x4b, 0x14, 0x54, 0x06, 0xfb, 0xca, 0xc5, 0xd8, 0x9b, 0x05, 0xd8, 0x67,
0xa7, 0x50, 0x8d, 0x6b, 0x9d, 0xa5, 0xb6, 0xd4, 0x59, 0xd0, 0x3b, 0x00, 0xa2, 0x28, 0xb9, 0x72, 0x7a, 0xa4, 0xaa, 0xf5, 0x88, 0x56, 0x15, 0xb5, 0xd5, 0x55, 0x51, 0xd7, 0xab, 0x42, 0x41, 0xde,
0x01, 0x6d, 0x93, 0x9f, 0x9c, 0xca, 0x46, 0xa2, 0xb2, 0xd1, 0xc8, 0xce, 0x46, 0xaa, 0xc2, 0xed, 0xc8, 0x40, 0x9e, 0xe2, 0xd9, 0xcc, 0xe0, 0xe9, 0x7c, 0x0f, 0x5b, 0xe7, 0xa2, 0xbc, 0x6c, 0xca,
0x63, 0xd8, 0x5a, 0x86, 0xea, 0xa1, 0xb0, 0xff, 0x66, 0xc0, 0xf6, 0x59, 0xe0, 0x65, 0x02, 0x9f, 0xfe, 0x36, 0xe1, 0xfa, 0xe3, 0x90, 0x32, 0x2f, 0x08, 0x72, 0x19, 0x4b, 0xdb, 0xcd, 0x28, 0xdd,
0x55, 0xaa, 0xb7, 0xa0, 0x28, 0x65, 0x40, 0xd1, 0x85, 0xea, 0x22, 0x0a, 0x2f, 0xb0, 0x84, 0x56, 0x6e, 0x95, 0x77, 0x69, 0x37, 0x53, 0x4b, 0xb9, 0xc2, 0xa7, 0x9a, 0xc1, 0xa7, 0x54, 0x0b, 0x6a,
0x6c, 0xd2, 0x31, 0x56, 0xb4, 0x18, 0xed, 0x31, 0x98, 0xb7, 0x7d, 0x78, 0x60, 0x44, 0xb1, 0xd7, 0x83, 0xaf, 0x9e, 0x1b, 0x7c, 0xe8, 0x03, 0x00, 0xd1, 0x33, 0x5c, 0xb9, 0x48, 0x6d, 0x8b, 0xdf,
0xc9, 0x4b, 0xd0, 0x14, 0x5d, 0xdf, 0xde, 0x80, 0xf5, 0x43, 0xcc, 0x5e, 0x8b, 0x6b, 0x21, 0xc3, 0x1c, 0xc9, 0x39, 0xa7, 0xd0, 0x68, 0x16, 0xa3, 0x91, 0x6d, 0xc0, 0x97, 0x7a, 0x1f, 0x01, 0xef,
0xb3, 0x87, 0x80, 0xd2, 0x87, 0x37, 0xf6, 0xe4, 0x91, 0x6e, 0x4f, 0x8d, 0x45, 0x8a, 0x5f, 0x71, 0xa3, 0xfb, 0xc5, 0x7d, 0x54, 0x98, 0xd3, 0xff, 0xb9, 0x91, 0x1e, 0xc3, 0x66, 0xde, 0xec, 0xa5,
0xd9, 0x5f, 0x70, 0xdd, 0x47, 0x1e, 0x65, 0x24, 0xbc, 0xbe, 0x0b, 0xba, 0x0e, 0x94, 0xe7, 0xee, 0x07, 0xb3, 0x01, 0x5b, 0xcf, 0x42, 0xbf, 0xb0, 0x30, 0x8a, 0x5a, 0xe9, 0x1c, 0x54, 0x95, 0x02,
0x5b, 0xf9, 0x50, 0xc4, 0x4b, 0xfb, 0x90, 0x7b, 0x90, 0x88, 0x4a, 0x0f, 0xd2, 0xcf, 0xae, 0x51, 0xa8, 0xba, 0x50, 0x5b, 0xc4, 0xd1, 0x09, 0x96, 0xd0, 0x8b, 0x43, 0x16, 0x83, 0xaa, 0x86, 0x81,
0xec, 0xd9, 0xfd, 0x01, 0xd0, 0x2b, 0x9c, 0x4c, 0x00, 0xf7, 0xbc, 0x58, 0x2a, 0x09, 0x25, 0xbd, 0x33, 0x06, 0xeb, 0xbc, 0x0f, 0x97, 0x8c, 0x28, 0xf1, 0x3a, 0xfd, 0x90, 0xb6, 0xc4, 0x47, 0xd3,
0xd0, 0x4c, 0xa8, 0x4f, 0x7c, 0xec, 0x06, 0xd1, 0x42, 0xa6, 0x4d, 0x6d, 0xed, 0x1f, 0x61, 0x43, 0xb9, 0x06, 0x57, 0xf7, 0x31, 0x7b, 0x2e, 0xda, 0x56, 0x86, 0xe7, 0x0c, 0x01, 0x65, 0x2f, 0xcf,
0xd3, 0x2e, 0xfd, 0x8c, 0xe3, 0xa1, 0x17, 0x52, 0x7b, 0xbc, 0x44, 0x9f, 0x43, 0x4d, 0x8c, 0x45, 0xec, 0xc9, 0x2b, 0xdd, 0x9e, 0xda, 0x2a, 0x15, 0xbf, 0xe2, 0x72, 0xbe, 0xe1, 0xba, 0x0f, 0x7c,
0x5c, 0x77, 0x7b, 0xf0, 0x48, 0xf7, 0x9b, 0x2b, 0x89, 0x02, 0x39, 0x47, 0x39, 0x92, 0x77, 0xf0, 0xca, 0x48, 0xb4, 0xbc, 0x28, 0x75, 0x1d, 0x30, 0xe7, 0xde, 0x1b, 0xf9, 0x9d, 0x4d, 0x5e, 0x9d,
0x57, 0x03, 0xda, 0xea, 0xa1, 0x17, 0x43, 0x1b, 0xf2, 0x60, 0x35, 0x3d, 0xd1, 0xa0, 0x27, 0xf9, 0x7d, 0xee, 0x41, 0x2a, 0x2a, 0x3d, 0xc8, 0x6e, 0x2d, 0x46, 0xb9, 0xad, 0xe5, 0x17, 0x40, 0x4f,
0x33, 0xdd, 0xd2, 0x60, 0x6a, 0x3d, 0x2d, 0xc2, 0x2a, 0x22, 0xb0, 0x57, 0x3e, 0x31, 0x10, 0x85, 0x71, 0xba, 0x40, 0xbd, 0xe5, 0x83, 0xaf, 0x40, 0xa8, 0xe8, 0x8d, 0x60, 0x41, 0x63, 0x12, 0x60,
0xce, 0xf2, 0xa0, 0x81, 0x9e, 0x65, 0xeb, 0xc8, 0x99, 0x6c, 0xac, 0x7e, 0x51, 0x76, 0x65, 0x16, 0x2f, 0x8c, 0x17, 0x12, 0x36, 0x75, 0x74, 0x5e, 0xc0, 0x35, 0x4d, 0xbb, 0xf4, 0x33, 0x89, 0x87,
0x5d, 0xf1, 0x9a, 0xd1, 0xa7, 0x03, 0x74, 0xaf, 0x1a, 0x7d, 0x20, 0xb1, 0xf6, 0x0a, 0xf3, 0x27, 0x9e, 0xa8, 0x8a, 0x9d, 0xd3, 0x13, 0xf4, 0x15, 0xd4, 0xc5, 0x56, 0xc9, 0x75, 0x6f, 0x0c, 0x6e,
0x76, 0x7f, 0x86, 0x35, 0xed, 0x85, 0x43, 0x39, 0x68, 0x65, 0xcd, 0x1a, 0xd6, 0x47, 0x85, 0x78, 0xea, 0x7e, 0x73, 0x25, 0x71, 0x28, 0xd7, 0x50, 0x57, 0xf2, 0x0e, 0xfe, 0x69, 0xc2, 0x86, 0xda,
0x13, 0x5b, 0x73, 0x68, 0xeb, 0x4d, 0x0a, 0xe5, 0x28, 0xc8, 0xec, 0xfa, 0xd6, 0xc7, 0xc5, 0x98, 0x93, 0x44, 0x73, 0x21, 0x1f, 0xd6, 0xb3, 0x0b, 0x21, 0xba, 0xbd, 0x7a, 0x25, 0xce, 0xed, 0xf5,
0x13, 0x73, 0x14, 0x3a, 0xcb, 0x3d, 0x24, 0x2f, 0x8f, 0x39, 0xfd, 0x2e, 0x2f, 0x8f, 0x79, 0xad, 0xf6, 0x9d, 0x32, 0xac, 0x22, 0x02, 0x67, 0xed, 0x73, 0x03, 0x51, 0xe8, 0xe4, 0xf7, 0x34, 0x74,
0xc9, 0x5e, 0x41, 0x2e, 0xc0, 0x4d, 0x0b, 0x41, 0x8f, 0x73, 0x13, 0xa2, 0x77, 0x1e, 0xab, 0x77, 0xaf, 0x58, 0xc7, 0x8a, 0xc5, 0xd0, 0xee, 0x97, 0x65, 0x57, 0x66, 0xd1, 0x29, 0xaf, 0x19, 0x7d,
0x3f, 0x63, 0x62, 0x62, 0x01, 0xff, 0x5b, 0x7a, 0x63, 0x51, 0x0e, 0x34, 0xd9, 0x03, 0x87, 0xf5, 0xb9, 0x42, 0x6f, 0x55, 0xa3, 0xef, 0x73, 0xf6, 0x4e, 0x69, 0xfe, 0xd4, 0xee, 0xaf, 0x70, 0x45,
0xac, 0x20, 0xf7, 0x52, 0x50, 0xb2, 0x2b, 0xdd, 0x11, 0x94, 0xde, 0xf2, 0xee, 0x08, 0x6a, 0xa9, 0xfb, 0x02, 0xa3, 0x3b, 0xe5, 0x97, 0x03, 0xfb, 0x6e, 0x29, 0xde, 0xd4, 0xd6, 0x1c, 0x36, 0xf4,
0xc1, 0xd9, 0x2b, 0xc8, 0x83, 0xb6, 0x13, 0x05, 0xd2, 0x74, 0xdc, 0x16, 0x50, 0x8e, 0xf4, 0xed, 0x21, 0x85, 0xee, 0xbe, 0xc3, 0x04, 0xb5, 0x3f, 0x2b, 0xc7, 0x9c, 0x9a, 0xa3, 0xd0, 0xc9, 0xcf,
0xae, 0x66, 0x3d, 0x29, 0xc0, 0x79, 0x73, 0xbf, 0x9f, 0xc3, 0xf7, 0x0d, 0xc5, 0x7a, 0x5e, 0xe3, 0x90, 0x55, 0x38, 0xae, 0x98, 0x77, 0xab, 0x70, 0x5c, 0x35, 0x9a, 0x9c, 0x35, 0xe4, 0x01, 0x9c,
0xff, 0x69, 0x3f, 0xfb, 0x37, 0x00, 0x00, 0xff, 0xff, 0xf3, 0x7c, 0x9c, 0x49, 0xc1, 0x0f, 0x00, 0x8d, 0x10, 0x74, 0x6b, 0x25, 0x20, 0xfa, 0xe4, 0xb1, 0x7b, 0x6f, 0x67, 0x4c, 0x4d, 0x2c, 0xe0,
0x00, 0xbd, 0xdc, 0x0e, 0x80, 0x56, 0xa4, 0xa6, 0x78, 0x21, 0xb2, 0xef, 0x95, 0xe4, 0xce, 0x05, 0x25,
0xa7, 0xd2, 0x05, 0x41, 0xe9, 0x23, 0xef, 0x82, 0xa0, 0x72, 0x03, 0xce, 0x59, 0x43, 0x3e, 0x6c,
0xb8, 0x71, 0x28, 0x4d, 0x27, 0x63, 0x01, 0xad, 0x90, 0x3e, 0x3f, 0xd5, 0xec, 0xdb, 0x25, 0x38,
0xcf, 0xfa, 0xfb, 0x21, 0xfc, 0xdc, 0x54, 0xac, 0xc7, 0x75, 0xfe, 0x97, 0xc0, 0x97, 0xff, 0x05,
0x00, 0x00, 0xff, 0xff, 0xde, 0xd5, 0x38, 0x1a, 0x00, 0x11, 0x00, 0x00,
} }

@ -119,9 +119,10 @@ func (s *ReleaseServer) prepareRelease(req *services.InstallReleaseRequest) (*re
Status: &release.Status{Code: release.Status_PENDING_INSTALL}, Status: &release.Status{Code: release.Status_PENDING_INSTALL},
Description: "Initial install underway", // Will be overwritten. Description: "Initial install underway", // Will be overwritten.
}, },
Manifest: manifestDoc.String(), Manifest: manifestDoc.String(),
Hooks: hooks, Hooks: hooks,
Version: int32(revision), Version: int32(revision),
Annotations: req.Annotations,
} }
if len(notesTxt) > 0 { if len(notesTxt) > 0 {
rel.Info.Status.Notes = notesTxt rel.Info.Status.Notes = notesTxt

@ -103,9 +103,10 @@ func (s *ReleaseServer) prepareRollback(req *services.RollbackReleaseRequest) (*
// message here, and only override it later if we experience failure. // message here, and only override it later if we experience failure.
Description: fmt.Sprintf("Rollback to %d", rbv), Description: fmt.Sprintf("Rollback to %d", rbv),
}, },
Version: crls.Version + 1, Version: crls.Version + 1,
Manifest: prls.Manifest, Manifest: prls.Manifest,
Hooks: prls.Hooks, Hooks: prls.Hooks,
Annotations: prls.Annotations,
} }
return crls, target, nil return crls, target, nil

@ -148,6 +148,12 @@ func (s *ReleaseServer) reuseValues(req *services.UpdateReleaseRequest, current
s.Log("copying values from %s (v%d) to new release.", current.Name, current.Version) s.Log("copying values from %s (v%d) to new release.", current.Name, current.Version)
req.Values = current.Config req.Values = current.Config
} }
if len(req.Annotations) == 0 {
s.Log("copying annotations from %s (v%d) to new release.", current.Name, current.Version)
req.Annotations = current.Annotations
}
return nil return nil
} }

@ -119,9 +119,10 @@ func (s *ReleaseServer) prepareUpdate(req *services.UpdateReleaseRequest) (*rele
Status: &release.Status{Code: release.Status_PENDING_UPGRADE}, Status: &release.Status{Code: release.Status_PENDING_UPGRADE},
Description: "Preparing upgrade", // This should be overwritten later. Description: "Preparing upgrade", // This should be overwritten later.
}, },
Version: revision, Version: revision,
Manifest: manifestDoc.String(), Manifest: manifestDoc.String(),
Hooks: hooks, Hooks: hooks,
Annotations: req.Annotations,
} }
if len(notesTxt) > 0 { if len(notesTxt) > 0 {

Loading…
Cancel
Save