#10927 flatpak-indexer tracebacks and doesn't pick up new builds
Closed: Fixed 2 years ago by kalev. Opened 2 years ago by kalev.

Now that flatpak container builds are fixed (https://pagure.io/fedora-infrastructure/issue/10912), flatpaks are failing in new way: the indexer isn't picking up new builds that got pushed to testing.

Kevin looked into this briefly and apparently flatpak-indexer is tracebacking:

2022-10-05 17:53:03,568:ERROR:flatpak_indexer.cli:Failed to update data sources
Traceback (most recent call last):
  File "/opt/app-root/lib64/python3.9/site-packages/flatpak_indexer/cli.py", line 61, in daemon
    updater.update(registry_data)
  File "/opt/app-root/lib64/python3.9/site-packages/flatpak_indexer/datasource/fedora/updater.py", line 91, in update
    builds = {nvr: session.build_cache.get_image_build(nvr)
  File "/opt/app-root/lib64/python3.9/site-packages/flatpak_indexer/datasource/fedora/updater.py", line 91, in <dictcomp>
    builds = {nvr: session.build_cache.get_image_build(nvr)
  File "/opt/app-root/lib64/python3.9/site-packages/flatpak_indexer/build_cache.py", line 25, in get_image_build
    image_build = query_image_build(self.session, nvr)
  File "/opt/app-root/lib64/python3.9/site-packages/flatpak_indexer/koji_query.py", line 349, in query_image_build
    return _query_build(session, nvr, ImageBuildModel)
  File "/opt/app-root/lib64/python3.9/site-packages/flatpak_indexer/koji_query.py", line 305, in _query_build
    return _get_build(session, build_info, build_cls)
  File "/opt/app-root/lib64/python3.9/site-packages/flatpak_indexer/koji_query.py", line 143, in _get_build
    for nsvc in composes_to_modules(session, compose_ids):
  File "/opt/app-root/lib64/python3.9/site-packages/flatpak_indexer/odcs_query.py", line 13, in composes_to_modules
    assert session.config.odcs_uri
AssertionError

To me it looks like it's asserting that odcs_uri is set in the config, but @kevin says that it's correctly set in the config in the pod: odcs_uri: https://odcs.fedoraproject.org/
flatpak-indexer restart didn't help either.

@otaylor Any ideas what might be going wrong here?


I don't have permissions to see the configmaps, but if I look at the mounted configmap volume in the current pod flatpak-indexer-8-x5wwr from the terminal - /etc/flatpak-indexer/config.yaml - I don't see the odcs_uri setting there. I also don't see it in the ansible repository at all. Maybe Kevin was looking at /opt/app-root/src/config-fedora.yaml? This is an example file from the upstream sources and not used in the openshift deployment.

(I should say that while the need to set odcs_uri in the config file is a recent-ish change, I'm not particularly sure how we would get past testing and deploy without it. Have there been OSBS upgrades recently - that could conceivably trigger this code path when it wasn't used before.)

oh yeah, I was looking at config-fedora.yml. ;(

I added odcs_url in 88acf9c72c38ceb164b00cd18e42e4765e35a30d and pushed it out, but the build failed with:

+ flake8 flatpak_indexer setup.py tests tools
tools/create-test-data.py:40:15: E275 missing whitespace after keyword
+ '[' 1 == 0 ']'
+ failed=' flake8'
+ set -e +x
FAILED: flake8
error: build error: error building at STEP "RUN tools/test.sh": error while running runtime: exit status 1

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

2 years ago

It's missing a dot.

It currently reads:
odcs_uri: https://odcs{{ env_suffix }}fedoraproject.org/
Should be:
odcs_uri: https://odcs{{ env_suffix }}.fedoraproject.org/

pushed those. seems processing now. ;)

Looks like it's all fixed now :) Thanks a lot for the help!

Metadata Update from @kalev:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

2 years ago

Login to comment on this ticket.

Metadata
Boards 1
ops Status: Backlog