Fix armada object can override values by --set

This PS fix to override values by --set option.
Now values come from --set are overriden on self.documents object.
But self.manifest object don't know what happens.
So need to update self.manifest object after override.

Change-Id: I714224788b4b6bd3da3508982821c59b5cff4a42
This commit is contained in:
DaeSeong Kim 2018-03-21 18:54:21 -07:00
parent 7be7a3f82a
commit 6b46a8eff8
1 changed files with 5 additions and 16 deletions

View File

@ -90,24 +90,19 @@ class Armada(object):
self.disable_update_post = disable_update_post self.disable_update_post = disable_update_post
self.enable_chart_cleanup = enable_chart_cleanup self.enable_chart_cleanup = enable_chart_cleanup
self.dry_run = dry_run self.dry_run = dry_run
self.overrides = set_ovr
self.tiller_should_wait = tiller_should_wait self.tiller_should_wait = tiller_should_wait
self.tiller_timeout = tiller_timeout self.tiller_timeout = tiller_timeout
self.tiller = Tiller( self.tiller = Tiller(
tiller_host=tiller_host, tiller_port=tiller_port, tiller_host=tiller_host, tiller_port=tiller_port,
tiller_namespace=tiller_namespace) tiller_namespace=tiller_namespace)
self.values = values self.documents = Override(
self.documents = documents documents, overrides=set_ovr,
self.target_manifest = target_manifest values=values).update_manifests()
self.k8s_wait_attempts = k8s_wait_attempts self.k8s_wait_attempts = k8s_wait_attempts
self.k8s_wait_attempt_sleep = k8s_wait_attempt_sleep self.k8s_wait_attempt_sleep = k8s_wait_attempt_sleep
self.manifest = self.get_armada_manifest() self.manifest = Manifest(
def get_armada_manifest(self):
return Manifest(
self.documents, self.documents,
target_manifest=self.target_manifest target_manifest=target_manifest).get_manifest()
).get_manifest()
def find_release_chart(self, known_releases, name): def find_release_chart(self, known_releases, name):
''' '''
@ -139,12 +134,6 @@ class Armada(object):
raise validate_exceptions.InvalidManifestException( raise validate_exceptions.InvalidManifestException(
error_messages=details) error_messages=details)
# Override manifest values if --set flag is used
if self.overrides or self.values:
self.documents = Override(
self.documents, overrides=self.overrides,
values=self.values).update_manifests()
result, msg_list = validate.validate_armada_manifests(self.documents) result, msg_list = validate.validate_armada_manifests(self.documents)
if not result: if not result:
raise validate_exceptions.InvalidArmadaObjectException( raise validate_exceptions.InvalidArmadaObjectException(