-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deploy an arbitrary number of glanceAPI #384
Deploy an arbitrary number of glanceAPI #384
Conversation
6386e06
to
30604dd
Compare
30604dd
to
1205701
Compare
/retest-required |
1205701
to
da826a4
Compare
I think there's a valid issue in tempest and it might be related to the endpoint creation:
|
1e6225b
to
c15cbc5
Compare
8b62168
to
b0aa0f3
Compare
Kuttl tests have been updated to reflect the new GlanceAPI definition. As an additional point, the copy && deploy pattern has been removed and now, for each sample layout in config/samples an associated kuttl test can be built and run. So far only single and multiple have been moved, but the idea is to have a follow up change to build edge, base and multiple. Signed-off-by: Francesco Pantano <[email protected]>
The logic that handles the apiDeployment has been reworked and moved to a dedicated function. By doing this we're able to clearly have evidence in the code of the flow in the main reconcile loop. In addition, webhooks are updated and do not prevent the deployment of additional glanceAPI later in time. Signed-off-by: Francesco Pantano <[email protected]>
We have the ability to grow the deployment and add more glanceAPI instance as needed, as well as select which one should be used as the main instance registered to keystone catalog. With this patch we have now the ability to cleanup an instance thar no longer belongs to the main CR. The endpoints registered in the Status are removed as well. Signed-off-by: Francesco Pantano <[email protected]>
If AppSelector does not reflect the general service name, it might result hard to get all the resources associated to a given Glance CR. For this reason this patch reworks the labels assignment to align Glance with the work done in the other operators. Signed-off-by: Francesco Pantano <[email protected]>
This patch fixes a few issues in the label and selectors assignment and goes back to the previous deployment workflow so we don't have too much wrapping in the existing logic. The delete flow has been updated as well: the Finalizer that prevented the glanceAPI to be removed is gone and the glanceAPICleanup is not run within the for loop. Signed-off-by: Francesco Pantano <[email protected]>
Both internal and public endpoints are based on a pattern that uses instance.Name. However, this results weird for the end user, as the url will be seen in the form service-name-type-type.DOMAIN. This change simplifies the endpoint Name creation removing the additional extra "type" in the name. Signed-off-by: Francesco Pantano <[email protected]>
9269668
to
a2e176b
Compare
/retest-required |
a2e176b
to
4afec0f
Compare
/test glance-operator-build-deploy-tempest |
4afec0f
to
3598c3d
Compare
/retest |
Now that we have the ability to define multiple Glance instances, we can propagate extraVolumes not only to the Glance components (or, logically, the GlanceAPI subgroup), but we can do the same thing by specifying a defined instance (e.g. api0). As done for both Cinder and Manila (where this mechanism is already in place), the code has been updated to reflect this way of propagating volumes. Signed-off-by: Francesco Pantano <[email protected]>
3598c3d
to
d903224
Compare
Despite I'm still trying to get the CI green on PR#587 and predict any potential failure As the demo [1] shows:
The three steps above are basically the common part of the tests I made. I'm going @abays if you are ok with this patch, once is approved, we should rebase/merge [2] [1] https://asciinema.org/a/626515 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/lgtm
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: abays, fmount The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
We recently introduced the ability to deploy a list of glanceAPI in the OpenStackControlPlane. This feature is not required in the adoption context, but it's critical to adapt the Glance deployment to the new api. It might be relevant in the future as long as DCN environments will be adopted. Depends-On: openstack-k8s-operators/glance-operator#384 Depends-On: openstack-k8s-operators/openstack-operator#587 Signed-off-by: Francesco Pantano <[email protected]>
Given that this change is ready and the openstack-operator patch is green [1], I'm removing the [1] https://review.rdoproject.org/zuul/buildset/f120eaadda9344ab8efe4c0db053e15d |
/unhold |
9d0a576
into
openstack-k8s-operators:main
We recently introduced a feature that allows to deploy an arbitrary numbers of GlanceAPI [1]. To ease the test and to be closer to an edge scenario simulation, an approach would be to have the ability to deploy multiple Ceph pods: they bring different secrets that can be propagated to a subset of ctlplane components. This patch introduces the new 'CEPH_CLUSTERS' variable that is used within the bash script to (eventually) deploy multiple Ceph Pods. [1] openstack-k8s-operators/glance-operator#384 Signed-off-by: Francesco Pantano <[email protected]>
This patch introduces a new API interface that allows to specify an arbitrary number of
glanceAPI
. By giving this ability from an interface point of view, theglance-operator
is now responsible to reconcile the deployed instances in terms of lifecycle, as well as making sure we always have a selected API registered to the keystoneimage
service.As part of this change we are now able to:
keystoneEndpoint
to select which instance should be registered in thekeystone
catalogextraVolumes
to the single instance as done for bothCinder
andManila
Demo: https://asciinema.org/a/625117