#304 FMN project is not getting catched by Zuul
Closed by zlopez. Opened by zlopez.

I recently added FMN to fedora-ci. The project is visible on https://fedora.softwarefactory-project.io/zuul/projects and even has all the jobs from .zuul.yaml listed, but when I create a PR I don't see any job created for the project.

I even tried recheck in one PR and didn't see any reaction.

Not sure what is happening here, I already added few other github projects to Zuul without issue and didn't hit this.


@fbo Can you look at this issue?

Looking at the Zuul log, my understanding is that zuul is looking for jobs defined in a 'develop' branch which is the default for fedora-infra/fmn

2022-01-25 09:47:08,364 DEBUG zuul.layout: [e: bf6ba3c0-7dc3-11ec-9718-31acd12153d0] Collecting jobs tox-lint for <Change 0x7f16cc7f2128 fedora-infra/fmn 332,31c433dd47ca04fbb7a5848a33d804d2888c4703>
2022-01-25 09:47:08,364 DEBUG zuul.layout: [e: bf6ba3c0-7dc3-11ec-9718-31acd12153d0] Collecting job variants for tox-lint
2022-01-25 09:47:08,364 DEBUG zuul.layout: [e: bf6ba3c0-7dc3-11ec-9718-31acd12153d0] Variant <Job tox-lint branches: {MatchAny:{ImpliedBranchMatcher:master}} source: fedora-infra/anitya/.zuul.yaml@master#17> did not match <Change 0x7f16cc7f2128 fedora-infra/fmn 332,31c433dd47ca04fbb7a5848a33d804d2888c4703>
2022-01-25 09:47:08,364 DEBUG zuul.layout: [e: bf6ba3c0-7dc3-11ec-9718-31acd12153d0] Variant <Job tox-lint branches: {MatchAny:{ImpliedBranchMatcher:staging}} source: fedora-infra/anitya/.zuul.yaml@staging#17> did not match <Change 0x7f16cc7f2128 fedora-infra/fmn 332,31c433dd47ca04fbb7a5848a33d804d2888c4703>
2022-01-25 09:47:08,364 DEBUG zuul.layout: [e: bf6ba3c0-7dc3-11ec-9718-31acd12153d0] No matching parents for job tox-lint and change <Change 0x7f16cc7f2128 fedora-infra/fmn 332,31c433dd47ca04fbb7a5848a33d804d2888c4703>

Jobs are defined in the master and staging of anitya then you might want to try with this option (look at the last sentence): https://zuul-ci.org/docs/zuul/latest/config/job.html#attr-job.override-checkout

- project:
    check:
      jobs:
        - tox-lint:
            override-checkout: master
        - tox-python37:
            override-checkout: master
        ...

However if multiple projects depends on jobs located in a project repo, you might want to create a fedora-infra-zuul-jobs repository and make it the shared space for all your Zuul jobs.

I thought the jobs are uploaded to https://fedora.softwarefactory-project.io/zuul/jobs and in there you can find when they are actually located. Otherwise I don't understand why the name of the job needs to be unique.

I will try the option and see if this helps.

Zuul reads all git repositories (included all branches) configured for a tenant (so in fedora tenant this is this list: https://softwarefactory-project.io/zuul/t/fedora/projects).
The list of jobs (https://softwarefactory-project.io/zuul/t/fedora/jobs) is built from the current state of all those repositories so there is no notion of upload.

Names needs to be unique across the tenant to help Zuul discovers which job is he one referenced in a project pipeline. However jobs can have multiple variants (with same name) see paragraphs 4 and 5 in https://zuul-ci.org/docs/zuul/latest/config/job.html#job

The option helped, the new PR is being checked.

@fbo Thanks, I didn't know about the variants.

Anyway I'm closing this one.

Metadata Update from @zlopez:
- Issue status updated to: Closed (was: Open)

@fbo One question that comes to my mind. I see some default jobs that have role zuul-jobs ( softwarefactory-project.io/zuul-jobs), for example https://softwarefactory-project.io/zuul/t/fedora/job/tox-cover. Where are those located?

This doesn't seem like job taken from project.

We include a version of zuul-jobs (which is a default Zuul job library provided by the Zuul upstream project) and here is the documentation for Python related jobs provided by zuul-jobs: https://zuul-ci.org/docs/zuul-jobs/python-jobs.html

https://pagure.io/fedora-project-config/blob/master/f/resources/_internal.yaml#_21

Metadata