@ -51,14 +51,15 @@ func (h *Client) Option(opts ...Option) *Client {
// ListReleases lists the current releases.
func ( h * Client ) ListReleases ( opts ... ReleaseListOption ) ( * rls . ListReleasesResponse , error ) {
reqOpts := h . opts
for _ , opt := range opts {
opt ( & h. o pts)
opt ( & reqO pts)
}
req := & h. o pts. listReq
req := & reqO pts. listReq
ctx := NewContext ( )
if h. o pts. before != nil {
if err := h. o pts. before ( ctx , req ) ; err != nil {
if reqO pts. before != nil {
if err := reqO pts. before ( ctx , req ) ; err != nil {
return nil , err
}
}
@ -79,19 +80,20 @@ func (h *Client) InstallRelease(chstr, ns string, opts ...InstallOption) (*rls.I
// InstallReleaseFromChart installs a new chart and returns the release response.
func ( h * Client ) InstallReleaseFromChart ( chart * chart . Chart , ns string , opts ... InstallOption ) ( * rls . InstallReleaseResponse , error ) {
// apply the install options
reqOpts := h . opts
for _ , opt := range opts {
opt ( & h. o pts)
opt ( & reqO pts)
}
req := & h. o pts. instReq
req := & reqO pts. instReq
req . Chart = chart
req . Namespace = ns
req . DryRun = h. o pts. dryRun
req . DisableHooks = h. o pts. disableHooks
req . ReuseName = h. o pts. reuseName
req . DryRun = reqO pts. dryRun
req . DisableHooks = reqO pts. disableHooks
req . ReuseName = reqO pts. reuseName
ctx := NewContext ( )
if h. o pts. before != nil {
if err := h. o pts. before ( ctx , req ) ; err != nil {
if reqO pts. before != nil {
if err := reqO pts. before ( ctx , req ) ; err != nil {
return nil , err
}
}
@ -110,11 +112,12 @@ func (h *Client) InstallReleaseFromChart(chart *chart.Chart, ns string, opts ...
// DeleteRelease uninstalls a named release and returns the response.
func ( h * Client ) DeleteRelease ( rlsName string , opts ... DeleteOption ) ( * rls . UninstallReleaseResponse , error ) {
// apply the uninstall options
reqOpts := h . opts
for _ , opt := range opts {
opt ( & h. o pts)
opt ( & reqO pts)
}
if h. o pts. dryRun {
if reqO pts. dryRun {
// In the dry run case, just see if the release exists
r , err := h . ReleaseContent ( rlsName )
if err != nil {
@ -123,13 +126,13 @@ func (h *Client) DeleteRelease(rlsName string, opts ...DeleteOption) (*rls.Unins
return & rls . UninstallReleaseResponse { Release : r . Release } , nil
}
req := & h. o pts. uninstallReq
req := & reqO pts. uninstallReq
req . Name = rlsName
req . DisableHooks = h. o pts. disableHooks
req . DisableHooks = reqO pts. disableHooks
ctx := NewContext ( )
if h. o pts. before != nil {
if err := h. o pts. before ( ctx , req ) ; err != nil {
if reqO pts. before != nil {
if err := reqO pts. before ( ctx , req ) ; err != nil {
return nil , err
}
}
@ -149,24 +152,24 @@ func (h *Client) UpdateRelease(rlsName string, chstr string, opts ...UpdateOptio
// UpdateReleaseFromChart updates a release to a new/different chart.
func ( h * Client ) UpdateReleaseFromChart ( rlsName string , chart * chart . Chart , opts ... UpdateOption ) ( * rls . UpdateReleaseResponse , error ) {
// apply the update options
reqOpts := h . opts
for _ , opt := range opts {
opt ( & h. o pts)
opt ( & reqO pts)
}
req := & h. o pts. updateReq
req := & reqO pts. updateReq
req . Chart = chart
req . DryRun = h. o pts. dryRun
req . DryRun = reqO pts. dryRun
req . Name = rlsName
req . DisableHooks = h. o pts. disableHooks
req . Recreate = h. o pts. recreate
req . Force = h. o pts. force
req . ResetValues = h. o pts. resetValues
req . ReuseValues = h. o pts. reuseValues
req . DisableHooks = reqO pts. disableHooks
req . Recreate = reqO pts. recreate
req . Force = reqO pts. force
req . ResetValues = reqO pts. resetValues
req . ReuseValues = reqO pts. reuseValues
ctx := NewContext ( )
if h. o pts. before != nil {
if err := h. o pts. before ( ctx , req ) ; err != nil {
if reqO pts. before != nil {
if err := reqO pts. before ( ctx , req ) ; err != nil {
return nil , err
}
}
@ -184,14 +187,15 @@ func (h *Client) UpdateReleaseFromChart(rlsName string, chart *chart.Chart, opts
// GetVersion returns the server version.
func ( h * Client ) GetVersion ( opts ... VersionOption ) ( * rls . GetVersionResponse , error ) {
reqOpts := h . opts
for _ , opt := range opts {
opt ( & h. o pts)
opt ( & reqO pts)
}
req := & rls . GetVersionRequest { }
ctx := NewContext ( )
if h. o pts. before != nil {
if err := h. o pts. before ( ctx , req ) ; err != nil {
if reqO pts. before != nil {
if err := reqO pts. before ( ctx , req ) ; err != nil {
return nil , err
}
}
@ -200,19 +204,20 @@ func (h *Client) GetVersion(opts ...VersionOption) (*rls.GetVersionResponse, err
// RollbackRelease rolls back a release to the previous version.
func ( h * Client ) RollbackRelease ( rlsName string , opts ... RollbackOption ) ( * rls . RollbackReleaseResponse , error ) {
reqOpts := h . opts
for _ , opt := range opts {
opt ( & h. o pts)
opt ( & reqO pts)
}
req := & h. o pts. rollbackReq
req . Recreate = h. o pts. recreate
req . Force = h. o pts. force
req . DisableHooks = h. o pts. disableHooks
req . DryRun = h. o pts. dryRun
req := & reqO pts. rollbackReq
req . Recreate = reqO pts. recreate
req . Force = reqO pts. force
req . DisableHooks = reqO pts. disableHooks
req . DryRun = reqO pts. dryRun
req . Name = rlsName
ctx := NewContext ( )
if h. o pts. before != nil {
if err := h. o pts. before ( ctx , req ) ; err != nil {
if reqO pts. before != nil {
if err := reqO pts. before ( ctx , req ) ; err != nil {
return nil , err
}
}
@ -221,15 +226,16 @@ func (h *Client) RollbackRelease(rlsName string, opts ...RollbackOption) (*rls.R
// ReleaseStatus returns the given release's status.
func ( h * Client ) ReleaseStatus ( rlsName string , opts ... StatusOption ) ( * rls . GetReleaseStatusResponse , error ) {
reqOpts := h . opts
for _ , opt := range opts {
opt ( & h. o pts)
opt ( & reqO pts)
}
req := & h. o pts. statusReq
req := & reqO pts. statusReq
req . Name = rlsName
ctx := NewContext ( )
if h. o pts. before != nil {
if err := h. o pts. before ( ctx , req ) ; err != nil {
if reqO pts. before != nil {
if err := reqO pts. before ( ctx , req ) ; err != nil {
return nil , err
}
}
@ -238,15 +244,16 @@ func (h *Client) ReleaseStatus(rlsName string, opts ...StatusOption) (*rls.GetRe
// ReleaseContent returns the configuration for a given release.
func ( h * Client ) ReleaseContent ( rlsName string , opts ... ContentOption ) ( * rls . GetReleaseContentResponse , error ) {
reqOpts := h . opts
for _ , opt := range opts {
opt ( & h. o pts)
opt ( & reqO pts)
}
req := & h. o pts. contentReq
req := & reqO pts. contentReq
req . Name = rlsName
ctx := NewContext ( )
if h. o pts. before != nil {
if err := h. o pts. before ( ctx , req ) ; err != nil {
if reqO pts. before != nil {
if err := reqO pts. before ( ctx , req ) ; err != nil {
return nil , err
}
}
@ -255,16 +262,17 @@ func (h *Client) ReleaseContent(rlsName string, opts ...ContentOption) (*rls.Get
// ReleaseHistory returns a release's revision history.
func ( h * Client ) ReleaseHistory ( rlsName string , opts ... HistoryOption ) ( * rls . GetHistoryResponse , error ) {
reqOpts := h . opts
for _ , opt := range opts {
opt ( & h. o pts)
opt ( & reqO pts)
}
req := & h. o pts. histReq
req := & reqO pts. histReq
req . Name = rlsName
ctx := NewContext ( )
if h. o pts. before != nil {
if err := h. o pts. before ( ctx , req ) ; err != nil {
if reqO pts. before != nil {
if err := reqO pts. before ( ctx , req ) ; err != nil {
return nil , err
}
}
@ -273,11 +281,12 @@ func (h *Client) ReleaseHistory(rlsName string, opts ...HistoryOption) (*rls.Get
// RunReleaseTest executes a pre-defined test on a release.
func ( h * Client ) RunReleaseTest ( rlsName string , opts ... ReleaseTestOption ) ( <- chan * rls . TestReleaseResponse , <- chan error ) {
reqOpts := h . opts
for _ , opt := range opts {
opt ( & h. o pts)
opt ( & reqO pts)
}
req := & h. o pts. testReq
req := & reqO pts. testReq
req . Name = rlsName
ctx := NewContext ( )