diff --git a/docusaurus.config.js b/docusaurus.config.js index 91fc3a9ae7..8e02e3e20e 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -81,6 +81,7 @@ const developmentSections = [ const sections = [ new Section("docs", "Documentation"), + new Section("fedora-ci", "Fedora CI"), new Section("source-git", "Source-git"), new Section("development", "Development", undefined, developmentSections), ]; diff --git a/fedora-ci/configuration.md b/fedora-ci/configuration.md new file mode 100644 index 0000000000..74ba96334c --- /dev/null +++ b/fedora-ci/configuration.md @@ -0,0 +1,10 @@ +--- +title: Configuration +sidebar_position: 3 +--- + +During the development phase, maintainers can opt in by adding their dist-git repository to the configuration [here](https://github.com/packit/deployment/blob/2cd9e846a6ab1c320f6a6c589e4bcab6b3cfb762/secrets/packit/prod/packit-service.yaml.j2#L105) +and submitting a [pull request](https://github.com/packit/deployment/pulls). + +In later phases, CI will run by default on all packages. The exact details of test plan configuration are still +being finalized, but the plan is to have a global default configuration that works well for most repositories. diff --git a/fedora-ci/development.md b/fedora-ci/development.md new file mode 100644 index 0000000000..7fd7ecff99 --- /dev/null +++ b/fedora-ci/development.md @@ -0,0 +1,26 @@ +--- +title: Development +sidebar_position: 4 +--- + +## Links + +- [Fedora change proposal](https://fedoraproject.org/wiki/Changes/PackitDistgitCI) + - Original proposal of this change, including the time plan and detailed description. +- [Tracking issue](https://github.com/packit/packit-service/issues/2692) + - Plan of the tasks to be implemented. +- [Discussions](https://github.com/packit/packit/discussions/2520) + - For ideas or suggestions to discuss, feel free to add a discussion topic. +- [Issue tracker](https://github.com/packit/packit-service/issues/new?template=fedora-ci.yml) + - For filing bug, new features, etc. +- [Source code](https://github.com/packit/packit-service) + - Source code of the CI implementation. This will be moved to a separate repository. +- [#packit:fedora.im](https://matrix.to/#/#packit:fedora.im?web-instance[element.io]=chat.fedoraproject.org) + - Matrix channel for answering any questions. + +## Current plan + +- [x] Phase 1: Introduce scratch builds for Fedora dist-git PRs (opt-in). +- [ ] Phase 2 (In progress): Implement installability checks (opt-in). +- [ ] Phase 3: Implement support for user-defined TMT tests (opt-in). +- [ ] Final Phase: Transition to the new Packit-based CI as the default mechanism, replacing Fedora CI. diff --git a/fedora-ci/index.md b/fedora-ci/index.md new file mode 100644 index 0000000000..a7a6db592f --- /dev/null +++ b/fedora-ci/index.md @@ -0,0 +1,19 @@ +--- +title: Fedora CI documentation +sidebar_position: 0 +id: index +--- + +Packit as Fedora dist-git CI is implemented as part of [this Fedora change proposal](https://fedoraproject.org/wiki/Changes/PackitDistgitCI). +The implementation is currently in progress. +This initiative aims to transition Fedora dist-git CI to a Packit-based solution, deprecating Fedora CI and Fedora Zuul Tenant. +The change affects the triggering and reporting mechanism for tests but does not alter the tests themselves or the test +execution service ([Testing Farm](https://docs.testing-farm.io/Testing%20Farm/0.1/index.html)). The transition will be gradual, allowing maintainers to try the integration out, +provide feedback and catch issues early. + +For more info continue with: + +- [Jobs run in CI](fedora-ci/jobs.md) +- [Retriggering](fedora-ci/retriggering.md) +- [Configuration](fedora-ci/configuration.md) +- [Development](fedora-ci/development.md) diff --git a/fedora-ci/jobs.md b/fedora-ci/jobs.md new file mode 100644 index 0000000000..497156839c --- /dev/null +++ b/fedora-ci/jobs.md @@ -0,0 +1,18 @@ +--- +title: Jobs run in CI +sidebar_position: 1 +--- + +## Scratch builds + +Scratch builds in [Koji](https://koji.fedoraproject.org/koji/) built from SCM. + +## Tests + +### Installability + +TBD (The work is in progress.) + +### Custom test plans + +TBD (The work is planned.) diff --git a/fedora-ci/retriggering.md b/fedora-ci/retriggering.md new file mode 100644 index 0000000000..129a6241df --- /dev/null +++ b/fedora-ci/retriggering.md @@ -0,0 +1,16 @@ +--- +title: Retriggering +sidebar_position: 2 +--- + +You can retrigger CI jobs in dist-git pull requests by posting comments that include the appropriate `/packit-ci` commands, as outlined below. + +## Scratch builds + +To retrigger a scratch build, add the following comment to the pull request: + +``` +/packit-ci scratch-build +``` + +Only packagers can retrigger scratch builds. diff --git a/src/components/HomepageFeatures/index.tsx b/src/components/HomepageFeatures/index.tsx index b749215e2c..36eb31e1fa 100644 --- a/src/components/HomepageFeatures/index.tsx +++ b/src/components/HomepageFeatures/index.tsx @@ -49,11 +49,22 @@ const FeatureList: FeatureItem[] = [ > ), }, + { + title: "Running as Fedora dist-git CI", + description: ( + <> + After successfuly validating upstream projects, Packit is now becoming a + CI solution also for{" "} + Fedora dist-git.{" "} + Learn more. + > + ), + }, ]; function Feature({ title, description }: FeatureItem) { return ( -
{description}