# How triggers/triggered jobs work ###### tags: `Documentation` `scenario10` As we know, scenario10 kvm jobs are now triggered by integration/component lines in RDO but are actually running in downstream infra. This is how it works. A trigger job runs in the integration and component lines. This commits a file in https://review.rdoproject.org/r/{{ trigger_repository }} repos. These files are used as file triggers for the actual scenario 10 kvm jobs that runs downstream. - create-scenario010-trigger-for-downstream is the trigger job that runs in integration lines https://github.com/rdo-infra/rdo-jobs/blob/9c0145f52b7597e25d81ea7135eb59d38b046186/zuul.d/integration-pipeline-main.yaml - ^ is defined in config repo https://github.com/rdo-infra/review.rdoproject.org-config/blob/49d7aa53d6275e6f53e571d70030d24d5e4352a6/zuul.d/downstream-scenario010-kvm-trigger.yaml - ^'s playbook is defined here https://github.com/rdo-infra/review.rdoproject.org-config/blob/master/playbooks/scenario010-kvm-trigger.yaml#L70 - The variables trigger_branch, trigger_os_distro, trigger_component are defined here https://github.com/rdo-infra/rdo-jobs/blob/9c0145f52b7597e25d81ea7135eb59d38b046186/zuul.d/integration-pipeline-main.yaml#L28, https://github.com/rdo-infra/rdo-jobs/blob/9c0145f52b7597e25d81ea7135eb59d38b046186/zuul.d/component-jobs-master.yaml#L1058 - So ultimately they create files like master_centos_9network etc - The actual scenario 10 kvm jobs are defined downstream in openstack/tripleo-ci-internal-jobs zuul.d - The template is defined in openstack/tripleo-ci-internal-config zuul.d/project.yaml with file triggers A sample workflow adding c9 standalone 10 kvm jobs: 1. https://review.rdoproject.org/r/c/config/+/37458 - since we did not consider differenciating the trigger files based on os version 2. https://code.engineering.redhat.com/gerrit/c/openstack/tripleo-ci-internal-config/+/300982 - updates trigger file syntax in the template 3. https://review.rdoproject.org/r/c/rdo-jobs/+/37457 - Updates syntax of files commited by trigger jobs 4. https://code.engineering.redhat.com/gerrit/c/openstack/tripleo-ci-internal-jobs/+/300891 - adds the actual sc 10 kvm c9 job, also adds nodeset to be used in this job