Add documentation for CI/CD set up (#18330)
Part of #17878
Summary of the issue:
Forks of NVDA cannot customise parts of the CI/CD pipeline without committing to code.
This allows forks to maintain a clean diff with nvaccess/nvda.
With appveyor forks could set a custom appveyor.yml file to customise parts of the CI/CD pipeline such as:
setting a publisher name
enabling/configuring signing
enabling/configuring crowdin sync
enabling/configuring uploading symbols to mozilla
The current GitHub actions design doesn't allow for a separate environment to override .github/workflows/testAndPublish.yml.
Description of user facing changes:
None
Description of developer facing changes:
Forks can now more easily maintain a custom build set up.
Documentation has been added on how to do this.
Forks should work clean out of the gate, with features disabled by default, for everything except tagged releases.
We also have more clear documentation on how to set up the NVDA repository for builds
Description of development approach:
Config is moved out of source control into github variables. sensible defaults are provided for forks