Our wiki is on fedora 38 with version 1.39.4
We should upgrade to fedora 40, which currently has 1.40.0... however, 1.41.x is out, so we might ask the fedora maintainer if they plan to upgrade to that version anytime (very) soon.
From our side this process looks like:
mediawiki-FedoraBadges-1.0-1.0.20190322git.fc38.1 mediawiki-Lockdown-0-0.3.9.12dd618.fc38 mediawiki-OpenIDConnect-6.2-2.fc38 mediawiki-OpenIDConnectAPI-0.4-1.2awb.fc38 mediawiki-PluggableAuth-6.3-1.fc38 mediawiki-RSS-2.25.0-1.fc38 mediawiki-backtick-code-0.0.4-9.fc38 mediawiki-fedoradocsredirect-0.0.3-2.fc38 mediawiki-skin-fedora-0.13-1.fc38 php-jumbojett-OpenID-Connect-PHP-0.9.0-1.fc38 php-rmccue-requests-2.0.6-1.fc38
Once staging is all done, do the same for prod.
Ideally we get this done before f38 goes EOL.
CC: @mooninite you have any plans for 1.41.x ? I know it's not a LTS, but the next LTS isn't going to be out until the end of the year it sounds like. ;(
Hi Kevin. I typically don't upgrade major versions during a Fedora release as it may involve database changes. I'll look into it since it has been a while since I've pushed updates for mediawiki.
Hey Kevin, It will be awesome to know the prod dates so I don't schedule any test days in the same timeline.
ok, please let us know as soon as you are able. I'd prefer we just move to 1.41 if we can with f40, but if thats not viable we can do 1.40 or something else.
Yeah, we will announce before doing prod, it will need an outage. ;)
Tried to create the update but ran into a build error. Bug report filed for troubleshooting.
https://bugzilla.redhat.com/show_bug.cgi?id=2279035
F40 update has been built: https://bodhi.fedoraproject.org/updates/FEDORA-2024-2c564b942d
Awesome. Thanks so much!
Metadata Update from @phsmoura: - Issue priority set to: Waiting on Assignee (was: Needs Review) - Issue tagged with: medium-gain, medium-trouble, ops
Metadata Update from @ryanlerch: - Issue assigned to ryanlerch
I have built most of the packages for F40 now, except these two, which give me the same error when trying to add the tag:
koji add-pkg f40-infra php-rmccue-requests --owner=ryanlerch Adding 1 packages to tag f40-infra 2024-05-14 14:05:31,681 [ERROR] koji: GenericError: package php-rmccue-requests is blocked in tag f40-infra
the f40 builds are:
The ones we are likely to have troble with is pluggableauth / OIDC plugin (we holding a patch in the OIDC plugin too that i had to change without being able to test until it hits staging fingers crossed)
The other one as always will be the theme, but that is a wait and see one too.
Yeah, the blocked ones are things that were recently retired. We need to unblock them in f40-infra. ;)
I've done so now.
➜ koji unblock-pkg f40-infra php-rmccue-requests ➜ koji unblock-pkg f40-infra mediawiki-backtick-code
these two are now built. thanks!
Starting 23rd May through 2nd June, we will have Podman 5.1 and Kernel 6.9 Test Week... I hope we don't do anything with staging on those week?
have updated 2 packages that were causing a few issues too
still not sure what is happening wiht the edits not working...
edits work fine now. There was a problem with the staging rabbitmq cluster, so fedora-messaging was unhappy.
I just would like to confirm from @adamwill that openqa is able to edit with it's OIDC token, then I think it all looks fine and we can do prod tomorrow?
sorry, I'm on PTO atm. I turned off the wiki reporting services on lab while this was broken. Let me turn them back on again and see.
oh, dear, it looks like no:
May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: [INFO OpenQAWikiReporter] reporting results for 3886164 May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: [INFO fedora_openqa.report] passed testcases: [ResTuple(testtype='Cloud', release='', milestone='', compose='', testcase='QA:Testcase_base_selinux', section='x86_64', testname='', env='Local', status='pass', user='', bugs='', comment='', bot=True, cid='Fedora-Cloud-40-20240517.0', dist='Fedora')] May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: [INFO fedora_openqa.report] reporting test passes to stg.fedoraproject.org May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: [ERROR fedora_messaging.twisted.consumer] Received unexpected exception from consumer Consumer(queue=openqa.stg_wiki_reporter, callback=<fedora_openqa.consumer.OpenQAWikiReporter object at 0x7f41f4aa3ce0>) May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: Traceback (most recent call last): May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/lib/python3.12/site-packages/fedora_messaging/twisted/consumer.py", line 224, in _read_one May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: yield d May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/lib/python3.12/site-packages/twisted/python/threadpool.py", line 269, in inContext May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: result = inContext.theWork() # type: ignore[attr-defined] May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: ^^^^^^^^^^^^^^^^^^^ May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/lib/python3.12/site-packages/twisted/python/threadpool.py", line 285, in <lambda> May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: inContext.theWork = lambda: context.call( # type: ignore[attr-defined] May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/lib/python3.12/site-packages/twisted/python/context.py", line 117, in callWithContext May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: return self.currentContext().callWithContext(ctx, func, *args, **kw) May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/lib/python3.12/site-packages/twisted/python/context.py", line 82, in callWithContext May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: return func(*args, **kw) May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: ^^^^^^^^^^^^^^^^^ May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/local/lib/python3.12/site-packages/fedora_openqa/consumer.py", line 245, in __call__ May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: results = report.wiki_report( May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: ^^^^^^^^^^^^^^^^^^^ May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/local/lib/python3.12/site-packages/fedora_openqa/report.py", line 341, in wiki_report May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: wiki.login() May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/lib/python3.12/site-packages/wikitcms/wiki.py", line 338, in login May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: self.site_init() May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/lib/python3.12/site-packages/mwclient/client.py", line 142, in site_init May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: info = self.get('query', meta='userinfo', uiprop='groups|rights') May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/lib/python3.12/site-packages/mwclient/client.py", line 234, in get May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: return self.api(action, 'GET', *args, **kwargs) May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/lib/python3.12/site-packages/mwclient/client.py", line 288, in api May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: if self.handle_api_result(info, sleeper=sleeper): May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: File "/usr/lib/python3.12/site-packages/mwclient/client.py", line 331, in handle_api_result May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: raise errors.APIError(info['error']['code'], May 20 16:35:20 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: mwclient.errors.APIError: ('internal_api_error_Error', '[Zkt7yGUiJFwgOLDqMp6BZgAAANY] Exception caught: Call to undefined method MediaWiki\\User\\User::idFromName()', 'Error at /usr/share/mediawiki/extensions/OpenIDConnectAPI/OpenIDConnectAPI.class.php(21)\nfrom /usr/share/mediawiki/extensions/OpenIDConnectAPI/OpenIDConnectAPI.class.php(21)\n#0 /usr/share/mediawiki/includes/HookContainer/HookContainer.php(161): OpenIDConnectAPI::beforeAPIMain()\n#1 /usr/share/mediawiki/includes/HookContainer/HookRunner.php(686): MediaWiki\\HookContainer\\HookContainer->run()\n#2 /usr/share/mediawiki/api.php(83): MediaWiki\\HookContainer\\HookRunner->onApiBeforeMain()\n#3 /usr/share/mediawiki/api.php(48): wfApiMain()\n#4 {main}') May 20 16:35:21 openqa-lab01.iad2.fedoraproject.org fedora-messaging[682187]: [ERROR fedora_messaging.cli] Unexpected error occurred in consumer Consumer(queue=openqa.stg_wiki_reporter, callback=<fedora_openqa.consumer.OpenQAWikiReporter object at 0x7f41f4aa3ce0>): <twisted.python.failure.Failure mwclient.errors.APIError: ('internal_api_error_Error', '[Zkt7yGUiJFwgOLDqMp6BZgAAANY] Exception caught: Call to undefined method MediaWiki\\User\\User::idFromName()', 'Error at /usr/share/mediawiki/extensions/OpenIDConnectAPI/OpenIDConnectAPI.class.php(21)\nfrom /usr/share/mediawiki/extensions/OpenIDConnectAPI/OpenIDConnectAPI.class.php(21)\n#0 /usr/share/mediawiki/includes/HookContainer/HookContainer.php(161): OpenIDConnectAPI::beforeAPIMain()\n#1 /usr/share/mediawiki/includes/HookContainer/HookRunner.php(686): MediaWiki\\HookContainer\\HookContainer->run()\n#2 /usr/share/mediawiki/api.php(83): MediaWiki\\HookContainer\\HookRunner->onApiBeforeMain()\n#3 /usr/share/mediawiki/api.php(48): wfApiMain()\n#4 {main}')>
@abompard Can you take a look here?
@ryanlerch I guess you upgaded that auth plugin, so perhaps we could try going back to the old version we had and see if it works? Or downgrade just one version?
Otherwise I am not sure whats going on. Anything on the server side for errors?
well, uh, I think I can take a guess:
https://github.com/wikimedia/mediawiki/commit/591a851174e9c767a07425b99d31948d9ac41cb4
"* User::idFromName(), deprecated in 1.37, has been removed. Instead, you should use UserIdentityLookup::getUserIdentityByName()."
...so, we need to do something like https://github.com/wikimedia/mediawiki-extensions-ConfirmAccount/commit/bd447a3cbca4bc97a31b288d4446cf2488bb1164 , pretty much. In https://github.com/ansmithee/mediawiki-OpenIDConnectAPI/blob/master/OpenIDConnectAPI.class.php . And send a PR. And then backport it to the mediawiki-OpenIDConnectAPI package, which only exists on the infra tags.
@ryanlerch can you look at this? or @adamwill ? :)
I know we don't want to replace the wiki right now because of the test weeks going on, but it would be good to get staging all sorted and be ready to do prod as soon as we next have a window to do so.
Okay, I think I got it. Upstream PR, scratch build. I can't figure out how to build it onto the infra tag, though - koji build f40-infra /home/adamw/build/mediawiki-OpenIDConnectAPI/mediawiki-OpenIDConnectAPI-0.4-3.fc40.src.rpm gives me policy violation (build_from_srpm), but it's not in dist-git, so...?
koji build f40-infra /home/adamw/build/mediawiki-OpenIDConnectAPI/mediawiki-OpenIDConnectAPI-0.4-3.fc40.src.rpm
policy violation (build_from_srpm)
I've deployed the scratch build on the staging wiki for now and it's working, the stg openQA host can log in and report results.
You need the 'infra' permission. I added you.
OK, thanks, build is done.
Cool. So is staging working ok with that?
Can we schedule prod for early next week after the test weeks end?
DNF 5.2 system-upgrade 2024-06-05 through 2024-06-10 and then we will be having a11y 19th June through 26th..
It will be great if we could co-ordinate on this :) :pray:
So, I am out next week, but perhaps @ryanlerch would be willing to do the prod upgrade sometime after monday?
Would need a outage scheduled/announced... otherwise I could do it the 17th or 18th after I get back.
So, looks like tomorrow is the best window. ;)
How about tomorrow at 21 UTC? I can send out and outage / announcement of it.
Prod wiki is all upgraded. Thanks everyone!
Metadata Update from @kevin: - Issue close_status updated to: Fixed - Issue status updated to: Closed (was: Open)
Log in to comment on this ticket.