Project

General

Profile

action #128360

Updated by okurz over 1 year ago

Supporting fork based development model 

 ## Motivation 
 We found a nice way to trigger openQA tests within GitHub workflows but that needs openQA credentials which are for example for os-autoinst-distri-openQA only provided in the base repository but not available to forks. We must find a way to support the fork based development model, what people usually do in GitHub. 

 ## Acceptance criteria 
 * **AC1:** PRs like https://github.com/os-autoinst/os-autoinst-distri-example/pull/19 can successfully execute openQA based CI checks. 
 * **AC2:** The normal openQA improved CI integration has proper cleanup strategy still applies, i.e. jobs are still cleaned up as normal 
 * **AC3:** openqa.opensuse.org+os-autoinst-distri-example support this workflow from github fork repositories 
 * **AC4:** Documentation covers (once the setup and use of this feature 
 * **AC5:** The implementation is generally reusable for any openQA instance and any openQA test distribution PR has been updated/closed). 

 ## Suggestions 
 * Maybe #127949 helps already, maybe we just need to trigger openQA tests from pull requests on pull request, not push? 
 * See what https://github.com/os-autoinst/os-autoinst-distri-example/blob/main/.github/workflows/openqa.yml#L23 does so far to trigger jobs from the example distribution on openQA 
 * Implement a new API route which can be used by github webhooks triggers 
 * Demonstrate that this approach works with a github repository 
 * Ensure the documentation covers the setup and use of this feature 
 * We can use https://github.com/os-autoinst/os-autoinst-distri-example/blob/main/scenario-definitions.yaml to define the jobs that are triggered 

 ## Out of scope 
 * It does not actually matter which specific openQA jobs are triggered, just *any* that refers to the test distribution 
 * It's ok if changes to scenario-definitions.yaml in the PR are not effective for the spawned jobs before merge

Back