#9922 Unable to give karma point to user
Closed: Initiative Worthy 2 years ago by ryanlerch. Opened 2 years ago by spike.

I tried to give another user a karma point as described here: https://fedoraproject.org/wiki/Zodbot#Thanking_other_contributors_with_karma_points

Unfortunately that doesn't seem to work. I've tried messaging zodbot directly with username++ as well as writing username++ in a channel where zodbot is present. In case it matters, it was #fedora-devel around 15:33 UTC (May 2nd).
I've tried with the user's FAS account name (limb) as well as with their IRC nick (limburgher). My nick (cspike) is registered and associated with my FAS account and so is limb's IRC nick.

I hope this is the right place for this bug report. Please let me know if that's not the case.


This is due I think to zodbot using the old account system still. We have a change landed, we just need to get it deployed. :(

Metadata Update from @mohanboddu:
- Issue priority set to: Waiting on Assignee (was: Needs Review)
- Issue tagged with: dev, medium-gain, medium-trouble, ops

2 years ago

i assume this is specifically with the supybot-fedora plugin not being updated on zodbot, right?

i am going to work on getting the latest release (0.5.0) built in koji for the fedora-infra repos.

do we have a staging version of zodbot at all?

Metadata Update from @ryanlerch:
- Issue assigned to ryanlerch

2 years ago

Unfortunately, it's more complex than that.

The supybot-fedora PR is merged. However, it's python3.
zodbot is running on value01, which is a rhel7 instance. It's running with Limnoria using python2.
In order to move zodbot to python3, we need to move value01 to rhel8.
In order to move value01 to rhel8, we need to have a python3/rhel8 build of mote and also some way of replacing fedmsg-irc with a fedora-messaging version or running it seperately.

So, options:

  1. Redo the changes to supybot-fedora as python2 for now. (quickest)
  2. Get mote ported to fedora-messaging and move it and zodbot to value02 (rhel8, doesn't exist yet) and leave fedmsg-irc on value01 (rhel7)
  3. Get mote ported to fedora-messaging and implement a fedmsg-irc replacement using fedora-messaging and move all those with zodbot to a new value02.

Kinda a mess, but thats what it is. ;(

Okay, i dug into this a bit more, and realised that zodbot is a little more that just limnoria(aka supybot + supybot-fedora). There is also the following that would need to be ported to python3:

  • supybot-koji
  • supybot-notify
  • supybot-pinglists
  • supybot-fedmsg
  • supybot-meetbot

the koji, notify, and pinglists plugins appear to have been hosted on fedorahosted, so the sources for these only live in srcrpms in koji.

supybot-fedmsg lives in github, and has had recent changes to it to support fedora-messaging.

supybot-meetbot is a messy one. It appears to have come from the debian meetbot (https://wiki.debian.org/MeetBot source -- https://github.com/rkdarst/MeetBot) which hasnt been worked on for over 10 years -- so only python2. There is a recent fork here https://pypi.org/project/hcoop-meetbot/ source: https://github.com/pronovic/hcoop-meetbot that seems active and functioning.

One other thing about meetbot, in our ansible setup, not sure how we get the supybot-meetbot package installed -- it is configured there it seems, but not installed:

https://pagure.io/fedora-infra/ansible/blob/main/f/roles/supybot/tasks/main.yml

so all this is amounting to a lot of work... so reverting supybot-fedora back to python2 might be the best way for now

Yeah. ;( It's a gigantic rabbit hole.

Can you redo the supybot-fedora patch to be python2 compat?

Yeah. ;( It's a gigantic rabbit hole.

Can you redo the supybot-fedora patch to be python2 compat?

I looked into this further today, and i am not sure this will work either -- we need fasjson_client to be able to talk to Fedora Accounts -- and that is python 3.

So not sure it is possible to go back to python 3 at all... :(

I am going to make a new issue (mini-inititive) here and try to document a path forward and get cracking on the work.

Metadata Update from @ryanlerch:
- Issue marked as depending on: #9964

2 years ago

the koji, notify, and pinglists plugins appear to have been hosted on fedorahosted, so the sources for these only live in srcrpms in koji.

I was wrong on this one, supybot-koji and supybot-notify appear to have been migrated to pagure.io at some point, along with what is basically the source for supybot-meetbot from it's upstream:

For whatever reason, supybot-pinglists wasnt migrated to pagure.io from fedorahosted.

Just chiming in here with my 2 cents. It is possible to write the code in a python2 friendly way but its awkward and then doesn't use the official package we wrote - meaning any changes to fasjson will have to be manually incorporated into third party packages consuming the API. It kind of goes against the whole reason to have a client.

There are examples though, if that's something you are interested in doing. https://github.com/fedora-infra/fedmsg_meta_fedora_infrastructure/blob/develop/fedmsg_meta_fedora_infrastructure/fasshim.py

I'm -1 to shims like that in general though.

Would an environment upgrade (that I'm guessing needs to happen at some point anyway) be a better solution?

Metadata Update from @ryanlerch:
- Issue unmarked as depending on: #9964

2 years ago

Still working on updating zodbot using #9964 as a tracking ticket.

Giving karma may be flaky until we update this, but it generally should work -- zodbot is still interacting with the read-only FAS to get IRC nicks.

Going to close this one off for now -- thanks for reporting and you can track the progress of the zodbot update in #9964

Metadata Update from @ryanlerch:
- Issue close_status updated to: Initiative Worthy
- Issue marked as depending on: #9964
- Issue status updated to: Closed (was: Open)

2 years ago

Login to comment on this ticket.

Metadata
Boards 2
dev Status: Done
ops Status: Done