Now in watcher,both JSONSchema and voluptuous are used to validate
JSON payloads. We want to remove voluptuous and Use
JSONSchema as our only JSON validation tool to keep consistence
and also to make it easier to expose the validation schema
through our API in future work.
In this patch, we replace voluptuous with JSONSchema to validate
the migration action in watcher applier.
Partially Implements: blueprint jsonschema-validation
Change-Id: I02bff5db9bd06567bcc33b61a316c42c805bb20e
Now in watcher,both JSONSchema and voluptuous are used to validate
JSON payloads. We want to remove voluptuous and Use
JSONSchema as our only JSON validation tool to keep consistence
and also to make it easier to expose the validation schema
through our API in future work.
In this patch, we replace voluptuous with JSONSchema to validate
the change_nova_service_state action in watcher applier.
Partially Implements: blueprint jsonschema-validation
Change-Id: I09a03fff96d9555024a74ba255c6951affc39de8
Now in watcher,both JSONSchema and voluptuous are used to validate
JSON payloads. We want to remove voluptuous and Use JSONSchema
as our only JSON validation tool to keep consistence and also
to make it easier to expose the validation schema through
our API in future work.
In this patch, we replace voluptuous with JSONSchema to validate
the resize action in watcher applier.
Partially Implements: blueprint jsonschema-validation
Change-Id: I0ee4ba010a9f437658af81d5c971449aefc7f9c4
Now in watcher,both JSONSchema and voluptuous are used to validate
JSON payloads. We want to remove voluptuous and Use
JSONSchema as our only JSON validation tool to keep consistence
and also to make it easier to expose the validation schema
through our API in future work.
In this patch, we replace voluptuous with JSONSchema to validate
the sleep action in watcher applier.
Partially Implements: blueprint jsonschema-validation
Change-Id: I3032490236536a11e7045a56ad0bd40ef979407e
This patch adds feature to cancel action plan in watcher.
A General flow from watcher-api to watcher-applier is implemented.
action plan cancel can cancel any [ongoing, pending, recommended]
action plan, it will update the action states also to "cancelled".
For ongoing actions in action plan, actions needs to be aborted.
Seperate patches will be added to support abort operation
in each action.
Notification part is addressed by a seperate blueprint.
https://blueprints.launchpad.net/watcher/+spec/notifications-actionplan-cancel
Change-Id: I895a5eaca5239d5657702c8d1875b9ece21682dc
Partially-Implements: blueprint cancel-action-plan
Oslo.config deprecated parameter enforce_type and change
its default value to True. Remove the usage of it to avoid
DeprecationWarning: "Using the 'enforce_type' argument is
deprecated in version '4.0' and will be removed in version
'5.0': The argument enforce_type has changed its default
value to True and then will be removed completely."
Change-Id: I59621664773ee5ad264e6da9b15231f30dbb9c40
Closes-Bug: #1694616
The default cinder endpoint type is publicURL in cinderclient.
This patch replaces default cinder endpoint type from
internalURL to publicURL.
Change-Id: Ie6951086e4656bd83195dab151dbaaf948113a7c
Related-Bug: #1686298
Add action get_description in class BaseAction.
This information will be sent to the API side via notification.
Partially Implements: blueprint dynamic-action-description
Change-Id: I9ce1b18ad8c5eb7db62ec926d1859d0f508074b0
This replaces the deprecated (in python 3.2) unittest.TestCase
method assertRaisesRegexp() with assertRaisesRegex().
Change-Id: I38c3055288034aba51c11bb1bccd3655f760cecc
Closes-Bug: #1436957
This patch set adds WatcherJobStore class that allows to link
jobs and services.
Partially-Implements: blueprint background-jobs-ha
Change-Id: I575887ca6dae60b3b7709e6d2e2b256e09a3d824
Currently if user wants to skip some host_aggregates from audit,
it is not possible. This patch adds host_aggregates into the exclude
rule of audit scope. This patch also implements audit-tag-vm-metadata
using scopes.
TODOs:
1. Add tests
2. Remove old implementation of audit-tag-vm-metadata
Change-Id: Ie86378cb02145a660bbf446eedb29dc311fa29d7
Implements: BP audit-tag-vm-metadata
This patch set adds ironicclient.
Change-Id: I122a26465d339ee6e36c0f234d3fd6c57cee2afa
Partially-Implements: blueprint build-baremetal-data-model-in-watcher
New audit state SUSPENDED is added in this patch set. If audit
state with continuous mode is changed from ONGOING to SUSPENDED,
audit's job is removed and the audit is not executed.
If audit state changed from SUSPENDED to ONGOING in reverse,
audit is executed again periodically.
Change-Id: I32257f56a40c0352a7c24f3fb80ad95ec28dc614
Implements: blueprint suspended-audit-state
This patch adds gnocchi support in uniform_airflow strategy
and adds unit tests corresponding to that change.
Change-Id: I347d0129da94a2fc88229d09297765795c5eeb1a
Partiallly-Implements: bp gnocchi-watcher
In DefaultApplier.execute(), Action.list should set eager=True.
Otherwise it will trigger an exception when the notification is sent.
This also causes the FAILURE of
gate-watcher-dsvm-multinode-ubuntu-xenial-nv.
Change-Id: I27db9691727671abb582d4f22283ebda5bd51b07
Closes-Bug: #1676308
This patch adds gnocchi support in outlet_temp_control strategy
and adds unit tests corresponding to that change.
Partiallly-Implements: bp gnocchi-watcher
Change-Id: I2c2e9a86c470f3402adc3dbb7eb9995c643d5b37
This patch adds gnocchi support in workload_balance strategy
and adds unit tests corresponding to that change.
Change-Id: I9bc56c7b91b5c3fd0cfe97d75c3bace50ab22532
Partiallly-Implements: bp gnocchi-watcher
This patch adds gnocchi support in VM-Workload-Consolidation strategy
and adds unit tests corresponding to that change.
Change-Id: I4aab158a6b7c92cb9fe8979bb8bd6338c4686b11
Partiallly-Implements: bp gnocchi-watcher
This commit[1] has removed verbose option due to which our ut's are failing.
This patch is fixing this issue.
[1] https://review.openstack.org/#/c/444217/
Change-Id: I784a7f855f42de462e8fc8f829f5526e1483dab4
This patch adds gnocchi support in workload_stabilization strategy
and adds unit tests corresponding to that change.
Change-Id: I96bd758962bbf67d60e19a99a19451fb80e447b2
Partiallly-Implements: bp gnocchi-watcher
This patch adds the functionality to filter out VMs which have
metadata field 'optimize' set to False. This patch implements the
functionality for basic_consolidation strategy.
Change-Id: Iaf7b63e09534e4a67406e7f092242558b78c0bde
Partially-Implements: BP audit-tag-vm-metadata
This patch adds gnocchi support in basic_consolidation strategy
and adds unit tests corresponding to that change.
Change-Id: Ia1ee55fca8eadffbd244c0247577805b6856369d
Partiallly-Implements: bp gnocchi-watcher
We have two controllers as HA in our OpenStack environment.
There are watcher-applier and watcher-decision-engine in each
controller. So there are two same name in the services table.
In this case, the objects.Service.get_by_name(context, name)
will trigger exception of MultipleResultsFound.
We should use objects.Service.get(context, id) replace of
objects.Service.get_by_name(context, name).
Change-Id: Ic3ce784590d6c2a648cb3b28299744deed281332
Closes-Bug: #1674196
Check the creation time of the actionplan,
and set the state to SUPERSEDED if it has expired.
Change-Id: I900e8dc5011dec4cffd58913b9c5083a6131d70d
Implements: blueprint stale-action-plan
This patch adds instance metadata in the cluster data model. This
is needed for Noisy Neighbor strategy.
Change-Id: Ia92a9f97ba1457ba844cc37a4d443ca4354069e3