- Create test runs
- Generate release notes
- Generate the exclusion list
Download and install Python3 (3.5.2): https://www.python.org/downloads/release/python-352/
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.
Other things that might be helpful to have installed
iTerm2 - alternative to the standard Terminal. Not needed, but has some nice features.
Open Terminal and navigate to your ‘Development’ directory.
Type:
git clone [email protected]:brave/qa-resources.git
Press Enter/Return. You have now cloned the qa-resources repo onto your machine.
Next, you’ll need to install the pygithub package. This gives you the shared code needed to use github’s public api.
- Open a Terminal and type:
pip3 install PyGithub
Then select Enter/Return. - FYI - You can get information on this pygithub package here: http://pygithub.readthedocs.io/en/latest/introduction.html
and the main library of packages can be found here: https://pypi.python.org/pypi
- Open a Terminal and type:
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 typetouch github.secret
and select Enter/Return.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.
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.
Open a Terminal session.
Change directory to where you have qa-resources.
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)
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
- 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.