GitHub Actions - otwcode/otwarchive GitHub Wiki

We use GitHub Actions to automatically label and run tests on pull requests.

Table of Contents

Automated Tests

This workflow runs our test suite.

If you need to run all of the RSpec and Cucumber tests, it's a good idea to use this workflow instead of trying to run them on your machine. You can push your changes and then run the workflow manually.

Refer to Automated Testing for running tests locally, or to our Docker page's "Running tests" section if using Docker.

Reviewdog

This workflow runs two linters to check for code style errors: RuboCop for .rb files and ERB Lint for template (.erb) files. Reviewdog filters the output of the linters so that only lines that were changed in the pull request are flagged for code style violations.

For more information, refer to Reviewdog and RuboCop.

Refer to Previewing Reviewdog comments for running the Reviewdog checks locally.

Brakeman Scan

This workflow runs Brakeman, a static analysis security vulnerability tool for Ruby on Rails applications. It attempts to flag new security vulnerabilities in pull requests.

For more information and running Brakeman locally, refer to Brakeman.

Pull Request Labeler

This workflow applies the "Awaiting Review" label to new pull requests. Furthermore, when a pull request with the "Reviewed: Action Needed" label gets new commits, this workflow updates the label to "Coder Has Actioned Review".

This workflow also applies some topic specific pull request labels automatically, such as "Scope: Tests Only" and "Has Migrations".

Check Phrase exports

These workflows only apply to pull requests our Translation team makes by exporting updates to the locale files from Phrase.

Deploy AO3

This workflow can be manually executed by AD&T Senior Volunteers with merge permissions to deploy the current code to Staging. To run the workflow:

  • Go to the Deploy AO3 workflow page
  • Open the "Run workflow" dropdown
    • Make sure it's set to use the workflow from Branch: master and the environment to deploy to is staging
  • Press the green "Run workflow" button
For an overview of the current and past staging deploys, use the staging deployments page.
⚠️ **GitHub.com Fallback** ⚠️