master
81 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
5d4682dc9d |
Switch PlacementHelper to OpenStackSDK
Replace raw keystoneauth1 HTTP calls with the OpenStackSDK placement proxy. This aligns PlacementHelper with the SDK-based approach used elsewhere in Watcher. Key changes: - Use connection.placement.resource_provider_inventories() instead of raw GET requests - Rename from_placement_api to from_openstacksdk to match the wrapper pattern in nova_helper - Use BaseConnectionMixin to provide the sdk connection - Remove unused osc parameter from PlacementHelper - Add [placement] config group with keystoneauth options - Deprecate [placement_client] options in favor of [placement] - Update PlacementResourcesMixin to return real OpenStackSDK ResourceProviderInventory objects - Rewrite tests to mock the SDK connection Generated-By: claude-code (claude-opus-4.6) Change-Id: I554e04693064e64f798e6f5bb99557ec8b5daa85 Signed-off-by: jgilaber <jgilaber@redhat.com> |
||
|
|
00faaed59d |
Replace keystoneclient with openstacksdk
Replace the frozen python-keystoneclient with the openstacksdk identity proxy in KeystoneHelper. Add a new [keystone] config group with adapter, session and auth options, and deprecate the old [keystone_client] options with a migration path. Remove the unused osc parameter from KeystoneHelper. Update devstack plugin, fixtures and unit tests accordingly. Change-Id: I57e98236e3b066cb77620cd952508da69fc28c8a Signed-off-by: jgilaber <jgilaber@redhat.com> |
||
|
|
55ee1477f1 |
Add watcher-grenade-skip-level-always job
watcher-grenade-skip-level-always job will tests upgrade from N-2 to N release. Note: - It also adds scenario tests in grenade job - It also drops unused from_rocky upgrade devstack file. - It adds the new job to check and gate pipeline. Change-Id: Iaf1a2ae5c4dfb3df39902d1b66a98152068a9349 Signed-off-by: Chandan Kumar (raukadah) <chkumar@redhat.com> |
||
|
|
06e361e0aa |
Prepare to use openstacksdk instead of novaclient
Prepare Watcher to use openstacksdk. This patch introduces a new function in the clients module to create a openstacksdk connection either using a user token, an existing keystone session or a new keystone session. Additionally, it adds a method to the newly introduced wrapper classes to create nova server, hypervisors, flavors, etc from the objects returned by the openstacksdk compute proxy. This patch also deprecates the nova_client configuration options and adds keystoneauth configuration options into the nova conf group, since that is required by the openstacksdk to create a Connection. The nova group will be the preferred section to configure the connnection to nova, with the currently used watcher_clients_auth as fallback to avoid upgrade impact. In the future, once all services are accessed through the openstacksdk, the watcher_clients_auth section should be removed. Add a call to the configure_keystoneauth function in the the devstack plugin to populate the [nova] section with the keystoneauth parameters. Assisted-By: claude-code (claude-sonnet-4.5) Change-Id: I7e297419243f16548a54e332609bbcbd19c3d758 Signed-off-by: jgilaber <jgilaber@redhat.com> |
||
|
|
a71d3ea663 | Merge "devstack: Remove ineffective ssl options" | ||
|
|
e80d889711 | Merge "Deprecate unused [DEFAULT] bindir" | ||
|
|
bc5614d9be |
devstack: Remove ineffective ssl options
The [DEFAULT] enabled_ssl_apis option has never been implemented in watcher. Also in recent devstack tls-proxy is used to terminate SSL connection. Change-Id: Iaad11479046c0dd11729b35da7cce6558af58132 Signed-off-by: Takashi Kajinami <kajinamit@oss.nttdata.com> |
||
|
|
2bcbb7473c |
Deprecate unused [DEFAULT] bindir
This option was added long ago but has never been used. Deprecate it so that we can drop it completely during next cycle. Also drop the paths module which is not actually used. Change-Id: Ie7871e42c2fcec78f73ba880071603f6fec11e1e Signed-off-by: Takashi Kajinami <kajinamit@oss.nttdata.com> |
||
|
|
13379c9c92 |
devstack: Drop ineffective port variables
Now wathcer's devstack plugin only supports deployment using uwsgi, which uses different path, instead of different port, per service. Change-Id: I88bb7c10c250ef5aab184a62137ce3a4c3201f37 Signed-off-by: Takashi Kajinami <kajinamit@oss.nttdata.com> |
||
|
|
03c09825f7 |
Extend compute model attributes
This patch extends compute model attributes by adding new fields to Instance element. Values are populated by nova the collector, using the same nova list call, but requires a more recent compute API microversion. A new config option was added to allow users to enable or disable the extended attributes and it is disable by default. Configure prometheus-based jobs to run on newer version of nova api (2.96) and enables the extended attributes collection. Implements: bp/extend-compute-model-attributes Assisted-By: Cursor (claude-4-sonnet) Change-Id: Ibf31105d780dce510a59fc74241fa04e28529ade Signed-off-by: Douglas Viroel <viroel@gmail.com> |
||
|
|
e06f1b0475 |
API changes for skipped actions: patch actions and status_message
This patch implements the changes in the API required for the
skipped action blueprint. It includes:
- New field `status_message` is visible in API get calls for Audits,
ActionPlans and Audits.
- New Patch call is added to `/actions/{action_id}` which allows to
manually move actions in PENDING state to SKIPPED for ActionPlans
which have not been started.
- A new API microversion 1.5 is added for these changes.
It also adds requried tests and documentation.
Implements: blueprint add-skip-actions
Assisted-By: Cursor (claude-4-sonnet)
Change-Id: I71fb9af76085e5941a7fd3e9e4c89d6f3a3ada47
Signed-off-by: Alfredo Moralejo <amoralej@redhat.com>
|
||
|
|
adfe3858aa |
Configure watcher tempest's microversion in devstack
Adds a tempest configuration for min and max microversions supported by watcher. This help us to define the correct range of microversion to be tested on each stable branch. New microversion proposals should also increase the default max_microversion, in order to work with watcher-tempest-plugin microversion testing. Change-Id: I0b695ba4530eb89ed17b3935b87e938cadec84cc Signed-off-by: Douglas Viroel <viroel@gmail.com> |
||
|
|
a559c0505e |
devstack: Drop template for mod_wsgi
... because mod_wsgi support was already removed by [1].
[1]
|
||
|
|
188e583dcb |
Drop sg_core related prometheus var
https://review.opendev.org/c/openstack/devstack-plugin-prometheus/+/950476 adds the support for passing custom scrape target and https://github.com/openstack-k8s-operators/sg-core/pull/25 drops sg_core prometheus related vars. So we also need to sg_core related prometheus vars from our job. This cr achieves the same. Depends-On: https://github.com/openstack-k8s-operators/sg-core/pull/25 Depends-On: https://review.opendev.org/c/openstack/devstack-plugin-prometheus/+/950476 Change-Id: I6c8f54f8749e81b532c88e9224022294c4a1d331 Signed-off-by: Chandan Kumar (raukadah) <chkumar@redhat.com> |
||
|
|
f38ab70ba4 |
drop suse supprot in the devstack plugin
suse has not been a testing runtime for a few releases and we have no jobs currently validating it still work. this change just removes the suse specific logic Change-Id: I357fa71704af7aa6239054ede29d0fdcdc3fb8b5 |
||
|
|
1b12e80882 | Merge "Make prometheus the default devstack example" | ||
|
|
57b248f9fe |
Add support for pyproject.toml and wsgi module paths
pip 23.1 removed the "setup.py install" fallback for projects that do not have pyproject.toml and now uses a pyproject.toml which is vendored in pip [1][2]. pip 24.2 has now deprecated a similar fallback to "setup.py develop" and plans to fully remove this in pip 25.0 [3][4][5]. pbr supports editable installs since 6.0.0 pip 25.1 has now been released and the removal is complete. by adding our own minimal pyproject.toml to ensure we are using the correct build system. This change also requires that we adapt how we generate our wsgi entry point. when pyproject.toml is used the wsgi console script is not generated in an editbale install such as is used in devstck To adress this we need to refactor our usage of our wsgi applciation to use a module path instead. This change does not remove the declaration of our wsgi_scrtip entry point but it shoudl be considered deprecated and it will be removed in the future. To unblock the gate the devstack plugin is modifed to to deploy using the wsgi module instead of the console script. Finally supprot for the mod_wsgi wsgi mode is removed. that was deprecated in devstack a few cycle ago and support was removed in I8823e98809ed6b66c27dbcf21a00eea68ef403e8 [1] https://pip.pypa.io/en/stable/news/#v23-1 [2] https://github.com/pypa/pip/issues/8368 [3] https://pip.pypa.io/en/stable/news/#v24-2 [4] https://github.com/pypa/pip/issues/11457 [5] https://ichard26.github.io/blog/2024/08/whats-new-in-pip-24.2/ Closes-Bug: #2109608 Depends-on: https://review.opendev.org/c/openstack/watcher/+/948502 Change-Id: Iad77939ab0403c5720c549f96edfc77d2b7d90ee |
||
|
|
2c76da2868 |
Make prometheus the default devstack example
Change the devstack local.conf samples and devstack multinode contributor doc to demonstrate deploying watcher with prometheus as datasource instead of gnocchi. Keep the gnocchi as an alternative deployment example. Depends-On: https://review.opendev.org/c/openstack/watcher/+/946230 Depends-On: https://review.opendev.org/c/openstack/devstack-plugin-prometheus/+/946254 Change-Id: I721b550a03f9e5350a3f1ab10292faa1c50049a7 |
||
|
|
32756dc7b4 | Merge "Replace deprecated configure_auth_token_middleware" | ||
|
|
29c94c102b |
Replace deprecated configure_auth_token_middleware
It was deprecated some years ago by [1]. [1] https://review.opendev.org/628651 Change-Id: Id5bb081a745a0698ce0d297c098394bfd1ad6788 |
||
|
|
5fadd0de57 |
[pre-commit] Fix execute and shebang lines
This commit removes the execute bit from several files and remove the shebang lines from the devstack plugin. While the devstack plugin is written in bash, it is not an executable script. The devstack plugin is sourced by devstack as needed, as such it is not executed in a subshell and the #!/bin/bash lines are not used even when present. Change-Id: I82ca22b7a47bf267fe6cf11f3e3519510108c146 |
||
|
|
38288dd9c8 |
Run watcher-db-manage in grenade testing from venv
grenade install and run everything from virtual env - https://review.opendev.org/c/openstack/grenade/+/930507 watcher-db-manage in watcher grenade job needs to be run accordingly and not from system level. Otherwise it will fail with below error - https://zuul.opendev.org/t/openstack/build/02c3bd4814ea4d0580f7dfd346416425/log/controller/logs/grenade.sh_log.txt Depends-On: https://review.opendev.org/c/openstack/watcher/+/933062 Change-Id: I73e94222c89c6a12a6006d42637cd194a09005ac |
||
|
|
097ac06f0b |
Use uwsgi binary from path and mark grenade non-voting
Change-Id: Iaa6283e3f34166210cc2d0c918e610484bfd3ab9 |
||
|
|
c17e96d38b |
Add procname for uwsgi based service watcher-api
Code in grenade and elsewhere rely on the process/service name when one runs "ps auxw" and they grep for example "grep -e watcher-api" to check if the service is running. with uwsgi, let us make sure we use process name prefix so it is easier to spot the services and be compatible with code elsewhere that relies on this. Reference: https://review.opendev.org/#/c/494531/ Change-Id: I69dbe8840e87a8cb0b2720caa95fb17fb7a30848 |
||
|
|
26cce968e9 |
[train][goal] Define new 'watcher-tempest-functional-ipv6-only' job
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 adds the new job 'watcher-tempest-functional-ipv6-only' run on gate which is derived from 'devstack-tempest-ipv6'. Verification structure will be: - 'devstack-IPv6' deploy the service on IPv6 - 'devstack-tempest-ipv6' run will verify the IPv6-only setting and listen address - 'watcher-tempest-functional-ipv6-only' will run the tests. Story: #2005477 Task: #35939 [1] https://governance.openstack.org/tc/goals/train/ipv6-support-and-testing.html Change-Id: I42b7e5ff5fd64a21bdb8a32f319759a18c173601 |
||
|
|
5b12642c1d | Merge "Remove notifier_driver option in Watcher devstack" | ||
|
|
8bddafbdc3 |
Remove notifier_driver option in Watcher devstack
According to https://review.opendev.org/#/c/251791/, watcher_messaging group and notifier_driver option were deprecated. Change-Id: I2cd114060d1960f77dfa8f4fe0a6d0fc05de5d4c |
||
|
|
8ccee88296 | Merge "Configure nova notification_format for grenade" | ||
|
|
1b41d92b9e | Merge "Add uWSGI support" | ||
|
|
c1a5e443fe |
Add uWSGI support
This patch implements uWSGI support for Watcher API service. Because mod_wsgi is deprecated, using uwsgi to replace of mod_wsgi. Most of Openstack projects have finished it. Closes-Bug: #1834392 Change-Id: I3fad8d30a15aba493fb91da9337c2515ddea5167 |
||
|
|
9c9f336f10 |
Configure nova notification_format for grenade
Nova changed the default notification_format from "both" to "unversioned" in Train [1]. Without configuring nova in the grenade job we are not testing the nova versioned notification handler code during upgrades. Note that grenade only runs stack.sh on the base (old) side so this change has to depend on a devstack stable/stein change to add the NOVA_NOTIFICATION_FORMAT variable that we override. Closes-Bug: #1831917 Depends-On: Ied9d50b07c368d5c2be658c744f340a8d1ee41e0 [1] https://review.opendev.org/603079/ Change-Id: I94c2d14477da185310e0fec596a1ad6436b802f1 |
||
|
|
966a4dfa5f |
Configure nova notification format in non-grenade CI jobs
Nova used to emit versioned and unversioned notiifcations by default but that changed in https://review.opendev.org/603079/ so now nova emits only unversioned notifications by default. Watcher listens for versioned notifications so we need to configure nova to emit both versioned (for Watcher) and unversioned (for Ceilometer) notifications explicitly. This adds an override-defaults file so devstack will load up the nova devstack variable to set the notification_format before importing and stacking the nova lib script. Note that this only fixes the non-grenade CI jobs since grenade requires separate handling for overriding defaults which is proving hard to do and will be addressed in a separate change. Partial-Bug: #1831917 Change-Id: I7e441608b38338eecd80e663ed3abe66a89e504f |
||
|
|
9b8d1445f1 |
remove tail_log
tail_log is deprecated and should be removed https://github.com/openstack/devstack/blob/master/functions-common#L1611 Change-Id: I6012fd63aa6b0cdb8ed1b278880f8f6c3e4d38cf |
||
|
|
08622c6c80 | Merge "typo ceilometer url" | ||
|
|
e4fc5a08ed |
typo ceilometer url
Change-Id: I2cb24249ed1e82dd85c0f586532e5a7cbc57f2c0 |
||
|
|
28df60e275 |
Fix base enable_plugin branch for grenade run
We should be starting from stable/stein on the "old" side of grenade runs now. Rather than hard-code the branch, just use the BASE_DEVSTACK_BRANCH variable. Change-Id: I1b0406f870ed0ae5622cfa7421a6cca00d0f891c |
||
|
|
173bf11a7d |
Use the common logging setup function in devstack runs
To get log formatting like the other openstack projects running in devstack the setup_logging function should be used. This will also give us the "Display level" formatting in the logs via the os-loganalyze packaged used by infra. Needed by: https://review.opendev.org/657652 Change-Id: I5e9bd5a142e45804e8d915b370746a2142243088 |
||
|
|
647b5e9483 |
Drop use of git.openstack.org
Our cgit instance will be going away and opendev.org is the new preferred URL for browsing our git repos. Redirects will exist for the foreseeable future, but it's more efficient to just go directly to the new locations. Change-Id: I7dd9d454da63167832bab02c89be98a2ce03b72a |
||
|
|
f36c25b52f |
Replace HOST_IP to SERVICE_HOST
HOST_IP only used by ipv4, SERVICE_HOST is used by ipv4 or ipv6. Change-Id: I50d66f4fbe9cd80e32fe4cf67f8a6ae19b500c0d |
||
|
|
b023c9076f |
Replace openstack.org git:// URLs with https://
This is a mechanically generated change to replace openstack.org git:// URLs with https:// equivalents. This is in aid of a planned future move of the git hosting infrastructure to a self-hosted instance of gitea (https://gitea.io), which does not support the git wire protocol at this stage. This update should result in no functional change. For more information see the thread at http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003825.html Change-Id: I3452a7802dde00d8be32c833d714b2974be58e16 |
||
|
|
103e5b5605 |
Add grenade job
This patch set adds grenade support to Watcher based on legacy-dsvm-base job. Change-Id: I9e23f59f7415aa350b2da644d8801621533b69b0 |
||
|
|
b0c504cd1e |
Fix stop_watcher function
Apache should be reloaded after watcher-api is disabled. Change-Id: Ifee0e7701849348630568aa36b3f3c4c62d3382e |
||
|
|
a30ee72ec5 | Merge "start tls-proxy (if enabled) before checking for api" | ||
|
|
b4b625c9f5 |
start tls-proxy (if enabled) before checking for api
When tls-proxy is enabled, first start the tls-proxy and then then wait for api to come up. Without this the api comes up on the internal port as a result the subsequent curl fails killing the deployment - create a zuul job to test with tls - fix apache ports accordingly Depends-On: Ie665240b53df92b8e5ca509e998e95d859bd5282 Change-Id: I610a7a24daab68c7ab0e30977e3cabd62cdb56a5 |
||
|
|
93890fb290 |
Don't need nova notifications
Now we have removed nova legacy notifications in Watcher and just consume nova versioned notifications, we don't need notification config in nova.conf Change-Id: I1c9c141d98d858c36ad8bb7be0b95c38ff1d5752 |
||
|
|
4e49ad64c0 | Merge "Replaced deprecated oslo_messaging_rabbit section" | ||
|
|
52a5c99fc5 |
Replaced deprecated oslo_messaging_rabbit section
Added creation of [DEFAULT]/transport_url value in devstack. Also, fixed same topic in docs. Change-Id: I9ad9475c4fccf023daac40c0b1e841eeeb22f040 Closes-Bug: 1738329 |
||
|
|
6bb0432ee7 |
ZuulV3 jobs
This patch set removes legacy-* jobs and migrates tempest functional job to ZuulV3 syntax. Change-Id: I87771737cc713eae20b4d6aaaefefc5e40875666 Implements: blueprint migrate-to-zuulv3 |
||
|
|
3430493de1 |
Fix tempest devstack error
Devstack failed because mysql wasn't enabled. Change-Id: Ifc1c00f2dddd0f3d67c6672d3b9d3d4bd78a4a90 Closes-Bug: #1744224 |
||
|
|
aa2b213a45 | Merge "Register default policies in code" |
