|
1 | 1 | # ARIA AT GitHub Actions Helper |
2 | 2 |
|
3 | 3 | This repo holds: |
| 4 | + |
4 | 5 | - workflow definitions for GitHub Actions |
5 | | -- pipeline defintions for Azure Pipelines |
6 | | -- scripts to run these jobs many times to test for inconsistent results |
| 6 | +- pipeline defintions for Azure Pipelines (not currently maintained, was experimental) |
| 7 | +- scripts to run these jobs many times to test for inconsistent results ([stressor](https://github.com/bocoup/aria-at-gh-actions-helper/blob/main/stressor/README.md)) |
7 | 8 |
|
8 | 9 | This repo's GitHub Actions queue is also where automated test runs from the [ARIA AT app](https://github.com/w3c/aria-at-app) are run. |
| 10 | + |
| 11 | +## General Workflow Properties |
| 12 | + |
| 13 | +All of the workflows setup the environments to be able to run [aria-at-automation-harness](https://github.com/w3c/aria-at-automation-harness/) against a set of tests from [aria-at](https://github.com/w3c/aria-at). |
| 14 | +The general structure of each workflow is very similar, setup the environment with needed software, launch the tests, report status via HTTP. |
| 15 | + |
| 16 | +They all support a generic set of parameters: |
| 17 | + |
| 18 | +- `work_dir`: The --plan-workingdir passed to the aria-at-automation harness. Based from the aria-at repo build folder. Uses a default of tests/alert if not provided. |
| 19 | +- `callback_url`: The harness will send POST requests to this url using callback_header header with test results. This is how the action communicates progress to the app. |
| 20 | +- `callback_header`: The harness will send POST requests to callback_url using this header with status updates. |
| 21 | +- `browser`: The workflows are split up for various ATs, but each is capable of running several browsers. |
| 22 | + |
| 23 | +Each workflow also has other parameters that can be configured for specific versions of the AT, etc. |
| 24 | + |
| 25 | +## Staging environment |
| 26 | + |
| 27 | +This repo is also automatically merged into a [-dev fork](https://github.com/bocoup/aria-at-gh-actions-helper-dev). |
| 28 | +The dev repo is used for staging and local development so that the main repo's action queue can be separate. |
| 29 | + |
| 30 | +## AT Specific Information |
| 31 | + |
| 32 | +### NVDA |
| 33 | + |
| 34 | +NVDA uses [Prime-Access-Consulting/nvda-at-automation](https://github.com/Prime-Access-Consulting/nvda-at-automation) as its at-driver server, and the NVDA plugin in the same repository is installed in the NVDA. |
| 35 | +NVDA uses portable installs that are stored in [bocoup/aria-at-automation-nvda-builds](https://github.com/bocoup/aria-at-automation-nvda-builds). Documentation to build these portable installs is on the README. |
| 36 | +NVDA then uses the windows version of the `run-tester.ps1` |
| 37 | + |
| 38 | +### JAWS |
| 39 | + |
| 40 | +JAWS has at-driver support built in and downloads and uses the builds from JAWS directly. |
| 41 | +This install process happens in JAWS/InstallJawsUnattended.ps1. |
| 42 | +The license file for registration is encoded with gpg using a passphrase. To create the license file: |
| 43 | + |
| 44 | +```sh |
| 45 | +gpg --quiet --batch --yes --symmetric --passphrase="(the secret)" --output JAWS/secret_JAWS.lic.gpg /path/to/unencrypted/JAWS.lic |
| 46 | +``` |
| 47 | + |
| 48 | +### VoiceOver for MacOS |
| 49 | + |
| 50 | +Due to troubles with the hosted mac os solutions on github, we are currently using the self-hosted-macos-15 workflow and running virtual machines on MacStadium. |
| 51 | + |
| 52 | +## Documentation References |
| 53 | + |
| 54 | +- [aria-at-app automation documentation](https://github.com/w3c/aria-at-app/blob/development/docs/automation.md) |
| 55 | +- [aria-at-automation-harness](https://github.com/w3c/aria-at-automation-harness/blob/main/README.md) |
0 commit comments