• Timofey Kirillov's avatar
    Fix `no RESOURCE with the name NAME found` · 5ffe4ce5
    Timofey Kirillov authored
    This is the fix for only one particular, but important case.
    
    The case when a new resource has been added to the chart and
    there is an error in the chart, which leads to release failure.
    In this case after first failed release upgrade new resource will be
    created in the cluster. On the next release upgrade there will be the error:
    `no RESOURCE with the name NAME found` for this newly created resource
    from the previous release upgrade.
    
    The root of this problem is in the side effect of the first release process,
    Release invariant says: if resouce exists in the kubernetes cluster, then
    it should exist in the release storage. But this invariant has been broken
    by helm itself -- because helm created new resources as side effect and not
    adopted them into release storage.
    
    To maintain release invariant for such case during release upgrade operation
    all newly *successfully* created resources will be deleted in the case
    of an error in the subsequent resources update.
    
    This behaviour will be enabled only when `--cleanup-on-fail` option used
    for `helm upgrade` or `helm rollback`.
    Signed-off-by: 's avatarTimofey Kirillov <timofey.kirillov@flant.com>
    5ffe4ce5
Name
Last commit
Last update
..
chartutil Loading commit data...
downloader Loading commit data...
engine Loading commit data...
getter Loading commit data...
helm Loading commit data...
hooks Loading commit data...
ignore Loading commit data...
kube Loading commit data...
lint Loading commit data...
manifest Loading commit data...
plugin Loading commit data...
proto/hapi Loading commit data...
provenance Loading commit data...
releasetesting Loading commit data...
releaseutil Loading commit data...
renderutil Loading commit data...
repo Loading commit data...
resolver Loading commit data...
rudder Loading commit data...
storage Loading commit data...
strvals Loading commit data...
sympath Loading commit data...
tiller Loading commit data...
timeconv Loading commit data...
tlsutil Loading commit data...
urlutil Loading commit data...
version Loading commit data...