Files
stride/.github/CONTRIBUTING.md
T
Virgile Bello 8d35446944 ci: label suites: no opened trigger, skip non-ci labels, follow main's draft rule on pushes
Labels picked at creation already fire labeled events, so opened started every suite twice. A label event still runs its suite on a draft; pushes, reopened and ready_for_review skip drafts unless ci-run-on-draft.
2026-09-14 13:11:42 +09:00

2.0 KiB

🤝 Contributing

For questions and general discussions, please join our Discord server or participate in GitHub Discussions.

To report bugs or propose features, please use the Issues section on GitHub.

We welcome code contributions via pull requests. Issues tagged with good first issue are great starting points for code contributions.

You can help us translate Stride; check out our Localization Guide.

Triggering CI tests on a PR

Most CI runs automatically on PR commits, gated by path filters. A few things run only on demand; opt in by adding a label to the PR (collaborator access required):

  • ci-enduser — end-user sample screenshot + packaging suite (never auto-runs)
  • ci-editor — GameStudio editor screenshot suite (never auto-runs)
  • ci-ios — iOS game suite, when its narrow path filter didn't already trigger it
  • ci-android — Android game suite, when its narrow path filter didn't already trigger it
  • ci-run-on-draft — run the normal path-gated CI on a draft PR (which otherwise skips CI)

Labels run through the PR's own workflow (pr-label-suites.yml / main.yml), so they use the PR head's YAML. Adding a label runs that suite right away, even on a draft; every push re-runs all applied suites (on a draft, only with ci-run-on-draft). Removing a label only stops the re-runs.

Earn Money by Contributing

If you are a developer with solid experience in C#, rendering techniques, or game development, we want to hire you! We have allocated funds from supporters on Open Collective and can pay for work on certain projects. More information is available here.