Thursday, 2025-07-03

opendevreviewchandan kumar proposed openstack/watcher master: Drops forbidden patch/delete/post action apis  https://review.opendev.org/c/openstack/watcher/+/95402107:56
opendevreviewchandan kumar proposed openstack/watcher master: Drops forbidden patch/delete/post action apis  https://review.opendev.org/c/openstack/watcher/+/95402110:33
dviroel#startmeeting watcher12:00
opendevmeetMeeting started Thu Jul  3 12:00:31 2025 UTC and is due to finish in 60 minutes.  The chair is dviroel. Information about MeetBot at http://wiki.debian.org/MeetBot.12:00
opendevmeetUseful Commands: #action #agreed #help #info #idea #link #topic #startvote.12:00
opendevmeetThe meeting name has been set to 'watcher'12:00
dviroelhi o/ 12:00
dviroelwho's around today?12:01
jgilabero/12:01
morenodo/12:01
dviroelcourtesy ping: amoralej sean-k-mooney chandankumar12:01
amoralejo/12:02
sean-k-mooneyo/12:03
dviroelalright, let's start with today's meeting agenda12:03
dviroel#link https://etherpad.opendev.org/p/openstack-watcher-irc-meeting#L44 (Meeting agenda)12:03
dviroelfeel free to add your own topics to the agenda12:03
dviroelthere are topics to place your changes that requires attention from reviewers12:03
dviroelwe also have a topic for bugs, if you want to discuss any12:03
dviroel#topic Announcements12:03
dviroelwe reached flamingo's second milestone today \o/12:04
dviroel#link https://releases.openstack.org/flamingo/schedule.html (2025.2 Flamingo Release Schedule)12:04
dviroeland with that12:04
dviroelall features that requires a spec and are going to be implemented in Flamingo (2025.2)12:05
dviroelshould have a spec merged today12:05
dviroelfrom our open specs in gerrit12:05
dviroel#link https://review.opendev.org/q/project:openstack/watcher-specs+is:+open12:05
dviroelnow there is only still open12:05
dviroel#link https://review.opendev.org/c/openstack/watcher-specs/+/947282 (Adds spec for extend compute model attributes)12:05
dviroelwhich has some approvals already12:06
dviroelso, if nobody disagrees with it12:06
rlandyo/ (apologies late to the meeting)12:06
chandankumaro/12:06
dviroelI/we can workflow it at the end of the day today12:06
dviroelyou can also see the already approved specs for this release here12:07
dviroel#link https://specs.openstack.org/openstack/watcher-specs/specs/2025.2/index.html12:07
dviroelany other comment on this topic?12:08
dviroelthis was the only announcement from my side :) - anyone has other announcement to make?12:09
dviroelok :) next topic12:10
dviroel#topic Eventlet Removal Updates12:11
dviroelnot too much bring this week i guess12:11
dviroellast week we already discussed about the issue with decision-engine and its 2 services started from the same service manager12:11
dviroel#link https://meetings.opendev.org/meetings/watcher/2025/watcher.2025-06-26-12.00.log.html#l-4612:12
dviroellogs from last meeting ^12:12
dviroelone possible fix to this issue, which was recently updated is12:12
dviroel#link https://review.opendev.org/c/openstack/watcher/+/95249912:12
dviroelwhich is open for review, but I don't plan to merge it before having the other eventlet patch ready (and working)12:13
dviroel#link https://review.opendev.org/c/openstack/watcher/+/95225712:13
dviroelthe latter one is really testing the decision engine both with monkey patching enabled and disabled (there is a new job that disabled monkey patching in the dec-eng)12:14
dviroelthis one is the one that I am working right now, refactoring it and going to update soon12:15
dviroelthis is all that I have12:15
dviroelany question on this topic?12:16
dviroelok, next topic is12:17
dviroel#topic Handling storage model automatically12:17
jgilaberI added that one12:18
jgilaberI've been looking into how to detect if cinder is enabled to enable the storage model12:18
jgilaberbut I'm not sure what is the best way to handle the existing config option12:18
jgilaber#link I've been looking into how to detect if cinder is enabled to enable the storage model12:18
jgilaberI'm not sure if we keep using it, how to reconcile user input and auto detection12:19
jgilaberso I though12:19
jgilaberOption 1: Set its default value to None and use it if the user sets it, otherwise detect automatically12:19
jgilaberOption 2: Deprecated and always detect automatically12:19
jgilaberI think option 1 is better because the docs mention that watcher supports custom collector plugins12:20
dviroeljgilaber: can you share the link again?12:20
amoraleji think having a way to totally disabling collecting storage model is fine as some users may want to totally avoid unneeded api access12:20
jgilabersorry about the link12:20
jgilaber#link https://docs.openstack.org/watcher/latest/configuration/watcher.html#collector.collector_plugins12:20
dviroelyeah, I agree that we should keep the option that allows users to disable individual collectors12:22
dviroelwhich in this case is the opposite, they select which one they want to enable12:22
amoralejso, autodetection would be only applied if the plugin is enabled12:22
jgilaberamoralej: IIUC that is the current behavior, only use the collector if the plugin is enabled in the config12:24
amoralejso if 'storage' is in collection_plugins list -> if no cinder available -> left warning message and skip collection12:24
amoralejyes, actually, current behavior is pretty good, just there is some corner case to cover, iiuc12:24
jgilaberah ok I see what you mean now12:24
amoraleji.e. if a user create a zone_migration with storage_backend, it tries to collect and if there is no cinder, a bunch of errors appear12:25
amoralejimo the only thing that is needed is a last case check inside the collector itself12:26
dviroelwe could consider enable storage by default, if we could guarantee that there is no issues with that, i.e. watcher is able to handle this cases where there is no cinder/backends12:27
jgilaberwe could do both, enable it by default, but check if cinder is present as amoralej suggested12:27
amoralejso, in the most common case, user enables storage, runs the decision-engine and there is no cinder, it works fine, it will not even try to collect storage until there is a strategy that explicitely requests the storage_model12:29
amoralejit'd be a bit strange that a user create a zone_migration with storage_backend parameter if there is no cinder ... but still it'd be good to cover that case12:30
jgilaber+1 I'll cover that in a follow-up12:31
amoralejin other case, there is a protection in place that skips storage collection unless something actually requires it even if it's enabled12:31
amoralejhttps://github.com/openstack/watcher/blob/master/watcher/decision_engine/model/collector/cinder.py#L150-L15512:31
dviroelright, it would avoid collecting info while it is not needed12:33
dviroelfor me, it is more about covering the corner cases, where there is no backend, and user creates a audit that will trigger the collector12:34
amoralej+112:35
dviroelafter deleting this single audit, it will continue to collecting? don't know12:35
amoralejit does, once a collection has happened and storage_model is not empty, it will continue collecting according to the period parameter12:36
amoralejif storage is in collector_plugins12:37
dviroelsomething that we should also take a look12:38
dviroeljgilaber: anything else to cover in this topic?12:39
jgilabernope, I think that is ok for now, thanks!12:40
dviroeljgilaber: ty!12:40
dviroel#topic Call for reviews12:40
dviroelthere is one in the list12:40
dviroel#link https://review.opendev.org/c/openstack/watcher/+/954021 12:40
dviroelfrom chandankumar 12:41
chandankumardviroel: thanks! It removes unused forbidden apis from action.py12:42
dviroelthere is more info the related bug:12:43
dviroel#link https://launchpad.net/bugs/211089512:43
chandankumarI have started working on tackling bugs related to tech debts12:43
chandankumarit is one of them. 12:43
chandankumarPlease have a look when free, thank you!12:43
amoraleji wonder why those methods were created to just raise operationnotpermited ...12:43
chandankumarI got this old commit https://github.com/openstack/watcher/commit/22c9c4df877b5fabcdf74bb80e61d24d06700dcc12:44
chandankumarpointing to https://bugs.launchpad.net/watcher/+bug/153328112:45
amoralejah, that explains i guet12:45
amoralejguess12:45
chandankumarThe reason behind removing these actions is because an action plan is atomic.12:45
chandankumarThe only way for us to be able to delete actions should be when we delete the12:45
chandankumaraction plan these actions relate to.12:45
chandankumarit is from long text pasted in the bug12:46
sean-k-mooneysorry i have been kidn of distracted today so i have been perodicily check the meeting topics but im not following the converstaion fully12:46
sean-k-mooneyill try and read back again later but if my input is needed please ping directly12:46
amoralejyes, i understand that, but my question is why they implemented that way instead of just removing the methods, maybe for backwards compatibility in the exposed api methods or something12:47
sean-k-mooneyi have not looke at the impe for the api fix12:47
chandankumarthe existing code mention about FIXME: blueprint edit-action-plan-flow but I was not able to find out the blueprint12:48
sean-k-mooneybut skimming it quicklyu it looks light a straige delete12:48
sean-k-mooneythe exiting code was related to that yes12:48
amoralejyep12:48
sean-k-mooneythey started the imple but never finsihed it12:48
sean-k-mooneythe orgiall paths came form the template they used to crate teh files12:48
chandankumarI deleted the code as I was not finding its usage any where12:49
sean-k-mooneyya that the correct approch but i think you have only looked at actions12:49
sean-k-mooneyif i recall there are other places where we need to clean up12:49
sean-k-mooneyi would like one patch to do all the removal personally12:49
sean-k-mooneyi could be miss rememberign but i though it affect other enpoitnss too12:50
* dviroel was reading the LP12:51
sean-k-mooneyoh not all uses of OperationNotPermitted are for this pattern12:52
chandankumarI did an audit of all the rest api and captured it somewhere in etherpad12:52
chandankumarlet me find that one12:52
sean-k-mooneywe can double check this offline in the gerrit review but if those are the only routes that shoudl not exist we shoud eb good12:52
chandankumarhttps://etherpad.opendev.org/p/watcher-apiref-audit12:53
dviroeli also need some time to dig more, and place my comments in the review12:53
dviroelack, thanks for the link chandankumar 12:53
chandankumarsure12:54
chandankumarthank you sean-k-mooney dviroel amoralej !12:54
sean-k-mooneyso they have this parttern as well 12:54
sean-k-mooney        if self.from_audits:12:54
sean-k-mooney            raise exception.OperationNotPermitted12:54
sean-k-mooneyso they put protection to prevent self calls to the api12:55
sean-k-mooneybtu since watcher shoudl never call its own api12:55
sean-k-mooneyim not sure why those are there12:55
sean-k-mooneythats kind of sepreate however so we can maybe look into that seperately ad possibel other tech debt12:55
sean-k-mooneyhttps://github.com/openstack/watcher/blob/93366df2641b64b7bc345ed91bfbef7ae17de25a/watcher/api/controllers/v1/audit.py#L676-L67712:56
chandankumarraise exception.OperationNotPermitted is called in almost all the apis12:56
sean-k-mooneyright but openstack service are not ment to ever all there own api12:57
sean-k-mooneyso im not sure if those check are dead code12:57
sean-k-mooneyor if there is other technial debth that we need to look into12:57
chandankumarI will dig into that exceptions and update the same patch based on that12:57
sean-k-mooneyi.e. if those every block anything it indeciates that watcher is calling it own api endpoitn which si not good12:57
sean-k-mooneyack for now lets keep ti small just update it if you see other endpoitn that uncontionaly raise12:58
dviroel+112:58
chandankumarin that case, I will open a seperate bug for this exception to see what it breaks12:58
chandankumarand why it is there in the first place12:58
sean-k-mooneyperfect12:59
sean-k-mooneyi just skimmed the other entry point adn i dont see any other routes that uncondtionally raise12:59
* dviroel time check12:59
sean-k-mooneyso i think the scope fo the inial patch is good and we can look into the ohter issuse seperately12:59
dviroel+112:59
chandankumarsounds good!12:59
dviroelthanks chandankumar13:00
chandankumarthanks sean-k-mooney dviroel amoralej !13:00
amoralejthanks chandankumar for taking care of that one13:00
dviroelgoing to skip bug triage for now,  there is only one bug there that we can cover next week13:00
dviroel#topic Volunteers to chair next meeting13:00
dviroeli am available next week again13:00
dviroelbut if someone wants to chair, pls let me know13:01
dviroelor put yout name in the etherpad13:01
amoraleji can take it13:01
dviroellet's wrap up for today13:01
dviroelthanks amoralej!13:01
dviroelall yours :) 13:01
chandankumarthanks amoralej dviroel !13:01
dviroelok, we will meet again next week13:01
dviroelthank you all for participating13:01
jgilaberthanks!13:01
dviroel#endmeeting13:02
opendevmeetMeeting ended Thu Jul  3 13:02:04 2025 UTC.  Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4)13:02
opendevmeetMinutes:        https://meetings.opendev.org/meetings/watcher/2025/watcher.2025-07-03-12.00.html13:02
opendevmeetMinutes (text): https://meetings.opendev.org/meetings/watcher/2025/watcher.2025-07-03-12.00.txt13:02
opendevmeetLog:            https://meetings.opendev.org/meetings/watcher/2025/watcher.2025-07-03-12.00.log.html13:02
opendevreviewchandan kumar proposed openstack/watcher master: Drops forbidden patch/delete/post action apis  https://review.opendev.org/c/openstack/watcher/+/95402113:34
opendevreviewchandan kumar proposed openstack/watcher master: Drops forbidden patch/delete/post action apis  https://review.opendev.org/c/openstack/watcher/+/95402115:05
opendevreviewHo Minh Quang Ngo proposed openstack/watcher master: Add options to disable migration in host maintenance  https://review.opendev.org/c/openstack/watcher/+/95253815:17
opendevreviewMerged openstack/watcher master: add missing bindeps for docs  https://review.opendev.org/c/openstack/watcher/+/95032916:03
opendevreviewMerged openstack/watcher master: Add warning message for experimental integrations  https://review.opendev.org/c/openstack/watcher/+/95201717:27
opendevreviewMerged openstack/watcher master: Drop unused fake class  https://review.opendev.org/c/openstack/watcher/+/95370117:28
opendevreviewMerged openstack/watcher master: resolve fixme comments in RequestContext  https://review.opendev.org/c/openstack/watcher/+/95035717:28
opendevreviewMerged openstack/watcher-specs master: Adds spec for extend compute model attributes  https://review.opendev.org/c/openstack/watcher-specs/+/94728218:59
opendevreviewMerged openstack/watcher master: Update workload balance doc per review comments  https://review.opendev.org/c/openstack/watcher/+/95367919:57
opendevreviewDouglas Viroel proposed openstack/watcher master: Merge decision engine services into a single one  https://review.opendev.org/c/openstack/watcher/+/95249920:29
opendevreviewDouglas Viroel proposed openstack/watcher master: WIP - Extend decision engine to support threading mode  https://review.opendev.org/c/openstack/watcher/+/95225720:29
opendevreviewRonelle Landy proposed openstack/watcher master: WIP: Update Overload standard deviation doc  https://review.opendev.org/c/openstack/watcher/+/95406721:04
*** haleyb is now known as haleyb|out21:52

Generated by irclog2html.py 4.0.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!