/qa-resources

Primary LanguageHTMLMozilla Public License 2.0MPL-2.0

Running Changelog Generator allows you to

  • Create test runs
  • Generate release notes
  • Generate the exclusion list

Before you begin

  1. Download and install Python3 (3.5.2): https://www.python.org/downloads/release/python-352/

  2. If you haven’t already set up a ‘Development’ directory for github so you can clone repositories,

    • Create a Development directory
    • Open terminal, type mkdir Development

    • This document assumes this is where you create this directory. You will need to adjust accordingly if you create this directory elsewhere.
  3. Other things that might be helpful to have installed

  4. iTerm2 - alternative to the standard Terminal. Not needed, but has some nice features.

First time stuff - getting set up

  1. Open Terminal and navigate to your ‘Development’ directory.

  2. Type: git clone git@github.com:brave/qa-resources.git

  3. Press Enter/Return. You have now cloned the qa-resources repo onto your machine.

  4. Next, you’ll need to install the pygithub package. This gives you the shared code needed to use github’s public api.

  5. In the qa-resources folder, create a file called github.secret. To do this in your Terminal session change directory to qa-resources if you are not already inside the directory. Then type touch github.secret and select Enter/Return.

  6. Next, you have to create a github key.

    • Login to your github account and navigate to https://github.com/settings/profile

    • Open new tab and navigate to https://github.com/settings/tokens

    • Click on Generate new token button. Give the token a meaningful name and select the checkboxes below for your token.

    • Select ‘Generate token’ button. Your token is now generated, it looks similar to an SHA. Copy the token. Do not exit this page yet.

  7. Add this token to your github.secret file.

    • To do this, in your Terminal session change directory to qa-resources if you are not already inside the directory.

    • Then type vi github.secret and select Enter/Return.

    • Since you’ve already copied your token, type i and paste your token. Then hit the Esc key.

    • Now type :wq to save and exit the file.
    • If you want to verify that the token was saved correctly, you can type cat github.secret and your token will display.

Running the Changelog Generator

  1. Open a Terminal session.

  2. Change directory to where you have qa-resources.

  3. Determine what product you want to run the changelog-generator for (browser-laptop, Android, iOS) and if you want to create issues in github or just see the output in the terminal.

    • For browser-laptop:
    - In the terminal type <code>python3 braveautogen.py --test true</code> and select Enter/Return. This just displays the output in the terminal and does NOT create github issues. 
    - To create github issues, leave off the <code>--test true</code> flag and github issues will be created and assigned out.
    
    • For Android:

      • python3 braveautogen-androdid.py --test true (no github issues)
      • python3 braveautogen-androdid.py (github issues created)
    • For iOS:

      • python3 braveautogen-ios.py --test true (no github issues)
      • python3 braveautogen-ios.py (github issues created)

Format of terminal output

General format of the output in the terminal is as follows. Specific label names may vary slightly by repo. See individual .py files for details.

$ python3 braveautogen.py --test true
  Rate Limit: 5000
  Rate Remaining: 
<next release version>

Release Notes:
<lists issues with label ‘release-notes/include’>

Checklist:
<lists issues with label ‘QA/steps-specified’ and does not have label ‘QA/no-qa-needed’>

Exclusion List:
<lists issues with label ‘release-notes/exclude>

Individual Product checklists

 - Contains per release specialty items
 - Uses the associated product wikitemplate file also found in qa-resources to generate the test run

Misc Notes

  • To get updates to the changelog-generator you can open a terminal and navigate to the /Development/qa-resources folder and type: git pull
  • Be sure you never add your github.secret file to any git commits you do.
  • If you uninstall Python3 for any reason, any packages you install (like PyGithub) will also be uninstalled, so you will need to install them again.