When using token to init a new openstacksdk connection, the SDK try to fetch
another token from it, causing keystone raise exception and return 500 status
response. Refer: https://bugs.launchpad.net/keystone/+bug/1959674
Switch from `token` to `admin_token` to make the SDK session use the provided
token directly instead of fetching a new one.
Closes-bug: #2048452
Depends-On: https://review.opendev.org/c/openstack/senlin/+/905555
Change-Id: I8f9b2db3d4851cf54c2113b2fb0ae97ae38ac286
Excluding CLUSTER_RESIZE from the list of actions that skip
pre-operation checks if the cluster is already at the minimum threshold.
When the cluster is at the minimum threshold, pre-op LB will function
with actions such as CLUSTER_DEL_NODES, CLUSTER_SCALE_IN, NODE_DELETE,
and will skip actions like CLUSTER_REPLACE_NODES and CLUSTER_RESIZE.
Closes-Bug: #2049191
Change-Id: I00a7ea40f69bafc94ca2bba9f268af7b03344997
In cases where the cluster's desired capacity equals
the minimum size, executing an action causing node
(exception: CLUSTER_REPLACE_NODES) reduction led to
premature removal of the node's IP from the load
balancer during the pre_op step.
The commit addresses this issue by introducing a check
to skip the pre_op step if the cluster is already at
its minimum size. Now, when desired_capacity equals min_size,
the pre_op step is bypassed, preventing unnecessary
removal of IPs from the load balancer.
Closes-Bug: #2048100
Change-Id: Ia7389e8c555497cfa5ccbdca77258f4165dfc62d
The SCALE_IN action in the lb_policy module was removing only
one node from the load balancer, regardless of the specified
count when the count was greater than 1. This was due to a
hard-coded count of 1 in the _get_delete_candidates function.
The root cause has been addressed by updating the
_get_delete_candidates function to dynamically handle the count
for SCALE_IN. The count is now retrieved from the action inputs,
and if not specified or invalid, it defaults to 1.
Closes-Bug: #2048099
Change-Id: I9ff12dec26f4c558ef5ef84de87668e9668cec80
Re-arranged sessions to always be at the top level to make
it easier to know the origin of the current session. This
is important now that we no longer have autocommit enabled.
- Added zuul job testing sqlalchemy 2.x.
- Added new db api for service cleanup.
- Removed broken sqlite cleanup step during testing.
Change-Id: I168f3d9518611ac66cb9eec1132a7add19e92d5f
Add file to the reno documentation build to show release notes for
stable/2023.2.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2023.2.
Sem-Ver: feature
Change-Id: I3642f2965f47092415eedc3712613cdd240a387d
sqlalchemy-migrate is no longer supported and we need to switch
to alembic for database migrations.
Change-Id: I2e51b4027f7af63944b5504ddcf50e9e48818259
Add file to the reno documentation build to show release notes for
stable/2023.1.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/2023.1.
Sem-Ver: feature
Change-Id: If57c289b2e8e411504b187add037e7c1c1b0d54e
Add file to the reno documentation build to show release notes for
stable/zed.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/zed.
Sem-Ver: feature
Change-Id: Idf86ef4c6d9b56e11cd4361cb5b7734f6ade9d37
In Zed cycle, we have dropped the python 3.6/3.7[1] testing
and its support. Removing the py36 centos8 job as well as
updating the python classifier also to reflect the same.
[1] https://governance.openstack.org/tc/reference/runtimes/zed.html
Change-Id: I253757e2035dbe667905f011f9d05cc5d94e669e
Add file to the reno documentation build to show release notes for
stable/yoga.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/yoga.
Sem-Ver: feature
Change-Id: I9ed3ad805822f66c84e74a6dded060be44c77d0c
Add file to the reno documentation build to show release notes for
stable/xena.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/xena.
Sem-Ver: feature
Change-Id: Iad49b18d00d9291fd3cbd4f74fa2494a2799ef5c
Add file to the reno documentation build to show release notes for
stable/wallaby.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/wallaby.
Sem-Ver: feature
Change-Id: Iba672b724da00c56f738bd161f55f993835d8787
As per the community goal of migrating the policy file
the format from JSON to YAML[1], we need to do two things:
1. Change the default value of '[oslo_policy] policy_file''
config option from 'policy.json' to 'policy.yaml' with
upgrade checks.
2. Deprecate the JSON formatted policy file on the project side
via warning in doc and releasenotes.
Also replace policy.json to policy.yaml ref from doc and tests.
[1]https://governance.openstack.org/tc/goals/selected/wallaby/migrate-policy-format-from-json-to-yaml.html
Change-Id: I9028875399b54ab961ae46ca13f9cf6e6fc7ad89
Add file to the reno documentation build to show release notes for
stable/victoria.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/victoria.
Change-Id: I3bba1266c0ee7ce5fe41ead7fbda713f72344292
Sem-Ver: feature
Switch to openstackdocstheme 2.2.1 and reno 3.1.0 versions. Using
these versions will allow especially:
* Linking from HTML to PDF document
* Allow parallel building of documents
* Fix some rendering problems
Update Sphinx version as well.
Set openstackdocs_pdf_link to link to PDF file. Note that
the link to the published document only works on docs.openstack.org
where the PDF file is placed in the top-level html directory. The
site-preview places the PDF in a pdf directory.
Set openstackdocs_auto_name to use 'project' as name.
Change pygments_style to 'native' since old theme version always
used 'native' and the theme now respects the setting and using 'sphinx'
can lead to some strange rendering.
openstackdocstheme renames some variables, so follow the
renames before the next release removes them. A couple of variables
are also not needed anymore, remove them.
See also
http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html
Change-Id: I5db2dc63ea51f0005aa1244b5b9c692ec23ce314
Add file to the reno documentation build to show release notes for
stable/ussuri.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/ussuri.
Change-Id: Ia053c951a4767128af66aa7c31495e09a63901c8
Sem-Ver: feature
Octavia allows LB creation with only a vip_network_id specified. This is
necessary for things like routed-network environments where subnets are
often not exposed to users, or else not well understood by them, and
Octavia should retain responsibility for choosing the subnet.
Change-Id: Ic252cf7d5cc7277fa86bf12df8776dac27151f83
Octavia now supports availability zones for loadbalancers. Now it is
possible to pass this option through the LB policy.
Depends-On: https://review.opendev.org/#/c/710452/
Change-Id: Ib49b38490f83fea19307751ef1cd073307e352ae
DB operations were previously restricted to resources belonging to the
project used for authentication. This change removes this restriction so
that admin users can access/modify resources belonging to any project.
Change-Id: I7882ebeb194137e682bdb7ab90f03587c636a7f8
Some options are now automatically configured by the version 1.20:
- project
- html_last_updated_fmt
- latex_engine
- latex_elements
- version
- release.
Change-Id: I432ae5415b9ab8ca7247fb5fb2a8b6e1819029ba
This patch splits the engine into 3 services, conductor, engine and
health-manager.
The goal here is to make the engine more resilent by isolating the
pieces.
Before this patch each Engine worker could potentially be running many
thousands of threads and multiple thread groups, starving the process.
After this change each process would be limited to a single thread
group of 1000 threads, and more predictable and balanced workloads.
* Added two new services.
* Added workers opt to conductor and health manager.
* Merged Thread Group Manager into Engine Service code.
Change-Id: Id4a27ba934dc9777f7ae5b4d7d0a751318ea7877
Current, an action was created haven't information of a cluster.
When a specific action is created, we do not know what action this action takes
in a cluster and when we execute the query API:
GET http://senlin_host:8777/actions
so many actions are returned even though we can limit using parameters
such as name, target, action, status combined with limit and marker.
But, we can't just get the actions executed in a particular cluster.
So, I want us to be able to do this by enabling the query with a cluster_id parameter.
To accomplish this, I need to modify the schema of
action models and action tables in the database of senlin service.
Change-Id: I49d172414eecf9158192cf0869abb91822ee2226
Allow users to marked nodes as tainted. Tainted nodes will be selected
first for scale-in operations.
* Updated API microversion to 1.13
* Updated node table to add tainted field
* Updated docs
Change-Id: I3a391a31240b5206ad83cd054084b9946fbab24e
If a server create ends up with the server in error state, delete the
server.
Change-Id: I43afa5f393cd8475d2686f1e61d96ec79dac00cd
Closes-Bug: #1847676
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: I2526621d67a927591fab8397249e26c676e8c8af
Sem-Ver: feature
Previously webhook API introduced microversion 1.10 to allow callers to
pass arbritary data in the body along with the webhook call. This was
done so that webhooks would work with aodh again. However, aodh and
most webhook callers cannot pass in the header necessary to specify the
microversion. Thus, I'm introducing webhook v2 here so that webhooks
behave like in microversion 1.10 but without the need to specify that
microversion header.
Closes-Bug: #1828856
Change-Id: I7f5cdb2ea19c6ca1a9ea68e64515804f219a73ee
This patch allows the cluster delete actions to detach policies
and delete receivers for the cluster being deleted. This
simplifies deleting clusters by not having to detach or delete
all dependancies from it beforehand.
Depends-On: https://review.opendev.org/657713/
Change-Id: I9c723516a65a43533e0589bc85bd485a6387711b
Add file to the reno documentation build to show release notes for
stable/stein.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/stein.
Change-Id: I292fb509cb6cefba182932fb99cdd3387ce13345
Sem-Ver: feature
This patch fixes the interaction of Senlin with the database.
The standard model_query (joinload_all('*')) has been removed
in favor of using more distinctive join statements.
Additionally this patch removes the DB calls that were baked into the
to_dict() method for the Senlin objects and instead retrieves that
data with joins/single database calls. This allows cluster action
show to actually return within an appropriate amount of time.
This patch improves performance all around with considerably less CPU
usage.
Closes-Bug: #1817604
Change-Id: Ie5c1fca080c82833941edc130568e76701ce394c