This repo is now testing only with Python 3, so let's make
a few cleanups:
- Remove python 2.7 stanza from setup.py
- Add requires on python >= 3.6 to setup.cfg so that pypi and pip
know about the requirement
- Remove obsolete sections from setup.cfg
- Update classifiers
- Update requirements, no need for python_version anymore
- Use newer openstackdocstheme and reno version
- Update hacking version to 3.0
- move python3 setting into toxenv, remove install_command and
move constraints into deps
Change-Id: Ibb42f8199eb4ca93e438e5e7ef5d4c4e0b35a738
The repo is Python 3 now, so update hacking to version 3.0 which
supports Python 3.
Fix problems found.
Change-Id: Ia621c3fea2b8ded8df7727c07931ad071a61e736
Now that we no longer support older version of Python, there is no need
to use the third party 'mock' library for test mocking and can instead
use the standard library unittest mock module.
Change-Id: I1ea77249834e6c595c88f257226a483633be5f7a
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
Currently Aodh only supports global quota for projects and users, we
need quota API to manage quotas per project.
The new quota API only supports project quotas as the same with other
openstack services.
By default, only admin user can update the quota.
TODO(in subsequent patches):
- Check quota from DB when creating resources
- Doc
- Release note
- openstack CLI support
Change-Id: I9258ae4801edbc5289d890fe2e060964a73b216c
Use the config options in 'service_credentials' section to get Keystone
session, so that options like 'cafile', 'insecure', etc. could be used.
Related Story: #2007181
Related Task: #38297
Change-Id: I2f78ca7406737c6e181a1ff5fe416925019c5720
The normal users can get all other projects alarms because no project_id
filter when querying the db.
Change-Id: I024ff3ec0e5c21f2f6cef9fa453cfb1497921947
Support to deploy aodh-evaluator in active/active mode by leveraging
database non-locking mechanism. With this feature, there could be
multiple aodh-evaluator processes running without dependency of etcd or
zookeeper.
The main change is in aodh/evaluator/__init__.py, in order to use
non-locking db update, a new column named 'evaluate_timestamp' is
introduced to 'alarm' table. all other code is changed
because of 'storage_conn.get_alarms()' implementation changed.
Change-Id: I666817cdcf9083f2ad5871d157900cb6dc5a86e0
In the autoscaling scenario, the resource which should be marked as
unhealthy is always the parent resource of the failed load balancer pool
member.
Change-Id: I30cfe9d1cc8c7209e6f865bdd721494dcb4e33ed
Add file to the reno documentation build to show release notes for
stable/train.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/train.
Change-Id: I01d7f28ce9131c45679aa6fcd1cb2ef5b60ecc3a
Sem-Ver: feature
As part of Train community goal 'Support IPv6-Only Deployments and Testing'[1],
Tempest has defined the base job 'devstack-tempest-ipv6' which will
deploy services on IPv6.
This commit Run 'telemetry-dsvm-integration-ipv6-only' job in Aodh gate.
Story: #2005477
Task: #35939
[1] https://governance.openstack.org/tc/goals/train/ipv6-support-and-testing.html
Change-Id: I5506631a17003f84c22acd6f8b92faf84047ebc4
This patch improves heat notifier by removing the hard requirement for
Octavia tags. When Aodh is deployed in an environment that Octavia
doens't support tags yet(before stable/stein), heat notifier will do
resource search by the Octavia member ID.
Note:
Both approaches need specific Heat template definition:
1. Use Octavia tags.
pool_member:
type: OS::Octavia::PoolMember
properties:
address: {get_attr: [server, first_address]}
pool: {get_param: pool_id}
protocol_port: {get_param: webserver_port}
tags: [{get_param: "OS::stack_id"}]
2. Resource search.
outputs:
OS::stack_id:
value: { get_resource: pool_member }
Change-Id: Ic2328aa907d23c6b6f827661a3fb3cb26f8496fd
Some options are now automatically configured by the version 1.20:
- project
- html_last_updated_fmt
- latex_engine
- latex_elements
- version
- release.
Change-Id: I33deff1b7c87d223af33cc8f95273e3795a74065
From stein we will be porting to python3.
To deal with that, when calling for class PartitionCoordinator
the member id need to be encoded in byte format
otherwise it raises MemberNotInGroupError exception.
Closes-Bug: https://storyboard.openstack.org/#!/story/2005894
Change-Id: Idee3216c7c1b4f6391d08649637e619ba1a0ac13
1. Sync sphinx dependency with global requirements. It caps python 2 since
sphinx 2.0 no longer supports Python 2.7.
2. Update some URLs to latest
Change-Id: I24cb8d8d084a291028a961823fcac4f09b4bf1ca
Use user_domain_name as a fallback if no user_domain_id is provided,
the default keystone password auth uses only user_domain_id, if not
provided aodh will fail getting a token, add the extra
user_domain_name parameter to the authentication.
Closes-Bug: #1831181
Change-Id: I170267ddbed31f63717e1c8fe119b2557afc812e
Signed-off-by: Jorge Niedbalski <jorge.niedbalski@canonical.com>
The auto-healing notifier works together with loadbalancer_member_health
evaluator.
Presumably, the end user defines a Heat template which contains an
autoscaling group and all the members in the group are joined in an
Octavia load balancer in order to expose service to the outside, so that
when the stack scales up or scales down, Heat makes sure the new members
are joining the load balancer automatically and the old members are
removed.
However, this notifier deals with the situation that when some member
fails, the stack could be recovered by marking the given autoscaling
group member unhealthy, then update Heat stack in place.
Change-Id: I6e92d1fc2125e155bb5068ff2c14fa318b126442